]> git.baikalelectronics.ru Git - kernel.git/commit
btrfs: waiting on qgroup rescan should not always be interruptible
authorJeff Mahoney <jeffm@suse.com>
Tue, 9 Aug 2016 02:08:06 +0000 (22:08 -0400)
committerChris Mason <clm@fb.com>
Thu, 25 Aug 2016 10:58:20 +0000 (03:58 -0700)
commitcb8ab35b5975ab7a62a46ef066c71bddc3b777c4
treee00a2fd29247e7aa09267eb7150e9774c0d95fa8
parentb7f4610c57c79129205206185ae891af9c90582d
btrfs: waiting on qgroup rescan should not always be interruptible

We wait on qgroup rescan completion in three places: file system
shutdown, the quota disable ioctl, and the rescan wait ioctl.  If the
user sends a signal while we're waiting, we continue happily along.  This
is expected behavior for the rescan wait ioctl.  It's racy in the shutdown
path but mostly works due to other unrelated synchronization points.
In the quota disable path, it Oopses the kernel pretty much immediately.

Cc: <stable@vger.kernel.org> # v4.4+
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Chris Mason <clm@fb.com>
fs/btrfs/disk-io.c
fs/btrfs/ioctl.c
fs/btrfs/qgroup.c
fs/btrfs/qgroup.h