From 4890b27f8143bb8135c3cd89482d14d94b0026f2 Mon Sep 17 00:00:00 2001 From: Lars Persson Date: Tue, 25 Aug 2015 11:59:15 +0200 Subject: [PATCH] crypto: algif_aead - fix for multiple operations on AF_ALG sockets Orabug: 25243093 The tsgl scatterlist must be re-initialized after each operation. Otherwise the sticky bits in the page_link will corrupt the list with pre-mature termination or false chaining. Signed-off-by: Lars Persson Signed-off-by: Herbert Xu (cherry picked from commit bf433416e67597ba105ece55b3136557874945db) Signed-off-by: Ethan Zhao --- crypto/algif_aead.c | 1 + 1 file changed, 1 insertion(+) diff --git a/crypto/algif_aead.c b/crypto/algif_aead.c index 69abada22373..d0cac026d2dd 100644 --- a/crypto/algif_aead.c +++ b/crypto/algif_aead.c @@ -89,6 +89,7 @@ static void aead_put_sgl(struct sock *sk) put_page(sg_page(sg + i)); sg_assign_page(sg + i, NULL); } + sg_init_table(sg, ALG_MAX_PAGES); sgl->cur = 0; ctx->used = 0; ctx->more = 0; -- 2.50.1