[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