summaryrefslogtreecommitdiffstats
path: root/etc/zfs
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2014-01-13 14:27:33 -0800
committerBrian Behlendorf <[email protected]>2014-01-14 14:46:12 -0800
commit35d3e32274ff05d9b080ea0a77ade1f9c9d7bafc (patch)
treeb3c7209d05a4bf7f54911d7b564501ddfc465a42 /etc/zfs
parent0f62f3f9abc4bfa0bcafee9bfa3d55e91dcb371d (diff)
Use long holds in zvol_set_volsize()
Under Linux the zvol_set_volsize() function was originally written to use dmu_objset_hold()/dmu_objset_rele(). Subsequently, the dmu_objset_own()/dmu_objset_disown() interfaces were added but the ZVOL code wasn't updated to take advantage of them. This was never an issue but after the dsl_pool_config changes the code now takes the config lock twice. The cleanest solution is to shift to using dmu_objset_own() which takes a long hold on the dataset and does not hold the dsl pool lock. This patch also slightly restructures the existing code such that it more closely resembles the upstream Illumos code. Signed-off-by: Ned Bass <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #2039
Diffstat (limited to 'etc/zfs')
0 files changed, 0 insertions, 0 deletions