On Thu, Jun 13, 2019 at 03:52:27AM +0000, Sunil Muthuswamy wrote: > The current vsock code for removal of socket from the list is both > subject to race and inefficient. It takes the lock, checks whether > the socket is in the list, drops the lock and if the socket was on the > list, deletes it from the list. This is subject to race because as soon > as the lock is dropped once it is checked for presence, that condition > cannot be relied upon for any decision. It is also inefficient because > if the socket is present in the list, it takes the lock twice. > > Signed-off-by: Sunil Muthuswamy > --- > net/vmw_vsock/af_vsock.c | 38 +++++++------------------------------- > 1 file changed, 7 insertions(+), 31 deletions(-) Reviewed-by: Stefan Hajnoczi