]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: qat - Fix missing destroy_workqueue in adf_init_aer()
authorWang Hai <wanghai38@huawei.com>
Tue, 29 Oct 2024 15:05:23 +0000 (23:05 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Sun, 10 Nov 2024 03:50:54 +0000 (11:50 +0800)
The adf_init_aer() won't destroy device_reset_wq when alloc_workqueue()
for device_sriov_wq failed. Add destroy_workqueue for device_reset_wq to
fix this issue.

Fixes: 4469f9b23468 ("crypto: qat - re-enable sriov after pf reset")
Signed-off-by: Wang Hai <wanghai38@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/intel/qat/qat_common/adf_aer.c

index ec7913ab00a2c769155adde25e2a23fde27a191d..4cb8bd83f570714ccf5732540f1f9594553f44cc 100644 (file)
@@ -281,8 +281,11 @@ int adf_init_aer(void)
                return -EFAULT;
 
        device_sriov_wq = alloc_workqueue("qat_device_sriov_wq", 0, 0);
-       if (!device_sriov_wq)
+       if (!device_sriov_wq) {
+               destroy_workqueue(device_reset_wq);
+               device_reset_wq = NULL;
                return -EFAULT;
+       }
 
        return 0;
 }