Revert "swiotlb: fix info leak with DMA_FROM_DEVICE"
This reverts commit d4d975e7921079f877f828099bb8260af335508f. Upstream had a follow-up fix, revert, and a semi-reverted-revert. Instead of going through this chain which is more painful to backport, I'm just going to revert this original commit and pick the final one. Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
fe5ac3da50
commit
e2cfa7b093
@ -130,11 +130,3 @@ accesses to DMA buffers in both privileged "supervisor" and unprivileged
|
||||
subsystem that the buffer is fully accessible at the elevated privilege
|
||||
level (and ideally inaccessible or at least read-only at the
|
||||
lesser-privileged levels).
|
||||
|
||||
DMA_ATTR_OVERWRITE
|
||||
------------------
|
||||
|
||||
This is a hint to the DMA-mapping subsystem that the device is expected to
|
||||
overwrite the entire mapped size, thus the caller does not require any of the
|
||||
previous buffer contents to be preserved. This allows bounce-buffering
|
||||
implementations to optimise DMA_FROM_DEVICE transfers.
|
||||
|
@ -61,14 +61,6 @@
|
||||
*/
|
||||
#define DMA_ATTR_PRIVILEGED (1UL << 9)
|
||||
|
||||
/*
|
||||
* This is a hint to the DMA-mapping subsystem that the device is expected
|
||||
* to overwrite the entire mapped size, thus the caller does not require any
|
||||
* of the previous buffer contents to be preserved. This allows
|
||||
* bounce-buffering implementations to optimise DMA_FROM_DEVICE transfers.
|
||||
*/
|
||||
#define DMA_ATTR_OVERWRITE (1UL << 10)
|
||||
|
||||
/*
|
||||
* A dma_addr_t can hold any valid DMA or bus address for the platform. It can
|
||||
* be given to a device to use as a DMA source or target. It is specific to a
|
||||
|
@ -598,8 +598,7 @@ phys_addr_t swiotlb_tbl_map_single(struct device *dev, phys_addr_t orig_addr,
|
||||
|
||||
tlb_addr = slot_addr(io_tlb_start, index) + offset;
|
||||
if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC) &&
|
||||
(!(attrs & DMA_ATTR_OVERWRITE) || dir == DMA_TO_DEVICE ||
|
||||
dir == DMA_BIDIRECTIONAL))
|
||||
(dir == DMA_TO_DEVICE || dir == DMA_BIDIRECTIONAL))
|
||||
swiotlb_bounce(orig_addr, tlb_addr, mapping_size, DMA_TO_DEVICE);
|
||||
return tlb_addr;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user