Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e7c95eff authored by Martin Schwidefsky's avatar Martin Schwidefsky
Browse files

s390/crypt: fix missing unlock in ctr_paes_crypt on error path



The ctr mode of protected key aes uses the ctrblk page if the
ctrblk_lock could be acquired. If the protected key has to be
reestablished and this operation fails the unlock for the
ctrblk_lock is missing. Add it.

Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 2d6be4ab
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -474,10 +474,13 @@ static int ctr_paes_crypt(struct blkcipher_desc *desc, unsigned long modifier,
			ret = blkcipher_walk_done(desc, walk, nbytes - n);
		}
		if (k < n) {
			if (__ctr_paes_set_key(ctx) != 0)
			if (__ctr_paes_set_key(ctx) != 0) {
				if (locked)
					spin_unlock(&ctrblk_lock);
				return blkcipher_walk_done(desc, walk, -EIO);
			}
		}
	}
	if (locked)
		spin_unlock(&ctrblk_lock);
	/*