kernel-packages team mailing list archive
-
kernel-packages team
-
Mailing list archive
-
Message #168960
[Bug 1560869] Re: Concurrent zfs create and rename operations can lock a zpool completely
Another note: this can also be triggered only with rename operations on
zvols:
$ sudo zfs create -V 4096k pool1/zfsrename 1
$ sudo zfs create -V 4096k pool1/zfsrename 3
and then in two shells in parallel:
$ while : ; do echo "RENAME" `date`; sudo zfs rename pool1/testrename3
pool1/testrename4; sudo zfs rename pool1/testrename4 pool1/testrename3;
done
$ while : ; do echo "RENAME" `date`; sudo zfs rename pool1/testrename1
pool1/testrename2; sudo zfs rename pool1/testrename2 pool1/testrename1;
done
takes a bit longer than with the create rename destroy script from
above, but triggers after 10-15 seconds in the same test VM:
user@test:~$ sudo cat /proc/6338/stack
[<ffffffffc02abc41>] spa_open_common+0x61/0x480 [zfs]
[<ffffffffc02ac083>] spa_open+0x13/0x20 [zfs]
[<ffffffffc02e2112>] pool_status_check.part.24+0x32/0xa0 [zfs]
[<ffffffffc02e2509>] zfsdev_ioctl+0x389/0x4b0 [zfs]
[<ffffffff8121e7df>] do_vfs_ioctl+0x29f/0x490
[<ffffffff8121ea49>] SyS_ioctl+0x79/0x90
[<ffffffff81821ff2>] entry_SYSCALL_64_fastpath+0x16/0x71
[<ffffffffffffffff>] 0xffffffffffffffff
user@test:~$ sudo cat /proc/6333/stack
[<ffffffffc01adc49>] cv_wait_common+0x109/0x140 [spl]
[<ffffffffc01adc95>] __cv_wait+0x15/0x20 [spl]
[<ffffffffc02ba225>] txg_wait_synced+0xe5/0x130 [zfs]
[<ffffffffc0295ca9>] dsl_sync_task+0x179/0x260 [zfs]
[<ffffffffc028b53b>] dsl_dir_rename+0x5b/0x80 [zfs]
[<ffffffffc02de13d>] zfs_ioc_rename+0x10d/0x120 [zfs]
[<ffffffffc02e25a3>] zfsdev_ioctl+0x423/0x4b0 [zfs]
[<ffffffff8121e7df>] do_vfs_ioctl+0x29f/0x490
[<ffffffff8121ea49>] SyS_ioctl+0x79/0x90
[<ffffffff81821ff2>] entry_SYSCALL_64_fastpath+0x16/0x71
[<ffffffffffffffff>] 0xffffffffffffffff
** Attachment added: "ps faxl output"
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1560869/+attachment/4608435/+files/psfaxl.log
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1560869
Title:
Concurrent zfs create and rename operations can lock a zpool
completely
Status in linux package in Ubuntu:
Incomplete
Status in zfs-linux package in Ubuntu:
New
Bug description:
When doing "zfs create -V" and "zfs rename" operations on the same
zpool in parallel, there is a high chance for a deadlock leading to a
complete hang of the zpool in question (i.e., all further zfs
operations hang indefinitely).
Attached you find a simple perl script that should trigger the bug
(the pool variable needs to be set to your pool name), if run in two
shells at the same time:
$ for i in `seq 1 100`; do sudo ./zfsrenamebug.pl "A$i"; done
$ for i in `seq 1 100`; do sudo ./zfsrenamebug.pl "B$i"; done
Reported upstream in https://github.com/zfsonlinux/zfs/issues/4404 and apparently fixed with the linked commits.
---
ApportVersion: 2.20-0ubuntu3
Architecture: amd64
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
CurrentDesktop: Unity
DistroRelease: Ubuntu 16.04
HibernationDevice: RESUME=UUID=41b79831-ff2c-4d62-8d09-0fd00a3fafad
InstallationDate: Installed on 2016-03-18 (4 days ago)
InstallationMedia: Ubuntu 16.04 LTS "Xenial Xerus" - Alpha amd64 (20160307)
IwConfig:
ens18 no wireless extensions.
lo no wireless extensions.
Lsusb: Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
NonfreeKernelModules: zfs zunicode zcommon znvpair zavl
Package: zfs-linux
ProcFB: 0 qxldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.4.0-15-generic root=UUID=ff5bf1a3-8ced-46a8-9e2e-e3e7d0e522c0 ro quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 4.4.0-15.31-generic 4.4.6
RelatedPackageVersions:
linux-restricted-modules-4.4.0-15-generic N/A
linux-backports-modules-4.4.0-15-generic N/A
linux-firmware 1.157
RfKill:
Tags: xenial
Uname: Linux 4.4.0-15-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
_MarkForUpload: True
dmi.bios.date: 04/01/2014
dmi.bios.vendor: SeaBIOS
dmi.bios.version: rel-1.8.2-0-g33fbe13 by qemu-project.org
dmi.chassis.type: 1
dmi.chassis.vendor: QEMU
dmi.chassis.version: pc-i440fx-2.5
dmi.modalias: dmi:bvnSeaBIOS:bvrrel-1.8.2-0-g33fbe13byqemu-project.org:bd04/01/2014:svnQEMU:pnStandardPC(i440FX+PIIX,1996):pvrpc-i440fx-2.5:cvnQEMU:ct1:cvrpc-i440fx-2.5:
dmi.product.name: Standard PC (i440FX + PIIX, 1996)
dmi.product.version: pc-i440fx-2.5
dmi.sys.vendor: QEMU
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1560869/+subscriptions