On Wed, Jan 21, 2015 at 02:19:17AM +0100, Stephan Mueller wrote: > > +static void aead_data_wakeup(struct sock *sk) > +{ > + struct alg_sock *ask = alg_sk(sk); > + struct aead_ctx *ctx = ask->private; > + struct socket_wq *wq; > + > + if (ctx->more) > + return; You should also check for ctx->used here. This can be called after a zero-sized write. Cheers, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html