On Fri, Dec 09, 2016 at 01:12:32AM +0800, Peng Tao wrote: > Currently, if a connect call fails on a signal or timeout (e.g., guest is still > in the process of starting up), we'll just return to caller and leave the connect > packet queued and they are sent even though the connection is considered a failure, > which can confuse applications with unwanted false connect attempt. > > The patchset enables vsock (both host and guest) to cancel queued packets when > a connect attempt is considered to fail. > > v3 changelog: > - define cancel_pkt callback in struct vsock_transport rather than struct virtio_transport > - rename virtio_vsock_pkt->vsk to virtio_vsock_pkt->cancel_token > v2 changelog: > - fix queued_replies counting and resume tx/rx when necessary > > > Peng Tao (4): > vsock: track pkt owner vsock > vhost-vsock: add pkt cancel capability > vsock: add pkt cancel capability > vsock: cancel packets when failing to connect > > drivers/vhost/vsock.c | 41 ++++++++++++++++++++++++++++++++ > include/linux/virtio_vsock.h | 2 ++ > include/net/af_vsock.h | 3 +++ > net/vmw_vsock/af_vsock.c | 14 +++++++++++ > net/vmw_vsock/virtio_transport.c | 42 +++++++++++++++++++++++++++++++++ > net/vmw_vsock/virtio_transport_common.c | 7 ++++++ > 6 files changed, 109 insertions(+) I'm happy although I pointed out two unnecessary (void*) casts. Please wait for Jorgen to go happy on the af_vsock.c changes before applying.
Attachment:
signature.asc
Description: PGP signature