[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150126043218.GA20911@gondor.apana.org.au>
Date: Mon, 26 Jan 2015 15:32:18 +1100
From: Herbert Xu <herbert@...dor.apana.org.au>
To: Stephan Mueller <smueller@...onox.de>
Cc: Daniel Borkmann <dborkman@...hat.com>,
'Quentin Gouchet' <quentin.gouchet@...il.com>,
'LKML' <linux-kernel@...r.kernel.org>,
linux-crypto@...r.kernel.org, linux-api@...r.kernel.org,
Neil Horman <nhorman@...driver.com>
Subject: Re: [PATCH v11 1/2] crypto: AF_ALG: add AEAD support
On Mon, Jan 26, 2015 at 05:26:33AM +0100, Stephan Mueller wrote:
> Am Montag, 26. Januar 2015, 10:55:50 schrieb Herbert Xu:
>
> Hi Herbert,
>
> > On Wed, Jan 21, 2015 at 02:19:17AM +0100, Stephan Mueller wrote:
> > > + /* use the existing memory in an allocated page */
> > > + if (ctx->merge) {
> > > + sg = sgl->sg + sgl->cur - 1;
> > > + len = min_t(unsigned long, len,
> > > + PAGE_SIZE - sg->offset - sg->length);
> > > + err = memcpy_from_msg(page_address(sg_page(sg)) +
> > > + sg->offset + sg->length,
> > > + msg, len);
> > > + if (err)
> > > + goto unlock;
> > > +
> > > + sg->length += len;
> > > + ctx->merge = (sg->offset + sg->length) &
> > > + (PAGE_SIZE - 1);
> > > +
> > > + ctx->used += len;
> > > + copied += len;
> > > + size -= len;
> >
> > Need to add a continue here to recheck size != 0.
>
> Why would that be needed?
>
> When size is still != 0 (i.e. the existing buffer is completely filled, we
> have still some remaining data), we fall through to the while loop that
> generates a new buffer.
Because when size == 0 you should exit the loop. IOW if the new
data is completely merged you should get out and not continue.
Cheers,
--
Email: Herbert Xu <herbert@...dor.apana.org.au>
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-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists