search for: cancel_token

Displaying 20 results from an estimated 29 matches for "cancel_token".

2017 Mar 02
2
[PATCH-v4-RESEND 1/4] vsock: track pkt owner vsock
...ude/linux/virtio_vsock.h > index 9638bfe..193ad3a 100644 > --- a/include/linux/virtio_vsock.h > +++ b/include/linux/virtio_vsock.h > @@ -48,6 +48,7 @@ struct virtio_vsock_pkt { > struct virtio_vsock_hdr hdr; > struct work_struct work; > struct list_head list; > + void *cancel_token; /* only used for cancellation */ The type here is fixed, you only store vhost_sock object pointers here, so don't use "void *" please.
2017 Mar 02
2
[PATCH-v4-RESEND 1/4] vsock: track pkt owner vsock
...ude/linux/virtio_vsock.h > index 9638bfe..193ad3a 100644 > --- a/include/linux/virtio_vsock.h > +++ b/include/linux/virtio_vsock.h > @@ -48,6 +48,7 @@ struct virtio_vsock_pkt { > struct virtio_vsock_hdr hdr; > struct work_struct work; > struct list_head list; > + void *cancel_token; /* only used for cancellation */ The type here is fixed, you only store vhost_sock object pointers here, so don't use "void *" please.
2016 Dec 08
4
[PATCH v3 0/4] vsock: cancel connect packets when failing to connect
...t 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 +++...
2016 Dec 08
4
[PATCH v3 0/4] vsock: cancel connect packets when failing to connect
...t 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 +++...
2016 Dec 12
4
[PATCH v4 0/4] vsock: cancel connect packets when failing to connect
...ts when a connect attempt is considered to fail. v4 changelog: - drop two unnecessary void * cast - update new callback commnet 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 Cheers, Tao 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...
2016 Dec 12
4
[PATCH v4 0/4] vsock: cancel connect packets when failing to connect
...ts when a connect attempt is considered to fail. v4 changelog: - drop two unnecessary void * cast - update new callback commnet 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 Cheers, Tao 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...
2017 Mar 01
5
[PATCH-v4-RESEND 0/4] vsock: cancel connect packets when failing to connect
...ts when a connect attempt is considered to fail. v4 changelog: - drop two unnecessary void * cast - update new callback comment 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 Cheers, Tao 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...
2017 Mar 01
5
[PATCH-v4-RESEND 0/4] vsock: cancel connect packets when failing to connect
...ts when a connect attempt is considered to fail. v4 changelog: - drop two unnecessary void * cast - update new callback comment 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 Cheers, Tao 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...
2017 Mar 03
0
[PATCH-v4-RESEND 1/4] vsock: track pkt owner vsock
....193ad3a 100644 >> --- a/include/linux/virtio_vsock.h >> +++ b/include/linux/virtio_vsock.h >> @@ -48,6 +48,7 @@ struct virtio_vsock_pkt { >> struct virtio_vsock_hdr hdr; >> struct work_struct work; >> struct list_head list; >> + void *cancel_token; /* only used for cancellation */ > > The type here is fixed, you only store vhost_sock object pointers > here, so don't use "void *" please. It used to be "struct vhost_sock *" but no refcount is held. Stefan suggested to use "void *cancel_token" to make...
2017 Mar 15
6
[PATCH-v5 0/4] vsock: cancel connect packets when failing to connect
...ey 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. v5 changelog: - change virtio_vsock_pkt->cancel_token back to virtio_vsock_pkt->vsk v4 changelog: - drop two unnecessary void * cast - update new callback comment 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...
2017 Mar 15
6
[PATCH-v5 0/4] vsock: cancel connect packets when failing to connect
...ey 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. v5 changelog: - change virtio_vsock_pkt->cancel_token back to virtio_vsock_pkt->vsk v4 changelog: - drop two unnecessary void * cast - update new callback comment 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...
2016 Dec 08
6
[PATCH v3 2/4] vhost-vsock: add pkt cancel capability
...reeme); + + /* Find the vhost_vsock according to guest context id */ + vsock = vhost_vsock_get(vsk->remote_addr.svm_cid); + if (!vsock) + return -ENODEV; + + spin_lock_bh(&vsock->send_pkt_list_lock); + list_for_each_entry_safe(pkt, n, &vsock->send_pkt_list, list) { + if (pkt->cancel_token != (void *)vsk) + continue; + list_move(&pkt->list, &freeme); + } + spin_unlock_bh(&vsock->send_pkt_list_lock); + + list_for_each_entry_safe(pkt, n, &freeme, list) { + if (pkt->reply) + cnt++; + list_del(&pkt->list); + virtio_transport_free_pkt(pkt); + } + +...
2016 Dec 08
6
[PATCH v3 2/4] vhost-vsock: add pkt cancel capability
...reeme); + + /* Find the vhost_vsock according to guest context id */ + vsock = vhost_vsock_get(vsk->remote_addr.svm_cid); + if (!vsock) + return -ENODEV; + + spin_lock_bh(&vsock->send_pkt_list_lock); + list_for_each_entry_safe(pkt, n, &vsock->send_pkt_list, list) { + if (pkt->cancel_token != (void *)vsk) + continue; + list_move(&pkt->list, &freeme); + } + spin_unlock_bh(&vsock->send_pkt_list_lock); + + list_for_each_entry_safe(pkt, n, &freeme, list) { + if (pkt->reply) + cnt++; + list_del(&pkt->list); + virtio_transport_free_pkt(pkt); + } + +...
2017 Jan 06
2
[PATCH v4 0/4] vsock: cancel connect packets when failing to connect
...> v4 changelog: >> - drop two unnecessary void * cast >> - update new callback commnet >> 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 >> >> Cheers, >> Tao >> >> Peng Tao (4): >> vsock: track pkt owner vsock >> vhost-vsock: add pkt cancel capability >> vsock: add pkt cancel capabilit...
2017 Jan 06
2
[PATCH v4 0/4] vsock: cancel connect packets when failing to connect
...> v4 changelog: >> - drop two unnecessary void * cast >> - update new callback commnet >> 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 >> >> Cheers, >> Tao >> >> Peng Tao (4): >> vsock: track pkt owner vsock >> vhost-vsock: add pkt cancel capability >> vsock: add pkt cancel capabilit...
2016 Dec 12
3
[PATCH v4 2/4] vhost-vsock: add pkt cancel capability
...reeme); + + /* Find the vhost_vsock according to guest context id */ + vsock = vhost_vsock_get(vsk->remote_addr.svm_cid); + if (!vsock) + return -ENODEV; + + spin_lock_bh(&vsock->send_pkt_list_lock); + list_for_each_entry_safe(pkt, n, &vsock->send_pkt_list, list) { + if (pkt->cancel_token != vsk) + continue; + list_move(&pkt->list, &freeme); + } + spin_unlock_bh(&vsock->send_pkt_list_lock); + + list_for_each_entry_safe(pkt, n, &freeme, list) { + if (pkt->reply) + cnt++; + list_del(&pkt->list); + virtio_transport_free_pkt(pkt); + } + + if (cnt)...
2016 Dec 12
3
[PATCH v4 2/4] vhost-vsock: add pkt cancel capability
...reeme); + + /* Find the vhost_vsock according to guest context id */ + vsock = vhost_vsock_get(vsk->remote_addr.svm_cid); + if (!vsock) + return -ENODEV; + + spin_lock_bh(&vsock->send_pkt_list_lock); + list_for_each_entry_safe(pkt, n, &vsock->send_pkt_list, list) { + if (pkt->cancel_token != vsk) + continue; + list_move(&pkt->list, &freeme); + } + spin_unlock_bh(&vsock->send_pkt_list_lock); + + list_for_each_entry_safe(pkt, n, &freeme, list) { + if (pkt->reply) + cnt++; + list_del(&pkt->list); + virtio_transport_free_pkt(pkt); + } + + if (cnt)...
2016 Dec 08
1
[PATCH v2 1/4] vsock: track pkt owner vsock
...ct vsock_sock *vsk; To prevent future bugs, please add a comment here: /* socket refcnt not held, only use for cancellation */ This field is just an opaque token used for cancellation rather than a struct vsock_sock pointer that we are allowed to dereference. You could change this field to void *cancel_token to make the code harder to misuse. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 455 bytes Desc: not available URL: <http://lists.linuxfoundation.org/pipermail/virtualization/attachments/20161208/dc260baa/a...
2016 Dec 08
0
[PATCH v3 1/4] vsock: track pkt owner vsock
...it a/include/linux/virtio_vsock.h b/include/linux/virtio_vsock.h index 9638bfe..193ad3a 100644 --- a/include/linux/virtio_vsock.h +++ b/include/linux/virtio_vsock.h @@ -48,6 +48,7 @@ struct virtio_vsock_pkt { struct virtio_vsock_hdr hdr; struct work_struct work; struct list_head list; + void *cancel_token; /* only used for cancellation */ void *buf; u32 len; u32 off; @@ -56,6 +57,7 @@ struct virtio_vsock_pkt { struct virtio_vsock_pkt_info { u32 remote_cid, remote_port; + struct vsock_sock *vsk; struct msghdr *msg; u32 pkt_len; u16 type; diff --git a/net/vmw_vsock/virtio_transport_co...
2016 Dec 12
0
[PATCH v4 1/4] vsock: track pkt owner vsock
...it a/include/linux/virtio_vsock.h b/include/linux/virtio_vsock.h index 9638bfe..193ad3a 100644 --- a/include/linux/virtio_vsock.h +++ b/include/linux/virtio_vsock.h @@ -48,6 +48,7 @@ struct virtio_vsock_pkt { struct virtio_vsock_hdr hdr; struct work_struct work; struct list_head list; + void *cancel_token; /* only used for cancellation */ void *buf; u32 len; u32 off; @@ -56,6 +57,7 @@ struct virtio_vsock_pkt { struct virtio_vsock_pkt_info { u32 remote_cid, remote_port; + struct vsock_sock *vsk; struct msghdr *msg; u32 pkt_len; u16 type; diff --git a/net/vmw_vsock/virtio_transport_co...