• David Howells's avatar
    CacheFiles: Handle truncate unlocking the page we're reading · 5e929b33
    David Howells authored
    Handle truncate unlocking the page we're attempting to read from the backing
    device before the read has completed.
    
    This was causing reports like the following to occur:
    
    	Pid: 4765, comm: kslowd Not tainted 2.6.30.1 #1
    	Call Trace:
    	 [<ffffffffa0331d7a>] ? cachefiles_read_waiter+0xd9/0x147 [cachefiles]
    	 [<ffffffff804b74bd>] ? __wait_on_bit+0x60/0x6f
    	 [<ffffffff8022bbbb>] ? __wake_up_common+0x3f/0x71
    	 [<ffffffff8022cc32>] ? __wake_up+0x30/0x44
    	 [<ffffffff8024a41f>] ? __wake_up_bit+0x28/0x2d
    	 [<ffffffffa003a793>] ? ext3_truncate+0x4d7/0x8ed [ext3]
    	 [<ffffffff80281f90>] ? pagevec_lookup+0x17/0x1f
    	 [<ffffffff8028c2ff>] ? unmap_mapping_range+0x59/0x1ff
    	 [<ffffffff8022cc32>] ? __wake_up+0x30/0x44
    	 [<ffffffff8028e286>] ? vmtruncate+0xc2/0xe2
    	 [<ffffffff802b82cf>] ? inode_setattr+0x22/0x10a
    	 [<ffffffffa003baa5>] ? ext3_setattr+0x17b/0x1e6 [ext3]
    	 [<ffffffff802b853d>] ? notify_change+0x186/0x2c9
    	 [<ffffffffa032d9de>] ? cachefiles_attr_changed+0x133/0x1cd [cachefiles]
    	 [<ffffffffa032df7f>] ? cachefiles_lookup_object+0xcf/0x12a [cachefiles]
    	 [<ffffffffa0318165>] ? fscache_lookup_object+0x110/0x122 [fscache]
    	 [<ffffffffa03188c3>] ? fscache_object_slow_work_execute+0x590/0x6bc
    	[fscache]
    	 [<ffffffff80278f82>] ? slow_work_thread+0x285/0x43a
    	 [<ffffffff8024a446>] ? autoremove_wake_function+0x0/0x2e
    	 [<ffffffff80278cfd>] ? slow_work_thread+0x0/0x43a
    	 [<ffffffff8024a317>] ? kthread+0x54/0x81
    	 [<ffffffff8020c93a>] ? child_rip+0xa/0x20
    	 [<ffffffff8024a2c3>] ? kthread+0x0/0x81
    	 [<ffffffff8020c930>] ? child_rip+0x0/0x20
    	CacheFiles: I/O Error: Readpage failed on backing file 200000000000810
    	FS-Cache: Cache cachefiles stopped due to I/O error
    Reported-by: default avatarChristian Kujau <lists@nerdbynature.de>
    Reported-by: default avatarTakashi Iwai <tiwai@suse.de>
    Reported-by: default avatarDuc Le Minh <duclm.vn@gmail.com>
    Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
    5e929b33
rdwr.c 24.4 KB