lkml.org 
[lkml]   [2016]   [Feb]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 3.12 069/142] crypto: algif_hash - wait for crypto_ahash_init() to complete
    Date
    From: "Wang, Rui Y" <rui.y.wang@intel.com>

    3.12-stable review patch. If anyone has any objections, please let me know.

    ===============

    commit fe09786178f9df713a4b2dd6b93c0a722346bf5e upstream.

    hash_sendmsg/sendpage() need to wait for the completion
    of crypto_ahash_init() otherwise it can cause panic.

    Signed-off-by: Rui Wang <rui.y.wang@intel.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    ---
    crypto/algif_hash.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    diff --git a/crypto/algif_hash.c b/crypto/algif_hash.c
    index 402dae150ec0..b351127426db 100644
    --- a/crypto/algif_hash.c
    +++ b/crypto/algif_hash.c
    @@ -56,7 +56,8 @@ static int hash_sendmsg(struct kiocb *unused, struct socket *sock,

    lock_sock(sk);
    if (!ctx->more) {
    - err = crypto_ahash_init(&ctx->req);
    + err = af_alg_wait_for_completion(crypto_ahash_init(&ctx->req),
    + &ctx->completion);
    if (err)
    goto unlock;
    }
    @@ -136,6 +137,7 @@ static ssize_t hash_sendpage(struct socket *sock, struct page *page,
    } else {
    if (!ctx->more) {
    err = crypto_ahash_init(&ctx->req);
    + err = af_alg_wait_for_completion(err, &ctx->completion);
    if (err)
    goto unlock;
    }
    --
    2.7.1
    \
     
     \ /
      Last update: 2016-02-24 12:21    [W:4.063 / U:0.284 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site