linux/arch/score/include/asm
Ilya Loginov 2d4dc890b5 block: add helpers to run flush_dcache_page() against a bio and a request's pages
Mtdblock driver doesn't call flush_dcache_page for pages in request.  So,
this causes problems on architectures where the icache doesn't fill from
the dcache or with dcache aliases.  The patch fixes this.

The ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE symbol was introduced to avoid
pointless empty cache-thrashing loops on architectures for which
flush_dcache_page() is a no-op.  Every architecture was provided with this
flush pages on architectires where ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE is
equal 1 or do nothing otherwise.

See "fix mtd_blkdevs problem with caches on some architectures" discussion
on LKML for more information.

Signed-off-by: Ilya Loginov <isloginov@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Peter Horton <phorton@bitbox.co.uk>
Cc: "Ed L. Cashin" <ecashin@coraid.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-11-26 09:16:19 +01:00
..
asmmacro.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
atomic.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
auxvec.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
bitops.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
bitsperlong.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
bug.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
bugs.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
byteorder.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
cache.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
cacheflush.h block: add helpers to run flush_dcache_page() against a bio and a request's pages 2009-11-26 09:16:19 +01:00
checksum.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
cputime.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
current.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
delay.h score: update files according to review comments 2009-06-19 11:40:13 +02:00
device.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
div64.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
dma-mapping.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
dma.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
elf.h score: remove unused code, add include files in .c 2009-08-30 12:26:32 +08:00
emergency-restart.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
errno.h score: update files according to review comments 2009-06-19 11:40:13 +02:00
fcntl.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
fixmap.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
ftrace.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
futex.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
hardirq.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
hw_irq.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
io.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
ioctl.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
ioctls.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
ipcbuf.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
irq_regs.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
irq.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
irqflags.h score: remove unused code, add include files in .c 2009-08-30 12:26:32 +08:00
Kbuild score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
kdebug.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
kmap_types.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
linkage.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
local.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
mman.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
mmu_context.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
mmu.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
module.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
msgbuf.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
mutex.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
page.h score: Make PAGE_SIZE available to assembly. 2009-09-23 13:35:51 +08:00
param.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
pci.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
percpu.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
pgalloc.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
pgtable-bits.h score: update files according to review comments 2009-06-19 11:40:13 +02:00
pgtable.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
poll.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
posix_types.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
processor.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
ptrace.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
resource.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
scatterlist.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
scoreregs.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
sections.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
segment.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
sembuf.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
setup.h score: add MEMORY_START and MEMORY_SIZE define, to make the code clear 2009-08-30 12:31:58 +08:00
shmbuf.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
shmparam.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
sigcontext.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
siginfo.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
signal.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
socket.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
sockios.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
stat.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
statfs.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
string.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
swab.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
syscalls.h score: add prototypes for wrapped syscalls 2009-06-19 14:10:46 +02:00
system.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
termbits.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
termios.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
thread_info.h score: Make THREAD_SIZE available to assembly files. 2009-09-23 13:37:42 +08:00
timex.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
tlb.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
tlbflush.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
topology.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
types.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
uaccess.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00
ucontext.h score: add missing #includes 2009-06-27 15:09:46 +02:00
unaligned.h score: Add support for Sunplus S+core architecture 2009-06-19 11:38:47 +02:00
unistd.h score: add old syscall support 2009-08-30 12:33:30 +08:00
user.h score: update inconsistent declare after .c was changed 2009-08-30 12:30:16 +08:00