crypto: qat - adf_dev_stop should not be called in atomic context
authorTadeusz Struk <tadeusz.struk@intel.com>
Wed, 6 Apr 2016 18:01:54 +0000 (11:01 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 15 Apr 2016 14:35:45 +0000 (22:35 +0800)
commitd6064165ba4449ea085a389724d728258a3180ec
treeae38a87001011166778e6c1fa6a437560bab8a4e
parent7587c407540006e4e8fd5ed33f66ffe6158e830a
crypto: qat - adf_dev_stop should not be called in atomic context

VFs call adf_dev_stop() from a PF to VF interrupt bottom half.
This causes an oops "scheduling while atomic", because it tries
to acquire a mutex to un-register crypto algorithms.
This patch fixes the issue by calling adf_dev_stop() asynchronously.

Changes in v2:
 - change kthread to a work queue.

Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/qat/qat_common/adf_common_drv.h
drivers/crypto/qat/qat_common/adf_ctl_drv.c
drivers/crypto/qat/qat_common/adf_vf_isr.c