mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-15 01:21:29 -04:00
s390/crypto: Extend protected key conversion retry loop
CI runs show that the protected key conversion retry loop runs into timeout if a master key change was initiated on the addressed crypto resource shortly before the conversion request. This patch extends the retry logic to run in total 5 attempts with increasing delay (200, 400, 800 and 1600 ms) in case of a busy card. Signed-off-by: Harald Freudenberger <freude@linux.ibm.com> Reviewed-by: Ingo Franzki <ifranzki@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
committed by
Heiko Carstens
parent
c4abe62342
commit
b5185ea1a6
@@ -199,8 +199,11 @@ static inline int convert_key(const u8 *key, unsigned int keylen,
|
||||
|
||||
pk->len = sizeof(pk->protkey);
|
||||
|
||||
/* try three times in case of busy card */
|
||||
for (rc = -EIO, i = 0; rc && i < 3; i++) {
|
||||
/*
|
||||
* In case of a busy card retry with increasing delay
|
||||
* of 200, 400, 800 and 1600 ms - in total 3 s.
|
||||
*/
|
||||
for (rc = -EIO, i = 0; rc && i < 5; i++) {
|
||||
if (rc == -EBUSY && msleep_interruptible((1 << i) * 100)) {
|
||||
rc = -EINTR;
|
||||
goto out;
|
||||
|
||||
Reference in New Issue
Block a user