Use management queue for parallelized management operations
When IO queues are used for parallelized management operations, e.g. changing cleaning policy, a deadlock may occur due to global metadata lock interfering with taking request from IO queue, as they might be run on the same thread. As a workaround using a management queue specifically for such operations eliminates this problem. Signed-off-by: Rafal Stefanowski <rafal.stefanowski@huawei.com>
This commit is contained in:
@@ -672,7 +672,7 @@ static void ocf_mngt_rebuild_metadata(ocf_cache_t cache,
|
||||
result = ocf_parallelize_create(¶llelize, cache,
|
||||
OCF_MNGT_REBUILD_METADATA_SHARDS_CNT,
|
||||
sizeof(*context), ocf_mngt_rebuild_metadata_handle,
|
||||
ocf_mngt_rebuild_metadata_finish);
|
||||
ocf_mngt_rebuild_metadata_finish, false);
|
||||
if (result) {
|
||||
cmpl(priv, result);
|
||||
return;
|
||||
|
Reference in New Issue
Block a user