summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGilad Ben-Yossef <gilad@benyossef.com>2017-10-18 03:00:36 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2017-11-03 10:11:17 -0400
commit4e5b0ad5827163bd8e57ea595be2681cad12e5c2 (patch)
tree4c1679e33ba5755b5cb798870b45eee95303acd2
parent068c2e703577dca8cd634421f14b90959589ec85 (diff)
crypto: remove redundant backlog checks on EBUSY
Now that -EBUSY return code only indicates backlog queueing we can safely remove the now redundant check for the CRYPTO_TFM_REQ_MAY_BACKLOG flag when -EBUSY is returned. Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--crypto/ahash.c12
-rw-r--r--crypto/cts.c6
-rw-r--r--crypto/lrw.c8
-rw-r--r--crypto/rsa-pkcs1pad.c16
-rw-r--r--crypto/xts.c8
5 files changed, 13 insertions, 37 deletions
diff --git a/crypto/ahash.c b/crypto/ahash.c
index 5e8666e6ccae..3a35d67de7d9 100644
--- a/crypto/ahash.c
+++ b/crypto/ahash.c
@@ -334,9 +334,7 @@ static int ahash_op_unaligned(struct ahash_request *req,
334 return err; 334 return err;
335 335
336 err = op(req); 336 err = op(req);
337 if (err == -EINPROGRESS || 337 if (err == -EINPROGRESS || err == -EBUSY)
338 (err == -EBUSY && (ahash_request_flags(req) &
339 CRYPTO_TFM_REQ_MAY_BACKLOG)))
340 return err; 338 return err;
341 339
342 ahash_restore_req(req, err); 340 ahash_restore_req(req, err);
@@ -394,9 +392,7 @@ static int ahash_def_finup_finish1(struct ahash_request *req, int err)
394 req->base.complete = ahash_def_finup_done2; 392 req->base.complete = ahash_def_finup_done2;
395 393
396 err = crypto_ahash_reqtfm(req)->final(req); 394 err = crypto_ahash_reqtfm(req)->final(req);
397 if (err == -EINPROGRESS || 395 if (err == -EINPROGRESS || err == -EBUSY)
398 (err == -EBUSY && (ahash_request_flags(req) &
399 CRYPTO_TFM_REQ_MAY_BACKLOG)))
400 return err; 396 return err;
401 397
402out: 398out:
@@ -432,9 +428,7 @@ static int ahash_def_finup(struct ahash_request *req)
432 return err; 428 return err;
433 429
434 err = tfm->update(req); 430 err = tfm->update(req);
435 if (err == -EINPROGRESS || 431 if (err == -EINPROGRESS || err == -EBUSY)
436 (err == -EBUSY && (ahash_request_flags(req) &
437 CRYPTO_TFM_REQ_MAY_BACKLOG)))
438 return err; 432 return err;
439 433
440 return ahash_def_finup_finish1(req, err); 434 return ahash_def_finup_finish1(req, err);
diff --git a/crypto/cts.c b/crypto/cts.c
index 243f591dc409..4773c188e6d9 100644
--- a/crypto/cts.c
+++ b/crypto/cts.c
@@ -136,8 +136,7 @@ static void crypto_cts_encrypt_done(struct crypto_async_request *areq, int err)
136 goto out; 136 goto out;
137 137
138 err = cts_cbc_encrypt(req); 138 err = cts_cbc_encrypt(req);
139 if (err == -EINPROGRESS || 139 if (err == -EINPROGRESS || err == -EBUSY)
140 (err == -EBUSY && req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG))
141 return; 140 return;
142 141
143out: 142out:
@@ -229,8 +228,7 @@ static void crypto_cts_decrypt_done(struct crypto_async_request *areq, int err)
229 goto out; 228 goto out;
230 229
231 err = cts_cbc_decrypt(req); 230 err = cts_cbc_decrypt(req);
232 if (err == -EINPROGRESS || 231 if (err == -EINPROGRESS || err == -EBUSY)
233 (err == -EBUSY && req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG))
234 return; 232 return;
235 233
236out: 234out:
diff --git a/crypto/lrw.c b/crypto/lrw.c
index 92df312b8c6e..cbbd7c50ad19 100644
--- a/crypto/lrw.c
+++ b/crypto/lrw.c
@@ -328,9 +328,7 @@ static int do_encrypt(struct skcipher_request *req, int err)
328 crypto_skcipher_encrypt(subreq) ?: 328 crypto_skcipher_encrypt(subreq) ?:
329 post_crypt(req); 329 post_crypt(req);
330 330
331 if (err == -EINPROGRESS || 331 if (err == -EINPROGRESS || err == -EBUSY)
332 (err == -EBUSY &&
333 req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG))
334 return err; 332 return err;
335 } 333 }
336 334
@@ -380,9 +378,7 @@ static int do_decrypt(struct skcipher_request *req, int err)
380 crypto_skcipher_decrypt(subreq) ?: 378 crypto_skcipher_decrypt(subreq) ?:
381 post_crypt(req); 379 post_crypt(req);
382 380
383 if (err == -EINPROGRESS || 381 if (err == -EINPROGRESS || err == -EBUSY)
384 (err == -EBUSY &&
385 req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG))
386 return err; 382 return err;
387 } 383 }
388 384
diff --git a/crypto/rsa-pkcs1pad.c b/crypto/rsa-pkcs1pad.c
index 407c64bdcdd9..2908f93c3e55 100644
--- a/crypto/rsa-pkcs1pad.c
+++ b/crypto/rsa-pkcs1pad.c
@@ -279,9 +279,7 @@ static int pkcs1pad_encrypt(struct akcipher_request *req)
279 req->dst, ctx->key_size - 1, req->dst_len); 279 req->dst, ctx->key_size - 1, req->dst_len);
280 280
281 err = crypto_akcipher_encrypt(&req_ctx->child_req); 281 err = crypto_akcipher_encrypt(&req_ctx->child_req);
282 if (err != -EINPROGRESS && 282 if (err != -EINPROGRESS && err != -EBUSY)
283 (err != -EBUSY ||
284 !(req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG)))
285 return pkcs1pad_encrypt_sign_complete(req, err); 283 return pkcs1pad_encrypt_sign_complete(req, err);
286 284
287 return err; 285 return err;
@@ -383,9 +381,7 @@ static int pkcs1pad_decrypt(struct akcipher_request *req)
383 ctx->key_size); 381 ctx->key_size);
384 382
385 err = crypto_akcipher_decrypt(&req_ctx->child_req); 383 err = crypto_akcipher_decrypt(&req_ctx->child_req);
386 if (err != -EINPROGRESS && 384 if (err != -EINPROGRESS && err != -EBUSY)
387 (err != -EBUSY ||
388 !(req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG)))
389 return pkcs1pad_decrypt_complete(req, err); 385 return pkcs1pad_decrypt_complete(req, err);
390 386
391 return err; 387 return err;
@@ -440,9 +436,7 @@ static int pkcs1pad_sign(struct akcipher_request *req)
440 req->dst, ctx->key_size - 1, req->dst_len); 436 req->dst, ctx->key_size - 1, req->dst_len);
441 437
442 err = crypto_akcipher_sign(&req_ctx->child_req); 438 err = crypto_akcipher_sign(&req_ctx->child_req);
443 if (err != -EINPROGRESS && 439 if (err != -EINPROGRESS && err != -EBUSY)
444 (err != -EBUSY ||
445 !(req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG)))
446 return pkcs1pad_encrypt_sign_complete(req, err); 440 return pkcs1pad_encrypt_sign_complete(req, err);
447 441
448 return err; 442 return err;
@@ -561,9 +555,7 @@ static int pkcs1pad_verify(struct akcipher_request *req)
561 ctx->key_size); 555 ctx->key_size);
562 556
563 err = crypto_akcipher_verify(&req_ctx->child_req); 557 err = crypto_akcipher_verify(&req_ctx->child_req);
564 if (err != -EINPROGRESS && 558 if (err != -EINPROGRESS && err != -EBUSY)
565 (err != -EBUSY ||
566 !(req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG)))
567 return pkcs1pad_verify_complete(req, err); 559 return pkcs1pad_verify_complete(req, err);
568 560
569 return err; 561 return err;
diff --git a/crypto/xts.c b/crypto/xts.c
index d86c11a8c882..af68012dfab3 100644
--- a/crypto/xts.c
+++ b/crypto/xts.c
@@ -269,9 +269,7 @@ static int do_encrypt(struct skcipher_request *req, int err)
269 crypto_skcipher_encrypt(subreq) ?: 269 crypto_skcipher_encrypt(subreq) ?:
270 post_crypt(req); 270 post_crypt(req);
271 271
272 if (err == -EINPROGRESS || 272 if (err == -EINPROGRESS || err == -EBUSY)
273 (err == -EBUSY &&
274 req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG))
275 return err; 273 return err;
276 } 274 }
277 275
@@ -321,9 +319,7 @@ static int do_decrypt(struct skcipher_request *req, int err)
321 crypto_skcipher_decrypt(subreq) ?: 319 crypto_skcipher_decrypt(subreq) ?:
322 post_crypt(req); 320 post_crypt(req);
323 321
324 if (err == -EINPROGRESS || 322 if (err == -EINPROGRESS || err == -EBUSY)
325 (err == -EBUSY &&
326 req->base.flags & CRYPTO_TFM_REQ_MAY_BACKLOG))
327 return err; 323 return err;
328 } 324 }
329 325