Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
hv_sock: add locking in the open/close/release code paths
Without the patch, when hvs_open_connection() hasn't completely established a connection (e.g. it has changed sk->sk_state to SS_CONNECTED, but hasn't inserted the sock into the connected queue), vsock_stream_connect() may see the sk_state change and return the connection to the userspace, and next when the userspace closes the connection quickly, hvs_release() may not see the connection in the connected queue; finally hvs_open_connection() inserts the connection into the queue, but we won't be able to purge the connection for ever. Signed-off-by: Dexuan Cui <[email protected]> Cc: K. Y. Srinivasan <[email protected]> Cc: Haiyang Zhang <[email protected]> Cc: Stephen Hemminger <[email protected]> Cc: Vitaly Kuznetsov <[email protected]> Cc: Cathy Avery <[email protected]> Cc: Rolf Neugebauer <[email protected]> Cc: Marcelo Cerri <[email protected]> Signed-off-by: David S. Miller <[email protected]>
- Loading branch information