]> git.baikalelectronics.ru Git - kernel.git/commit
csky/dma: Fixup cache_op failed when cross memory ZONEs
authorGuo Ren <ren_guo@c-sky.com>
Tue, 30 Jul 2019 09:02:26 +0000 (17:02 +0800)
committerGuo Ren <ren_guo@c-sky.com>
Tue, 6 Aug 2019 07:12:59 +0000 (15:12 +0800)
commitd7537325b681e148100c832e4e92a825d1903095
treef47e24a32f8519e1eeb5e721051eadc92fbfba7f
parentb03e96a573747795793590740835c581b481019d
csky/dma: Fixup cache_op failed when cross memory ZONEs

If the paddr and size are cross between NORMAL_ZONE and HIGHMEM_ZONE
memory range, cache_op will panic in do_page_fault with bad_area.

Optimize the code to support the range which cross memory ZONEs.

Changes for V2:
 - Revert back to postcore_initcall

Signed-off-by: Guo Ren <ren_guo@c-sky.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Arnd Bergmann <arnd@arndb.de>
arch/csky/mm/dma-mapping.c