aboutsummaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorAlexander Motin <[email protected]>2020-07-14 15:21:57 -0400
committerGitHub <[email protected]>2020-07-14 12:21:57 -0700
commit1743c737f5ad6e2c6c429858b7c0f717ecb20954 (patch)
tree87da399170b38d8197ede250343e509c7f943b2e /etc
parent5f72109e5bd84124bd6dd9877fae3fa9ae7ee348 (diff)
Fix LOR between dp_config_rwlock and spa_props_lock
Our QE team during automated API testing hit deadlock in ZFS, caused by lock order reversal. From one side dsl_sync_task_sync() locks dp_config_rwlock as writer and calls spa_sync_props(), which waits for spa_props_lock. From another spa_prop_get() locks spa_props_lock and then calls dsl_pool_config_enter(), trying to lock dp_config_rwlock as reader. This patch makes spa_prop_get() lock dp_config_rwlock before spa_props_lock, making the order consistent. Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: Ryan Moeller <[email protected]> Signed-off-by: Alexander Motin <[email protected]> Closes #10553
Diffstat (limited to 'etc')
0 files changed, 0 insertions, 0 deletions