[PATCH v2 2/2] treewide: Add the __GFP_PACKED flag to several non-DMA kmalloc() allocations

Christoph Hellwig hch at lst.de
Sun Oct 30 01:44:51 PDT 2022


On Wed, Oct 26, 2022 at 10:46:46AM -0700, Linus Torvalds wrote:
> Seriously, non-cache coherent DMA in 2022 is a sign of an incompetent
> platform architect or hardware designer, and at some point I think
> that should just be called out for the incredible garbage it is.

It is garbage, but still incredibly common.  And there is a simple
reason for that:  it's cheap.

> I think we should just stop bending over backwards over this, and say
> "if your DMA isn't coherent, it's on your driver to mark its
> allocations".

Many of the allocations do not come from the driver.  They can be
page cache, anonymous user memory, 17 layers of kernel "subsystems"
above the actual driver.  And while the first two usuall won't have
size / alignment problems, the latter is where the real mess is.



More information about the linux-arm-kernel mailing list