]> git.proxmox.com Git - mirror_zfs.git/commit
Fix lock order inversion with zvol_open()
authorBoris Protopopov <boris.protopopov@actifio.com>
Wed, 23 Sep 2015 16:34:51 +0000 (12:34 -0400)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 10 Mar 2016 17:53:36 +0000 (09:53 -0800)
commit1ee159f423b5eb3c4646b0ba2dd0fb359503ba90
tree4535141c208168c27716484bf273f70bcb41e294
parenta0bd735adb1b1eb81fef10b4db102ee051c4d4ff
Fix lock order inversion with zvol_open()

zfsonlinux issue #3681 - lock order inversion between zvol_open() and
dsl_pool_sync()...zvol_rename_minors()

Remove trylock of spa_namespace_lock as it is no longer needed when
zvol minor operations are performed in a separate context with no
prior locking state; the spa_namespace_lock is no longer held
when bdev->bd_mutex or zfs_state_lock might be taken in the code
paths originating from the zvol minor operation callbacks.

Signed-off-by: Boris Protopopov <boris.protopopov@actifio.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #3681
module/zfs/zvol.c