search for: virtio_vsock_op_request

Displaying 20 results from an estimated 58 matches for "virtio_vsock_op_request".

2013 Jun 28
1
[RFC 0/5] Introduce VM Sockets virtio transport
...d. The cid is present in DGRAM packets and STREAM _control_ packets (connection handshake, signal read/write and so forth). I don't think the intent here is for it to be in STREAM _data_ packets, but Asias can clarify. > > Virtio VM socket connection creation: > > 1) Client sends VIRTIO_VSOCK_OP_REQUEST to server > > 2) Server reponses with VIRTIO_VSOCK_OP_NEGOTIATE to client > > 3) Client sends VIRTIO_VSOCK_OP_OFFER to server > > 4) Server responses with VIRTIO_VSOCK_OP_ATTACH to client > > What's the reason for a 4 stage setup? Most transports > make do with 3. I...
2013 Jun 28
1
[RFC 0/5] Introduce VM Sockets virtio transport
...d. The cid is present in DGRAM packets and STREAM _control_ packets (connection handshake, signal read/write and so forth). I don't think the intent here is for it to be in STREAM _data_ packets, but Asias can clarify. > > Virtio VM socket connection creation: > > 1) Client sends VIRTIO_VSOCK_OP_REQUEST to server > > 2) Server reponses with VIRTIO_VSOCK_OP_NEGOTIATE to client > > 3) Client sends VIRTIO_VSOCK_OP_OFFER to server > > 4) Server responses with VIRTIO_VSOCK_OP_ATTACH to client > > What's the reason for a 4 stage setup? Most transports > make do with 3. I...
2013 Jun 27
0
[RFC 0/5] Introduce VM Sockets virtio transport
...d, it could be zero if no data > payload is transferred. > type: specifies the type of the packet, it can be SOCK_STREAM or SOCK_DGRAM. > op: specifies the operation of the packet, it is defined as follows. > > enum { > VIRTIO_VSOCK_OP_INVALID = 0, > VIRTIO_VSOCK_OP_REQUEST = 1, > VIRTIO_VSOCK_OP_NEGOTIATE = 2, > VIRTIO_VSOCK_OP_OFFER = 3, > VIRTIO_VSOCK_OP_ATTACH = 4, > VIRTIO_VSOCK_OP_RW = 5, > VIRTIO_VSOCK_OP_CREDIT = 6, > VIRTIO_VSOCK_OP_RST = 7, > VIRTIO_VSOCK...
2013 Jun 27
0
[RFC 0/5] Introduce VM Sockets virtio transport
...oad, it could be zero if no data > payload is transferred. > type: specifies the type of the packet, it can be SOCK_STREAM or SOCK_DGRAM. > op: specifies the operation of the packet, it is defined as follows. > > enum { > VIRTIO_VSOCK_OP_INVALID = 0, > VIRTIO_VSOCK_OP_REQUEST = 1, > VIRTIO_VSOCK_OP_NEGOTIATE = 2, > VIRTIO_VSOCK_OP_OFFER = 3, > VIRTIO_VSOCK_OP_ATTACH = 4, > VIRTIO_VSOCK_OP_RW = 5, > VIRTIO_VSOCK_OP_CREDIT = 6, > VIRTIO_VSOCK_OP_RST = 7, > VIRTIO_VSOCK_OP_SHU...
2013 Jun 27
13
[RFC 0/5] Introduce VM Sockets virtio transport
...specifies the size of the data payload, it could be zero if no data payload is transferred. type: specifies the type of the packet, it can be SOCK_STREAM or SOCK_DGRAM. op: specifies the operation of the packet, it is defined as follows. enum { VIRTIO_VSOCK_OP_INVALID = 0, VIRTIO_VSOCK_OP_REQUEST = 1, VIRTIO_VSOCK_OP_NEGOTIATE = 2, VIRTIO_VSOCK_OP_OFFER = 3, VIRTIO_VSOCK_OP_ATTACH = 4, VIRTIO_VSOCK_OP_RW = 5, VIRTIO_VSOCK_OP_CREDIT = 6, VIRTIO_VSOCK_OP_RST = 7, VIRTIO_VSOCK_OP_SHUTDOWN = 8, }; shut: specifies t...
2013 Jun 27
13
[RFC 0/5] Introduce VM Sockets virtio transport
...specifies the size of the data payload, it could be zero if no data payload is transferred. type: specifies the type of the packet, it can be SOCK_STREAM or SOCK_DGRAM. op: specifies the operation of the packet, it is defined as follows. enum { VIRTIO_VSOCK_OP_INVALID = 0, VIRTIO_VSOCK_OP_REQUEST = 1, VIRTIO_VSOCK_OP_NEGOTIATE = 2, VIRTIO_VSOCK_OP_OFFER = 3, VIRTIO_VSOCK_OP_ATTACH = 4, VIRTIO_VSOCK_OP_RW = 5, VIRTIO_VSOCK_OP_CREDIT = 6, VIRTIO_VSOCK_OP_RST = 7, VIRTIO_VSOCK_OP_SHUTDOWN = 8, }; shut: specifies t...
2016 Dec 07
0
[PATCH v2 1/4] vsock: track pkt owner vsock
..., struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_CREDIT_UPDATE, .type = type, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -519,6 +521,7 @@ int virtio_transport_connect(struct vsock_sock *vsk) struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_REQUEST, .type = VIRTIO_VSOCK_TYPE_STREAM, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -534,6 +537,7 @@ int virtio_transport_shutdown(struct vsock_sock *vsk, int mode) VIRTIO_VSOCK_SHUTDOWN_RCV : 0) | (mode & SEND_SHUTDOWN ? VIRTIO_VSOCK_SHUTDOW...
2016 Dec 08
0
[PATCH v3 1/4] vsock: track pkt owner vsock
..., struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_CREDIT_UPDATE, .type = type, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -519,6 +521,7 @@ int virtio_transport_connect(struct vsock_sock *vsk) struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_REQUEST, .type = VIRTIO_VSOCK_TYPE_STREAM, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -534,6 +537,7 @@ int virtio_transport_shutdown(struct vsock_sock *vsk, int mode) VIRTIO_VSOCK_SHUTDOWN_RCV : 0) | (mode & SEND_SHUTDOWN ? VIRTIO_VSOCK_SHUTDOW...
2016 Dec 12
0
[PATCH v4 1/4] vsock: track pkt owner vsock
..., struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_CREDIT_UPDATE, .type = type, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -519,6 +521,7 @@ int virtio_transport_connect(struct vsock_sock *vsk) struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_REQUEST, .type = VIRTIO_VSOCK_TYPE_STREAM, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -534,6 +537,7 @@ int virtio_transport_shutdown(struct vsock_sock *vsk, int mode) VIRTIO_VSOCK_SHUTDOWN_RCV : 0) | (mode & SEND_SHUTDOWN ? VIRTIO_VSOCK_SHUTDOW...
2017 Mar 01
0
[PATCH-v4-RESEND 1/4] vsock: track pkt owner vsock
..., struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_CREDIT_UPDATE, .type = type, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -518,6 +520,7 @@ int virtio_transport_connect(struct vsock_sock *vsk) struct virtio_vsock_pkt_info info = { .op = VIRTIO_VSOCK_OP_REQUEST, .type = VIRTIO_VSOCK_TYPE_STREAM, + .vsk = vsk, }; return virtio_transport_send_pkt_info(vsk, &info); @@ -533,6 +536,7 @@ int virtio_transport_shutdown(struct vsock_sock *vsk, int mode) VIRTIO_VSOCK_SHUTDOWN_RCV : 0) | (mode & SEND_SHUTDOWN ? VIRTIO_VSOCK_SHUTDOW...
2023 Mar 21
0
[RFC PATCH v2] virtio/vsock: allocate multiple skbuffs on tx
...pare separate patch which adds zero argument check to this function. Yep, I agree. >As i see, the only function suitable for such 'if' condition is >'virtio_transport_put_credit()'. Why not even for virtio_transport_get_credit() ? When we send packets without payload (e.g. VIRTIO_VSOCK_OP_REQUEST, VIRTIO_VSOCK_OP_SHUTDOWN) we call virtio_transport_get_credit() with `credit` parameter equal to 0, then we acquire the spinlock but in the end we do nothing. >Anyway - for future use this check won't be bad. Yep, these are minor improvements ;-) Thanks, Stefano
2013 Jun 27
1
[RFC 2/5] VSOCK: Introduce virtio-vsock-common.ko
..._vsock_hdr { > + __u32 src_cid; > + __u32 src_port; > + __u32 dst_cid; > + __u32 dst_port; > + __u32 len; > + __u8 type; > + __u8 op; > + __u8 shut; > + __u64 fwd_cnt; > + __u64 buf_alloc; > +} __packed; > + > +enum { > + VIRTIO_VSOCK_OP_INVALID = 0, > + VIRTIO_VSOCK_OP_REQUEST = 1, > + VIRTIO_VSOCK_OP_NEGOTIATE = 2, > + VIRTIO_VSOCK_OP_OFFER = 3, > + VIRTIO_VSOCK_OP_ATTACH = 4, > + VIRTIO_VSOCK_OP_RW = 5, > + VIRTIO_VSOCK_OP_CREDIT = 6, > + VIRTIO_VSOCK_OP_RST = 7, > + VIRTIO_VSOCK_OP_SHUTDOWN = 8, > +}; > + > +#endif /* _UAPI_LINUX_VIRTIO_V...
2013 Jun 27
1
[RFC 2/5] VSOCK: Introduce virtio-vsock-common.ko
..._vsock_hdr { > + __u32 src_cid; > + __u32 src_port; > + __u32 dst_cid; > + __u32 dst_port; > + __u32 len; > + __u8 type; > + __u8 op; > + __u8 shut; > + __u64 fwd_cnt; > + __u64 buf_alloc; > +} __packed; > + > +enum { > + VIRTIO_VSOCK_OP_INVALID = 0, > + VIRTIO_VSOCK_OP_REQUEST = 1, > + VIRTIO_VSOCK_OP_NEGOTIATE = 2, > + VIRTIO_VSOCK_OP_OFFER = 3, > + VIRTIO_VSOCK_OP_ATTACH = 4, > + VIRTIO_VSOCK_OP_RW = 5, > + VIRTIO_VSOCK_OP_CREDIT = 6, > + VIRTIO_VSOCK_OP_RST = 7, > + VIRTIO_VSOCK_OP_SHUTDOWN = 8, > +}; > + > +#endif /* _UAPI_LINUX_VIRTIO_V...
2015 Dec 09
0
[PATCH v3 1/4] VSOCK: Introduce virtio-vsock-common.ko
...en; + __le16 type; /* enum virtio_vsock_type */ + __le16 op; /* enum virtio_vsock_op */ + __le32 flags; + __le32 buf_alloc; + __le32 fwd_cnt; +}; + +enum virtio_vsock_type { + VIRTIO_VSOCK_TYPE_STREAM = 1, +}; + +enum virtio_vsock_op { + VIRTIO_VSOCK_OP_INVALID = 0, + + /* Connect operations */ + VIRTIO_VSOCK_OP_REQUEST = 1, + VIRTIO_VSOCK_OP_RESPONSE = 2, + VIRTIO_VSOCK_OP_RST = 3, + VIRTIO_VSOCK_OP_SHUTDOWN = 4, + + /* To send payload */ + VIRTIO_VSOCK_OP_RW = 5, + + /* Tell the peer our credit info */ + VIRTIO_VSOCK_OP_CREDIT_UPDATE = 6, + /* Request the peer to send the credit info to us */ + VIRTIO_VSOCK_OP_C...
2014 Jul 05
9
[RFC V2 0/7] Introduce VM Sockets virtio transport
...th of this pkt. When the payload is for SOCK_STREAM, len specifies the length of the pkt. type: specifies the type of the packet, it can be SOCK_STREAM or SOCK_DGRAM. op: specifies the operation of the packet, it is defined as follows. enum { VIRTIO_VSOCK_OP_INVALID = 0, VIRTIO_VSOCK_OP_REQUEST = 1, VIRTIO_VSOCK_OP_RESPONSE = 2, VIRTIO_VSOCK_OP_ACK = 3, VIRTIO_VSOCK_OP_RW = 4, VIRTIO_VSOCK_OP_CREDIT = 5, VIRTIO_VSOCK_OP_WANTCREDIT = 6, VIRTIO_VSOCK_OP_RST = 7, VIRTIO_VSOCK_OP_SHUTDOWN = 8, }; /*FIXME*/ flags:...
2014 Jul 05
9
[RFC V2 0/7] Introduce VM Sockets virtio transport
...th of this pkt. When the payload is for SOCK_STREAM, len specifies the length of the pkt. type: specifies the type of the packet, it can be SOCK_STREAM or SOCK_DGRAM. op: specifies the operation of the packet, it is defined as follows. enum { VIRTIO_VSOCK_OP_INVALID = 0, VIRTIO_VSOCK_OP_REQUEST = 1, VIRTIO_VSOCK_OP_RESPONSE = 2, VIRTIO_VSOCK_OP_ACK = 3, VIRTIO_VSOCK_OP_RW = 4, VIRTIO_VSOCK_OP_CREDIT = 5, VIRTIO_VSOCK_OP_WANTCREDIT = 6, VIRTIO_VSOCK_OP_RST = 7, VIRTIO_VSOCK_OP_SHUTDOWN = 8, }; /*FIXME*/ flags:...
2013 Jun 27
0
[RFC 2/5] VSOCK: Introduce virtio-vsock-common.ko
...__u32 guest_cid; + __u32 max_virtqueue_pairs; +} __packed; + +struct virtio_vsock_hdr { + __u32 src_cid; + __u32 src_port; + __u32 dst_cid; + __u32 dst_port; + __u32 len; + __u8 type; + __u8 op; + __u8 shut; + __u64 fwd_cnt; + __u64 buf_alloc; +} __packed; + +enum { + VIRTIO_VSOCK_OP_INVALID = 0, + VIRTIO_VSOCK_OP_REQUEST = 1, + VIRTIO_VSOCK_OP_NEGOTIATE = 2, + VIRTIO_VSOCK_OP_OFFER = 3, + VIRTIO_VSOCK_OP_ATTACH = 4, + VIRTIO_VSOCK_OP_RW = 5, + VIRTIO_VSOCK_OP_CREDIT = 6, + VIRTIO_VSOCK_OP_RST = 7, + VIRTIO_VSOCK_OP_SHUTDOWN = 8, +}; + +#endif /* _UAPI_LINUX_VIRTIO_VSOCK_H */ diff --git a/net/vmw_vsock/virtio_transp...
2019 Dec 13
3
[PATCH net 0/2] vsock/virtio: fix null-pointer dereference and related precautions
This series mainly solves a possible null-pointer dereference in virtio_transport_recv_listen() introduced with the multi-transport support [PATCH 1]. PATCH 2 adds a WARN_ON check for the same potential issue and a returned error in the virtio_transport_send_pkt_info() function to avoid crashing the kernel. Stefano Garzarella (2): vsock/virtio: fix null-pointer dereference in
2015 Dec 10
1
[PATCH v3 1/4] VSOCK: Introduce virtio-vsock-common.ko
...virtio_vsock_op */ > + __le32 flags; > + __le32 buf_alloc; > + __le32 fwd_cnt; > +}; > + > +enum virtio_vsock_type { > + VIRTIO_VSOCK_TYPE_STREAM = 1, > +}; > + > +enum virtio_vsock_op { > + VIRTIO_VSOCK_OP_INVALID = 0, > + > + /* Connect operations */ > + VIRTIO_VSOCK_OP_REQUEST = 1, > + VIRTIO_VSOCK_OP_RESPONSE = 2, > + VIRTIO_VSOCK_OP_RST = 3, > + VIRTIO_VSOCK_OP_SHUTDOWN = 4, > + > + /* To send payload */ > + VIRTIO_VSOCK_OP_RW = 5, > + > + /* Tell the peer our credit info */ > + VIRTIO_VSOCK_OP_CREDIT_UPDATE = 6, > + /* Request the peer to...
2015 Dec 10
1
[PATCH v3 1/4] VSOCK: Introduce virtio-vsock-common.ko
...virtio_vsock_op */ > + __le32 flags; > + __le32 buf_alloc; > + __le32 fwd_cnt; > +}; > + > +enum virtio_vsock_type { > + VIRTIO_VSOCK_TYPE_STREAM = 1, > +}; > + > +enum virtio_vsock_op { > + VIRTIO_VSOCK_OP_INVALID = 0, > + > + /* Connect operations */ > + VIRTIO_VSOCK_OP_REQUEST = 1, > + VIRTIO_VSOCK_OP_RESPONSE = 2, > + VIRTIO_VSOCK_OP_RST = 3, > + VIRTIO_VSOCK_OP_SHUTDOWN = 4, > + > + /* To send payload */ > + VIRTIO_VSOCK_OP_RW = 5, > + > + /* Tell the peer our credit info */ > + VIRTIO_VSOCK_OP_CREDIT_UPDATE = 6, > + /* Request the peer to...