]> git.proxmox.com Git - mirror_zfs.git/commit
Fix problems in zvol_set_volmode_impl
authorMatthew Macy <mmacy@freebsd.org>
Tue, 17 Nov 2020 17:50:52 +0000 (09:50 -0800)
committerGitHub <noreply@github.com>
Tue, 17 Nov 2020 17:50:52 +0000 (09:50 -0800)
commit0ca45cb31092358044d11f6085b6338fb5fca602
tree684a3263fd0caf6dda1450b46b21193b7f517765
parent82611cdfe586a1da5e48cfdc6864b94470281e6e
Fix problems in zvol_set_volmode_impl

- Don't leave fstrans set when passed a snapshot
- Don't remove minor if volmode already matches new value
- (FreeBSD) Wait for GEOM ops to complete before trying
  remove (at create time GEOM will be "tasting" in parallel)
- (FreeBSD) Don't leak zvol_state_lock on open if zv == NULL
- (FreeBSD) Don't try to unlock zv->zv_state lock if zv == NULL

Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Matt Macy <mmacy@FreeBSD.org>
Closes #11199
include/sys/zvol_impl.h
module/os/freebsd/zfs/zvol_os.c
module/os/linux/zfs/zvol_os.c
module/zfs/zvol.c