iommu.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* refactor dma_cache_sync V2
@ 2017-10-03 10:43 Christoph Hellwig
  2017-10-03 10:43 ` [PATCH 07/11] powerpc: make dma_cache_sync a no-op Christoph Hellwig
                   ` (4 more replies)
  0 siblings, 5 replies; 23+ messages in thread
From: Christoph Hellwig @ 2017-10-03 10:43 UTC (permalink / raw)
  To: iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA
  Cc: Chris Zankel, Michal Simek, linux-ia64-u79uwXL29TY76Z2rM5mHXA,
	linux-mips-6z/3iImG2C8G8FEW9MqTrA,
	linux-sh-u79uwXL29TY76Z2rM5mHXA,
	linuxppc-dev-uLR06cmDAlY/bJ5BZ2RsiQ,
	linux-xtensa-PjhNF2WwrV/0Sa2dR60CXw, x86-DgEjT+Ai2ygdnm+yROfE0A,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, David Howells, Max Filippov,
	Guan Xuetao

The dma_cache_sync routines is used to flush caches for memory returned
by dma_alloc_attrs with the DMA_ATTR_NON_CONSISTENT flag (or previously
from dma_alloc_noncoherent), but the requirements for it seems to be
frequently misunderstood.  dma_cache_sync is documented to be a no-op for
allocations that do not have the DMA_ATTR_NON_CONSISTENT flag set, and
yet a lot of architectures implement it in some way despite not
implementing DMA_ATTR_NON_CONSISTENT.

This series removes a few abuses of dma_cache_sync for non-DMA API
purposes, then changes all remaining architectures that do not implement
DMA_ATTR_NON_CONSISTENT to implement dma_cache_sync as a no-op, and
then adds the struct dma_map_ops indirection we use for all other
DMA mapping operations to dma_cache_sync as well, thus removing all but
two implementations of the function.

Changes since V1:
 - drop the mips fd_cacheflush, merged via maintainer
 - spelling fix in last commit descriptions (thanks Geert)

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

end of thread, other threads:[~2017-10-19 15:02 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-03 10:43 refactor dma_cache_sync V2 Christoph Hellwig
2017-10-03 10:43 ` [PATCH 07/11] powerpc: make dma_cache_sync a no-op Christoph Hellwig
2017-10-03 11:24   ` Christophe LEROY
2017-10-03 11:43     ` Robin Murphy
2017-10-03 11:43     ` Christoph Hellwig
2017-10-04  8:29       ` Christophe LEROY
     [not found] ` <20171003104311.10058-1-hch-jcswGhMUV9g@public.gmane.org>
2017-10-03 10:43   ` [PATCH 01/11] floppy: consolidate the dummy fd_cacheflush definition Christoph Hellwig
2017-10-03 10:43   ` [PATCH 02/11] x86: make dma_cache_sync a no-op Christoph Hellwig
2017-10-03 16:02     ` David Laight
     [not found]       ` <063D6719AE5E284EB5DD2968C1650D6DD0088B73-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
2017-10-03 20:27         ` Thomas Gleixner
2017-10-03 10:43   ` [PATCH 03/11] frv: " Christoph Hellwig
2017-10-03 10:43   ` [PATCH 04/11] ia64: " Christoph Hellwig
     [not found]     ` <20171003104311.10058-5-hch-jcswGhMUV9g@public.gmane.org>
2017-10-04  8:59       ` David Laight
     [not found]         ` <063D6719AE5E284EB5DD2968C1650D6DD0089626-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
2017-10-04  9:06           ` 'Christoph Hellwig'
2017-10-03 10:43   ` [PATCH 05/11] microblaze: " Christoph Hellwig
2017-10-03 10:43   ` [PATCH 06/11] mn10300: " Christoph Hellwig
2017-10-03 10:43   ` [PATCH 08/11] unicore32: " Christoph Hellwig
2017-10-03 10:43   ` [PATCH 09/11] xtensa: " Christoph Hellwig
2017-10-03 10:43 ` [PATCH 10/11] sh: " Christoph Hellwig
2017-10-03 10:43 ` [PATCH 11/11] dma-mapping: turn dma_cache_sync into a dma_map_ops method Christoph Hellwig
2017-10-03 11:49 ` refactor dma_cache_sync V2 Robin Murphy
2017-10-16 12:44   ` Christoph Hellwig
     [not found]     ` <20171016124442.GB2177-jcswGhMUV9g@public.gmane.org>
2017-10-19 15:02       ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).