Message ID | 53142639.3030600@cn.fujitsu.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Mar 03, 2014 at 02:50:33PM +0800, Wang Shilong wrote: > >Here's the log of failure: > >http://marc.merlins.org/tmp/btrfs_nofreeze2.txt > > Unfortunately, i could not reproduce this problem here. > > It should not be the problem that i addressed before, there is not > deadlock here. > try the attached patch and hopely it could solve your problem.(I > know this is > not polite:-) ) No worries, I appreciate your help, if you can't reproduce yourself I'm happy to help. > If the attached patch could not solve your problem, i will find a laptop and > try to reproduce myself. Unfortunately that didn't help Freezing of tasks failed after 20.007 seconds (1 tasks refusing to freeze btrfs D ffff8803b212e900 0 15484 1 0x00000084 ffff8803b2353958 0000000000000082 ffff8803b2353fd8 ffff8803b212e3d0 00000000000141c0 ffff8803b212e3d0 ffff88040311e000 ffff8800cd098600 0000000000000000 ffff8803aa3a6740 ffff88040311e220 ffff8803b2353968 Call Trace: [<ffffffff8160c311>] schedule+0x73/0x75 [<ffffffff8126eb66>] scrub_pages+0x27e/0x42b [<ffffffff810850c9>] ? finish_wait+0x65/0x65 [<ffffffff81271951>] scrub_stripe+0xada/0xca3 [<ffffffff81271bf0>] scrub_chunk.isra.9+0xd6/0x10d [<ffffffff81271e9a>] scrub_enumerate_chunks+0x273/0x49f [<ffffffff81085000>] ? prepare_to_wait_event+0xba/0xf2 [<ffffffff81272666>] btrfs_scrub_dev+0x254/0x3cb [<ffffffff8116dde3>] ? __mnt_want_write+0x62/0x78 [<ffffffff81255e82>] btrfs_ioctl+0x1114/0x24b1 [<ffffffff81015efa>] ? paravirt_sched_clock+0x9/0xd [<ffffffff810164a0>] ? sched_clock+0x9/0xb [<ffffffff811408bd>] ? ____cache_alloc+0x23e/0x29b [<ffffffff81140a09>] ? kmem_cache_alloc_node+0xef/0x179 [<ffffffff8160e9eb>] ? _raw_spin_unlock+0x17/0x2a [<ffffffff81163b16>] do_vfs_ioctl+0x3d2/0x41d [<ffffffff8116bd38>] ? __fget+0x6f/0x79 [<ffffffff81163bb8>] SyS_ioctl+0x57/0x82 [<ffffffff816154ad>] system_call_fastpath+0x1a/0x1f Restarting tasks ... done. Cheers, Marc
From 7c0564d5604581dc0ed868de4dbb1ed8d8fbd55f Mon Sep 17 00:00:00 2001 From: Wang Shilong <wangsl.fnst@cn.fujitsu.com> Date: Mon, 3 Mar 2014 14:34:07 +0800 Subject: [PATCH] Btrfs: add schedule points for scrub Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com> --- fs/btrfs/scrub.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c index 682ec3fc..0a00db0 100644 --- a/fs/btrfs/scrub.c +++ b/fs/btrfs/scrub.c @@ -2064,6 +2064,7 @@ leave_nomem: scrub_block_put(sblock); return ret; } + cond_resched(); } if (force) @@ -2229,6 +2230,7 @@ behind_scrub_pages: logical += l; physical += l; physical_for_dev_replace += l; + cond_resched(); } return 0; } -- 1.9.0