summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorDamian Muszynski <damian.muszynski@intel.com>2023-11-28 18:39:30 +0100
committerHerbert Xu <herbert@gondor.apana.org.au>2023-12-08 11:59:44 +0800
commit487caa8d5ef9a9a27b092c5790d529a7a0c24f8b (patch)
treead19843e2b05ce5b9bed91734c799dacb3351dd8 /drivers
parent6627f03c21cb7001ae4dbbfb7a8514516d02331c (diff)
crypto: qat - fix mutex ordering in adf_rl
If the function validate_user_input() returns an error, the error path attempts to unlock an unacquired mutex. Acquire the mutex before calling validate_user_input(). This is not strictly necessary but simplifies the code. Fixes: d9fb8408376e ("crypto: qat - add rate limiting feature to qat_4xxx") Signed-off-by: Damian Muszynski <damian.muszynski@intel.com> Reviewed-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/crypto/intel/qat/qat_common/adf_rl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/crypto/intel/qat/qat_common/adf_rl.c b/drivers/crypto/intel/qat/qat_common/adf_rl.c
index f2de3cd7d05d..de1b214dba1f 100644
--- a/drivers/crypto/intel/qat/qat_common/adf_rl.c
+++ b/drivers/crypto/intel/qat/qat_common/adf_rl.c
@@ -815,13 +815,13 @@ static int add_update_sla(struct adf_accel_dev *accel_dev,
return -EFAULT;
}
+ mutex_lock(&rl_data->rl_lock);
+
/* Input validation */
ret = validate_user_input(accel_dev, sla_in, is_update);
if (ret)
goto ret_err;
- mutex_lock(&rl_data->rl_lock);
-
if (is_update) {
ret = validate_sla_id(accel_dev, sla_in->sla_id);
if (ret)