[Linux-cachefs] Hang while doing cp from NFS mount to local disk when fsc is enabled
Suresh Jayaraman
sjayaraman at suse.com
Wed Nov 7 13:04:06 UTC 2012
Hi David,
I'm observing a hang with the recent 3.4-ish kernel when trying to do
something like the below:
mount -t nfs4 server:/share /mnt/nfs -o fsc
cp /mnt/nfs/f_20M /tmp
echo 3 > /proc/sys/vm/drop_caches
cp /mnt/nfs/f_20M /share
The second cp hangs. Apparently, the cp process seems to be waiting to
get exclusive access to a page that is already been locked but not
released..
Here's a snip from SysRq + w output
[1898655.285852] SysRq : Show Blocked State
[1898655.285864] task PC stack pid father
[1898655.285909] cp D 0000000000000000 0 20090 20083
0x00000000
[1898655.285913] ffff8804252b7bd8 0000000000000086 ffff880424334df0
ffff8804252b6010
[1898655.285917] 0000000000011180 0000000000011180 ffff8804252b7fd8
ffff8804252b7fd8
[1898655.285920] 0000000000011180 ffff8804248aa280 000000011c498cd4
ffffffff81a0b020
[1898655.285924] Call Trace:
[1898655.285939] [<ffffffff81441bbc>] io_schedule+0x9c/0xf0
[1898655.285946] [<ffffffff810ef999>] sleep_on_page_killable+0x9/0x40
[1898655.285950] [<ffffffff810efa66>] __lock_page_killable+0x96/0xd0
[1898655.285954] [<ffffffff810f0c57>] do_generic_file_read+0x227/0x490
[1898655.285959] [<ffffffff810f151c>] generic_file_aio_read+0xfc/0x260
[1898655.285977] [<ffffffffa04a4cf1>] nfs_file_read+0xf1/0x140 [nfs]
[1898655.285996] [<ffffffff8114fea0>] do_sync_read+0xc0/0x100
[1898655.286000] [<ffffffff81150647>] vfs_read+0xc7/0x130
[1898655.286004] [<ffffffff811507b3>] sys_read+0x53/0xa0
[1898655.286009] [<ffffffff8144b692>] system_call_fastpath+0x16/0x1b
[1898655.286026] [<00007f243130b1a0>] 0x7f243130b19f
It's likely that the process that had acquired a lock on the page has
already excited.
I see a similar report in the cache-fs mailing list
https://www.redhat.com/archives/linux-cachefs/2012-August/msg00000.html
I haven't enabled fscache and cachefiles debugging, yet. Before doing
so, I thought I'll just check whether you see the problem and if it
sounds familiar to you.
Thanks
Suresh
More information about the Linux-cachefs
mailing list