summaryrefslogtreecommitdiffstats
path: root/lib/libzpool
diff options
context:
space:
mode:
authorHÃ¥kan Johansson <[email protected]>2016-10-07 22:25:35 +0200
committerBrian Behlendorf <[email protected]>2016-10-07 13:25:35 -0700
commit4770aa0643a7fc62f81b2d60e4a46de4bfd1aa04 (patch)
tree4089347c77ebb43a623603b37f09aee1f9625d5b /lib/libzpool
parentccc92611b1bd0a78a72f553472a91ef1e83b06c5 (diff)
Fix vdev_open_child() race on updating vdev_parent->vdev_nonrot
Updating vd->vdev_parent->vdev_nonrot in vdev_open_child() is a race when vdev_open_child is called for many children from a task queue. vdev_open_child() is only called by vdev_open_children(), let the latter update the parent vdev_nonrot member. The update was already there, so done twice previously. Thus using the same logic at the end in vdev_open_children() to update vdev_nonrot, either we are vdev_uses_zvols() or not. Reviewed-by: Richard Elling <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Haakan T Johansson <[email protected]> Closes #5162
Diffstat (limited to 'lib/libzpool')
0 files changed, 0 insertions, 0 deletions