Skip to content

Commit

Permalink
crypto: qat - Remove deprecated create_workqueue
Browse files Browse the repository at this point in the history
alloc_workqueue replaces deprecated create_workqueue().

The workqueue device_reset_wq has workitem &reset_data->reset_work per
adf_reset_dev_data. The workqueue  pf2vf_resp_wq is a workqueue for
PF2VF responses has workitem &pf2vf_resp->pf2vf_resp_work per pf2vf_resp.
The workqueue adf_vf_stop_wq is used to call adf_dev_stop()
asynchronously.

Dedicated workqueues have been used in all cases since the workitems
on the workqueues are involved in operation of crypto which can be used in
the IO path which is depended upon during memory reclaim. Hence,
WQ_MEM_RECLAIM has been set to gurantee forward progress under memory
pressure.
Since there are only a fixed number of work items, explicit concurrency
limit is unnecessary.

Signed-off-by: Bhaktipriya Shridhar <bhaktipriya96@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
  • Loading branch information
Bhaktipriya Shridhar authored and Herbert Xu committed Jun 13, 2016
1 parent 7405c8d commit 773b197
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 3 deletions.
3 changes: 2 additions & 1 deletion drivers/crypto/qat/qat_common/adf_aer.c
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,8 @@ EXPORT_SYMBOL_GPL(adf_disable_aer);

int adf_init_aer(void)
{
device_reset_wq = create_workqueue("qat_device_reset_wq");
device_reset_wq = alloc_workqueue("qat_device_reset_wq",
WQ_MEM_RECLAIM, 0);
return !device_reset_wq ? -EFAULT : 0;
}

Expand Down
2 changes: 1 addition & 1 deletion drivers/crypto/qat/qat_common/adf_sriov.c
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ EXPORT_SYMBOL_GPL(adf_sriov_configure);
int __init adf_init_pf_wq(void)
{
/* Workqueue for PF2VF responses */
pf2vf_resp_wq = create_workqueue("qat_pf2vf_resp_wq");
pf2vf_resp_wq = alloc_workqueue("qat_pf2vf_resp_wq", WQ_MEM_RECLAIM, 0);

return !pf2vf_resp_wq ? -ENOMEM : 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/crypto/qat/qat_common/adf_vf_isr.c
Original file line number Diff line number Diff line change
Expand Up @@ -321,7 +321,7 @@ EXPORT_SYMBOL_GPL(adf_vf_isr_resource_alloc);

int __init adf_init_vf_wq(void)
{
adf_vf_stop_wq = create_workqueue("adf_vf_stop_wq");
adf_vf_stop_wq = alloc_workqueue("adf_vf_stop_wq", WQ_MEM_RECLAIM, 0);

return !adf_vf_stop_wq ? -EFAULT : 0;
}
Expand Down

0 comments on commit 773b197

Please sign in to comment.