kernel-fxtec-pro1x/include
Vladimir Saveliev de14569f94 [PATCH] resierfs: avoid tail packing if an inode was ever mmapped
This patch fixes a confusion reiserfs has for a long time.

On release file operation reiserfs used to try to pack file data stored in
last incomplete page of some files into metadata blocks.  After packing the
page got cleared with clear_page_dirty.  It did not take into account that
the page may be mmaped into other process's address space.  Recent
replacement for clear_page_dirty cancel_dirty_page found the confusion with
sanity check that page has to be not mapped.

The patch fixes the confusion by making reiserfs avoid tail packing if an
inode was ever mmapped.  reiserfs_mmap and reiserfs_file_release are
serialized with mutex in reiserfs specific inode.  reiserfs_mmap locks the
mutex and sets a bit in reiserfs specific inode flags.
reiserfs_file_release checks the bit having the mutex locked.  If bit is
set - tail packing is avoided.  This eliminates a possibility that mmapped
page gets cancel_page_dirty-ed.

Signed-off-by: Vladimir Saveliev <vs@namesys.com>
Cc: Jeff Mahoney <jeffm@suse.com>
Cc: Chris Mason <mason@suse.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-01-23 07:52:06 -08:00
..
acpi ACPI: increase ACPI_MAX_REFERENCE_COUNT for larger systems 2007-01-02 00:18:52 -05:00
asm-alpha [PATCH] FD_ZERO build fix 2007-01-11 18:18:22 -08:00
asm-arm [ARM] Resolve fuse and direct-IO failures due to missing cache flushes 2007-01-08 19:49:58 +00:00
asm-arm26
asm-avr32
asm-cris
asm-frv
asm-generic [PATCH] change WARN_ON back to "BUG: at ..." 2006-12-30 10:55:54 -08:00
asm-h8300
asm-i386 [PATCH] x86: fix PDA variables to work during boot 2007-01-22 19:39:36 -08:00
asm-ia64 [PATCH] FD_ZERO build fix 2007-01-11 18:18:22 -08:00
asm-m32r
asm-m68k
asm-m68knommu
asm-mips [MIPS] SMTC build fix 2007-01-08 21:41:04 +00:00
asm-parisc [ARM] pass vma for flush_anon_page() 2007-01-08 19:49:54 +00:00
asm-powerpc [POWERPC] atomic_dec_if_positive sign extension fix 2007-01-22 21:27:36 +11:00
asm-ppc
asm-s390 [PATCH] FD_ZERO build fix 2007-01-11 18:18:22 -08:00
asm-sh
asm-sh64
asm-sparc [SPARC64]: Fix of_iounmap() region release. 2006-12-31 14:06:05 -08:00
asm-sparc64 [SPARC64]: Fix of_iounmap() region release. 2006-12-31 14:06:05 -08:00
asm-um
asm-v850
asm-x86_64 [PATCH] x86-64: Use different constraint for gcc < 4.1 in bitops.h 2007-01-11 01:52:44 +01:00
asm-xtensa [PATCH] FD_ZERO build fix 2007-01-11 18:18:22 -08:00
crypto
keys
linux [PATCH] resierfs: avoid tail packing if an inode was ever mmapped 2007-01-23 07:52:06 -08:00
math-emu
media V4L/DVB (5001): Add two required headers on kernel 2.6.20-rc1 2006-12-27 14:20:46 -02:00
mtd
net Merge branch 'upstream-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes 2007-01-07 22:44:56 -05:00
pcmcia
rdma
rxrpc
scsi
sound [ALSA] version 1.0.14rc1 2007-01-09 10:57:25 +01:00
video
Kbuild