[PATCH] crypto: AF_ALG - remove locking in async callback
Herbert Xu
herbert at gondor.apana.org.au
Mon Nov 6 21:22:35 PST 2017
On Mon, Nov 06, 2017 at 05:06:09PM +0100, Stephan Mueller wrote:
> Am Freitag, 3. November 2017, 14:20:16 CET schrieb Herbert Xu:
>
> > Are you sure about that? In particular is the callback function still
> > sane without the socket lock if a concurrent recvmsg/sendmsg call is
> > made?
>
> I reviewed the code again and I cannot find a reason for keeping the lock. All
> we need to ensure is that the socket exists. This is ensured with the refcount
> of the socket released by __sock_put().
OK, I can't see why we need a lock there either. However, the call
to __sock_put looks suspicious. Why isn't this using sock_put?
Also the sock_hold on the caller side looks buggy. Surely it needs
to be made before we even call the encrypt/decrypt functions rather
than after it returns EINPROGRESS at which point it may well be too
late?
Cheers,
--
Email: Herbert Xu <herbert at gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
More information about the linux-arm-kernel
mailing list