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...