All of lore.kernel.org
 help / color / mirror / Atom feed
* use exact allocation for dma coherent memory
@ 2019-06-14 13:47 ` Christoph Hellwig
  0 siblings, 0 replies; 165+ messages in thread
From: Christoph Hellwig @ 2019-06-14 13:47 UTC (permalink / raw)
  To: Maarten Lankhorst, Maxime Ripard, Sean Paul, David Airlie,
	Daniel Vetter, Jani Nikula, Joonas Lahtinen, Rodrigo Vivi,
	Ian Abbott, H Hartley Sweeten
  Cc: Intel Linux Wireless, moderated list:ARM PORT, dri-devel,
	intel-gfx, linux-rdma, linux-media, netdev, linux-wireless,
	linux-s390, devel, linux-mm, iommu, linux-kernel

Hi all,

various architectures have used exact memory allocations for dma
allocations for a long time, but x86 and thus the common code based
on it kept using our normal power of two allocator, which tends to
waste a lot of memory for certain allocations.

Switching to a slightly cleaned up alloc_pages_exact is pretty easy,
but it turns out that because we didn't filter valid gfp_t flags
on the DMA allocator, a bunch of drivers were passing __GFP_COMP
to it, which is rather bogus in too many ways to explain.  Arm has
been filtering it for a while, but this series instead tries to fix
the drivers and warn when __GFP_COMP is passed, which makes it much
larger than just adding the functionality.

^ permalink raw reply	[flat|nested] 165+ messages in thread

end of thread, other threads:[~2019-07-08 18:52 UTC | newest]

Thread overview: 165+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-14 13:47 use exact allocation for dma coherent memory Christoph Hellwig
2019-06-14 13:47 ` Christoph Hellwig
2019-06-14 13:47 ` Christoph Hellwig
2019-06-14 13:47 ` Christoph Hellwig
2019-06-14 13:47 ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 01/16] media: videobuf-dma-contig: use dma_mmap_coherent Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 02/16] drm/ati_pcigart: stop using drm_pci_alloc Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 03/16] drm/i915: " Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 16:45   ` [Intel-gfx] " Ville Syrjälä
2019-06-14 16:45     ` Ville Syrjälä
2019-06-14 16:45     ` Ville Syrjälä
2019-06-14 16:45     ` Ville Syrjälä
2019-06-14 16:45     ` Ville Syrjälä
2019-06-14 13:47 ` [PATCH 04/16] drm: move drm_pci_{alloc,free} to drm_legacy Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` [PATCH 04/16] drm: move drm_pci_{alloc, free} " Christoph Hellwig
2019-06-14 13:47 ` [PATCH 05/16] drm: don't mark pages returned from drm_pci_alloc reserved Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 06/16] drm: don't pass __GFP_COMP to dma_alloc_coherent in drm_pci_alloc Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 07/16] IB/hfi1: stop passing bogus gfp flags arguments to dma_alloc_coherent Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 08/16] IB/qib: " Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 09/16] cnic: " Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 10/16] iwlwifi: " Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 11/16] s390/ism: " Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 12/16] staging/comedi: mark as broken Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 14:02   ` Greg KH
2019-06-14 14:02     ` Greg KH
2019-06-14 14:02     ` Greg KH
2019-06-14 14:02     ` Greg KH
2019-06-14 14:48     ` Christoph Hellwig
2019-06-14 14:48       ` Christoph Hellwig
2019-06-14 14:48       ` Christoph Hellwig
2019-06-14 14:48       ` Christoph Hellwig
2019-06-14 15:30       ` Greg KH
2019-06-14 15:30         ` Greg KH
2019-06-14 15:30         ` Greg KH
2019-06-14 15:30         ` Greg KH
2019-06-14 15:34         ` Christoph Hellwig
2019-06-14 15:34           ` Christoph Hellwig
2019-06-14 15:34           ` Christoph Hellwig
2019-06-14 15:34           ` Christoph Hellwig
2019-06-17 13:15           ` Ian Abbott
2019-06-17 13:15             ` Ian Abbott
2019-06-17 13:15             ` Ian Abbott
2019-06-17 13:15             ` Ian Abbott
2019-06-14 13:47 ` [PATCH 13/16] mm: rename alloc_pages_exact_nid to alloc_pages_exact_node Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 14/16] mm: use alloc_pages_exact_node to implement alloc_pages_exact Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 15/16] dma-mapping: clear __GFP_COMP in dma_alloc_attrs Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47 ` [PATCH 16/16] dma-mapping: use exact allocation in dma_alloc_contiguous Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 13:47   ` Christoph Hellwig
2019-06-14 14:15   ` David Laight
2019-06-14 14:15     ` David Laight
2019-06-14 14:15     ` David Laight
2019-06-14 14:15     ` David Laight
2019-06-14 14:50     ` 'Christoph Hellwig'
2019-06-14 14:50       ` 'Christoph Hellwig'
2019-06-14 14:50       ` 'Christoph Hellwig'
2019-06-14 14:50       ` 'Christoph Hellwig'
2019-06-14 15:01       ` David Laight
2019-06-14 15:01         ` David Laight
2019-06-14 15:01         ` David Laight
2019-06-14 15:01         ` David Laight
2019-06-14 15:05         ` 'Christoph Hellwig'
2019-06-14 15:05           ` 'Christoph Hellwig'
2019-06-14 15:05           ` 'Christoph Hellwig'
2019-06-14 15:05           ` 'Christoph Hellwig'
2019-06-14 15:05       ` Robin Murphy
2019-06-14 15:05         ` Robin Murphy
2019-06-14 15:05         ` Robin Murphy
2019-06-14 15:05         ` Robin Murphy
2019-06-14 15:08         ` 'Christoph Hellwig'
2019-06-14 15:08           ` 'Christoph Hellwig'
2019-06-14 15:08           ` 'Christoph Hellwig'
2019-06-14 15:08           ` 'Christoph Hellwig'
2019-06-14 15:16         ` David Laight
2019-06-14 15:16           ` David Laight
2019-06-14 15:16           ` David Laight
2019-06-14 15:16           ` David Laight
2019-06-17  8:21 ` use exact allocation for dma coherent memory Dan Carpenter
2019-06-17  8:21   ` Dan Carpenter
2019-06-17  8:21   ` Dan Carpenter
2019-06-17  8:21   ` Dan Carpenter
2019-06-17  8:33   ` Christoph Hellwig
2019-06-17  8:33     ` Christoph Hellwig
2019-06-17  8:33     ` Christoph Hellwig
2019-06-17  8:33     ` Christoph Hellwig
2019-06-19 16:29     ` Jason Gunthorpe
2019-06-19 16:29       ` Jason Gunthorpe
2019-06-19 16:29       ` Jason Gunthorpe
2019-06-19 16:29       ` Jason Gunthorpe
2019-06-19 16:29       ` Jason Gunthorpe
2019-06-20 10:51       ` Christoph Hellwig
2019-06-20 10:51         ` Christoph Hellwig
2019-06-20 10:51         ` Christoph Hellwig
2019-06-20 10:51         ` Christoph Hellwig
2019-06-20 10:51         ` Christoph Hellwig
2019-07-01  8:48 ` Christoph Hellwig
2019-07-01  8:48   ` Christoph Hellwig
2019-07-01  8:48   ` Christoph Hellwig
2019-07-01  8:48   ` Christoph Hellwig
2019-07-02  9:48   ` Arend Van Spriel
2019-07-02  9:48     ` Arend Van Spriel
2019-07-02  9:48     ` Arend Van Spriel via iommu
2019-07-02  9:48     ` Arend Van Spriel
2019-07-08 18:43     ` Christoph Hellwig
2019-07-08 18:43       ` Christoph Hellwig
2019-07-08 18:43       ` Christoph Hellwig
2019-07-08 18:43       ` Christoph Hellwig
2019-07-08 18:43       ` Christoph Hellwig

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.