On Mon, Mar 11, 2013 at 11:17:40PM -0500, Eric Sandeen wrote:
> * btrfs scrub start
> * btrfs scrub status
I did a quick test here:
$ mkfs.btrfs -d raid10 -m raid10 /dev/sda[5678]
$ mount /dev/sda5 /mnt
$ <fill with files> &
$ btrfs scrub start /dev/sda5
(ok)
$ btrfs scrub status /dev/sda5
(ok)
$ btrfs scrub status /mnt
(ok)
$ btrfs scrub cancel /mnt
^C^C^C^C^C^C^C^C<hang>
(exitted after a few minutes)
Name: btrfs State: D (disk sleep) Pid: 24214
[<ffffffffa008f625>] btrfs_scrub_cancel+0xc5/0x130 [btrfs]
[<ffffffffa006ab40>] btrfs_ioctl+0x13b0/0x1d90 [btrfs]
[<ffffffff81172ee6>] do_vfs_ioctl+0x96/0x560
[<ffffffff81173407>] sys_ioctl+0x57/0x90
[<ffffffff819698d9>] system_call_fastpath+0x16/0x1b
[<ffffffffffffffff>] 0xffffffffffffffff
(gdb) l *(btrfs_scrub_cancel+0xc5)
0x8f625 is in btrfs_scrub_cancel (fs/btrfs/scrub.c:2983).
2978 }
2979
2980 atomic_inc(&fs_info->scrub_cancel_req);
2981 while (atomic_read(&fs_info->scrubs_running)) {
2982 mutex_unlock(&fs_info->scrub_lock);
2983 wait_event(fs_info->scrub_pause_wait,
^^^^
2984 atomic_read(&fs_info->scrubs_running) == 0);
2985 mutex_lock(&fs_info->scrub_lock);
2986 }
2987 atomic_dec(&fs_info->scrub_cancel_req);
I don't know yet if this happens without this changes, will check next.
david
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html