Re: [External] [RFC] vsock: add multiple transports support for dgram

2021-04-13 Thread Jorgen Hansen
> On 7 Apr 2021, at 20:25, Jiang Wang . wrote: > > On Wed, Apr 7, 2021 at 2:51 AM Jorgen Hansen wrote: >> >> >>> On 6 Apr 2021, at 20:31, Jiang Wang wrote: >>> >>> From: "jiang.wang" >>> >>> Currently, only

Re: [RFC] vsock: add multiple transports support for dgram

2021-04-07 Thread Jorgen Hansen
> On 6 Apr 2021, at 20:31, Jiang Wang wrote: > > From: "jiang.wang" > > Currently, only VMCI supports dgram sockets. To supported > nested VM use case, this patch removes transport_dgram and > uses transport_g2h and transport_h2g for dgram too. Could you provide some background for

Re: [RFC PATCH v5 04/19] af_vsock: implement SEQPACKET receive loop

2021-02-25 Thread Jorgen Hansen
On 18 Feb 2021, at 06:37, Arseny Krasnov wrote: > > This adds receive loop for SEQPACKET. It looks like receive loop for > STREAM, but there is a little bit difference: > 1) It doesn't call notify callbacks. > 2) It doesn't care about 'SO_SNDLOWAT' and 'SO_RCVLOWAT' values, because > there is

Re: [RFC PATCH v5 02/19] af_vsock: separate wait data loop

2021-02-25 Thread Jorgen Hansen
> On 18 Feb 2021, at 06:36, Arseny Krasnov wrote: > > This moves wait loop for data to dedicated function, because later > it will be used by SEQPACKET data receive loop. > > Signed-off-by: Arseny Krasnov > --- > net/vmw_vsock/af_vsock.c | 155 +-- > 1 file

Re: [RFC PATCH v4 02/17] af_vsock: separate wait data loop

2021-02-11 Thread Jorgen Hansen
> On 7 Feb 2021, at 16:14, Arseny Krasnov wrote: > > This moves wait loop for data to dedicated function, because later > it will be used by SEQPACKET data receive loop. > > Signed-off-by: Arseny Krasnov > --- > net/vmw_vsock/af_vsock.c | 158 +-- > 1 file

[PATCH v2 2/3] VMCI: Use set_page_dirty_lock() when unregistering guest memory

2021-01-20 Thread Jorgen Hansen
. With this fix, no warning was observed. Ran various vSocket tests without issues. Fixes: 06164d2b72aa ("VMCI: queue pairs implementation.") Reviewed-by: Vishnu Dasa Signed-off-by: Jorgen Hansen --- drivers/misc/vmw_vmci/vmci_queue_pair.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)

[PATCH v2 0/3] VMCI: Queue pair bug fixes

2021-01-20 Thread Jorgen Hansen
This series contains three bug fixes for the queue pair implementation in the VMCI driver. v1 -> v2: - format patches as a series - use min_t instead of min to ensure size_t comparison (issue pointed out by kernel test robot ) Jorgen Hansen (3): VMCI: Stop log spew when qp allocat

[PATCH v2 1/3] VMCI: Stop log spew when qp allocation isn't possible

2021-01-20 Thread Jorgen Hansen
Signed-off-by: Jorgen Hansen --- drivers/misc/vmw_vmci/vmci_queue_pair.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/misc/vmw_vmci/vmci_queue_pair.c b/drivers/misc/vmw_vmci/vmci_queue_pair.c index c490658..a3691c1 100644 --- a/drivers/misc/vmw_vmci/vmci_queue_pair.c

[PATCH v2 3/3] VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC

2021-01-20 Thread Jorgen Hansen
. The check in qp_host_alloc_queue has also been updated to enforce the maximum queue pair size as defined by VMCI_MAX_GUEST_QP_MEMORY. The fix has been verified using sample code supplied by nslusa...@gmx.net. Reported-by: nslusa...@gmx.net Reviewed-by: Vishnu Dasa Signed-off-by: Jorgen Hansen

Re: [PATCH] VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC

2021-01-11 Thread Jorgen Hansen
On 11 Jan 2021, at 13:46, Greg KH wrote: > > On Mon, Jan 11, 2021 at 04:18:53AM -0800, Jorgen Hansen wrote: >> When create the VMCI queue pair tracking data structures on the host >> side, the IOCTL for creating the VMCI queue pair didn't validate >> the queue pair size

[PATCH] VMCI: Stop log spew when qp allocation isn't possible

2021-01-11 Thread Jorgen Hansen
Signed-off-by: Jorgen Hansen --- drivers/misc/vmw_vmci/vmci_queue_pair.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/misc/vmw_vmci/vmci_queue_pair.c b/drivers/misc/vmw_vmci/vmci_queue_pair.c index c490658..a3691c1 100644 --- a/drivers/misc/vmw_vmci/vmci_queue_pair.c

[PATCH] VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC

2021-01-11 Thread Jorgen Hansen
. The check in qp_host_alloc_queue has also been updated to enforce the maximum queue pair size as defined by VMCI_MAX_GUEST_QP_MEMORY. The fix has been verified using sample code supplied by nslusa...@gmx.net. Reported-by: nslusa...@gmx.net Reviewed-by: Vishnu Dasa Signed-off-by: Jorgen Hansen

[PATCH] VMCI: Use set_page_dirty_lock() when unregistering guest memory

2021-01-11 Thread Jorgen Hansen
. With this fix, no warning was observed. Ran various vSocket tests without issues. Fixes: 06164d2b72aa ("VMCI: queue pairs implementation.") Reviewed-by: Vishnu Dasa Signed-off-by: Jorgen Hansen --- drivers/misc/vmw_vmci/vmci_queue_pair.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)

RE: [PATCH RESEND] misc/vmw_vmci: bail out earlier on too big queue allocation

2020-12-07 Thread Jorgen Hansen
From: Stefano Garzarella Sent: Wednesday, December 2, 2020 2:06 AM > > On Tue, Dec 1, 2020 at 9:21 PM Arnd Bergmann wrote: > > > > On Mon, Nov 23, 2020 at 10:01 PM Norbert Slusarek > wrote: > > > > > > From: Norbert Slusarek > > > Date: Mon, 23 Nov 2020 21:53:41 +0100 > > > Subject: [PATCH

RE: [PATCH net v2] vsock: fix potential null pointer dereference in vsock_poll()

2020-08-12 Thread Jorgen Hansen
> From: Stefano Garzarella > Sent: Wednesday, August 12, 2020 2:56 PM > To: da...@davemloft.net > Cc: linux-kernel@vger.kernel.org; Dexuan Cui ; > net...@vger.kernel.org; Stefan Hajnoczi ; Jakub > Kicinski ; Jorgen Hansen ; > Stefano Garzarella > Subject: [PATCH net v2] v

RE: [PATCH net] vsock: fix timeout in vsock_accept()

2020-05-27 Thread Jorgen Hansen
TASK_INTERRUPTIBLE); > > while ((connected = vsock_dequeue_accept(listener)) == NULL && > -- > 2.25.4 Thanks for fixing this! Reviewed-by: Jorgen Hansen

Re: [PATCH] VMCI: Fixup atomic64_t abuse

2019-06-06 Thread Jorgen Hansen
> On 6 Jun 2019, at 11:34, Peter Zijlstra wrote: > > > The VMCI driver is abusing atomic64_t and atomic_t, there is no actual > atomic RmW operations around. > > Rewrite the code to use a regular u64 with READ_ONCE() and > WRITE_ONCE() and a cast to 'unsigned long'. This fully preserves >

[PATCH] VMCI: Verify PPNs before sending to device

2019-01-11 Thread Jorgen Hansen
and observed that failure was reported. Fixes: 1f166439917b ("VMCI: guest side driver implementation.") Fixes: 06164d2b72aa ("VMCI: queue pairs implementation.") Signed-off-by: Jorgen Hansen Reviewed-by: Adit Ranadive Reviewed-by: Vishnu Dasa --- drivers/misc/vmw_vmci/vm

[PATCH v2] VSOCK: Send reset control packet when socket is partially bound

2018-12-18 Thread Jorgen Hansen
Signed-off-by: Jorgen Hansen --- v1 -> v2: - Changed order of local variables net/vmw_vsock/vmci_transport.c | 67 +++--- 1 file changed, 50 insertions(+), 17 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 0ae

[PATCH] VSOCK: Send reset control packet when socket is partially bound

2018-12-12 Thread Jorgen Hansen
Signed-off-by: Jorgen Hansen --- net/vmw_vsock/vmci_transport.c | 67 +++--- 1 file changed, 50 insertions(+), 17 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 0ae3614..402d84e 100644 --- a/net/vmw_vsock/vmci_transpo

[PATCH] VSOCK: Don't set sk_state to TCP_CLOSE before testing it

2017-11-27 Thread Jorgen Hansen
ons in that function. Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- net/vmw_vsock/vmci_transport.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 56573dc..a7a73ff 100644 --- a/net/vmw_vsock/vmci_tr

[PATCH] VSOCK: Don't set sk_state to TCP_CLOSE before testing it

2017-11-27 Thread Jorgen Hansen
ons in that function. Signed-off-by: Jorgen Hansen --- net/vmw_vsock/vmci_transport.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 56573dc..a7a73ff 100644 --- a/net/vmw_vsock/vmci_transport.c +++ b/net/vmw_vs

[PATCH v2] VSOCK: Don't call vsock_stream_has_data in atomic context

2017-11-24 Thread Jorgen Hansen
noczi <stefa...@redhat.com> Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- net/vmw_vsock/vmci_transport.c | 10 +++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 391775e..56573dc 10

[PATCH v2] VSOCK: Don't call vsock_stream_has_data in atomic context

2017-11-24 Thread Jorgen Hansen
vsock_stream_has_data during detach. Ran mixedTest between guest and host using both guest and host as server. v2: Rebased on top of recent change to sk_state values Reviewed-by: Adit Ranadive Reviewed-by: Aditya Sarwade Reviewed-by: Stefan Hajnoczi Signed-off-by: Jorgen Hansen --- net/vmw_vsock

[PATCH] VSOCK: Don't call vsock_stream_has_data in atomic context

2017-11-21 Thread Jorgen Hansen
vsock_stream_has_data during detach. Ran mixedTest between guest and host using both guest and host as server. Reviewed-by: Adit Ranadive <ad...@vmware.com> Reviewed-by: Aditya Sarwade <asarw...@vmware.com> Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- net/vmw_vsock/vmci_

[PATCH] VSOCK: Don't call vsock_stream_has_data in atomic context

2017-11-21 Thread Jorgen Hansen
vsock_stream_has_data during detach. Ran mixedTest between guest and host using both guest and host as server. Reviewed-by: Adit Ranadive Reviewed-by: Aditya Sarwade Signed-off-by: Jorgen Hansen --- net/vmw_vsock/vmci_transport.c | 10 +++--- 1 files changed, 7 insertions(+), 3 deletions

[PATCH] VMCI: Doorbell create and destroy fixes

2016-10-06 Thread Jorgen Hansen
-by: Adit Ranadive <ad...@vmware.com> Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- drivers/misc/vmw_vmci/vmci_doorbell.c |8 +++- drivers/misc/vmw_vmci/vmci_driver.c |2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/misc/vmw_vmci/vmci_d

[PATCH] VMCI: Doorbell create and destroy fixes

2016-10-06 Thread Jorgen Hansen
-by: Adit Ranadive Signed-off-by: Jorgen Hansen --- drivers/misc/vmw_vmci/vmci_doorbell.c |8 +++- drivers/misc/vmw_vmci/vmci_driver.c |2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/misc/vmw_vmci/vmci_doorbell.c b/drivers/misc/vmw_vmci/vmci_doorbell.c

[PATCH] VSOCK: Don't dec ack backlog twice for rejected connections

2016-09-27 Thread Jorgen Hansen
ed-off-by: Jorgen Hansen <jhan...@vmware.com> Reviewed-by: Adit Ranadive <ad...@vmware.com> Reviewed-by: Aditya Sarwade <asarw...@vmware.com> --- net/vmw_vsock/af_vsock.c |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/vmw_vsock/af_vsock.c b/net/vm

[PATCH] VSOCK: Don't dec ack backlog twice for rejected connections

2016-09-27 Thread Jorgen Hansen
If a pending socket is marked as rejected, we will decrease the sk_ack_backlog twice. So don't decrement it for rejected sockets in vsock_pending_work(). Testing of the rejected socket path was done through code modifications. Reported-by: Stefan Hajnoczi Signed-off-by: Jorgen Hansen Reviewed

[PATCH] VSOCK: Only check error on skb_recv_datagram when skb is NULL

2016-04-19 Thread Jorgen Hansen
If skb_recv_datagram returns an skb, we should ignore the err value returned. Otherwise, datagram receives will return EAGAIN when they have to wait for a datagram. Acked-by: Adit Ranadive <ad...@vmware.com> Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- net/vmw_vsock/vmci

[PATCH] VSOCK: Only check error on skb_recv_datagram when skb is NULL

2016-04-19 Thread Jorgen Hansen
If skb_recv_datagram returns an skb, we should ignore the err value returned. Otherwise, datagram receives will return EAGAIN when they have to wait for a datagram. Acked-by: Adit Ranadive Signed-off-by: Jorgen Hansen --- net/vmw_vsock/vmci_transport.c |7 ++- 1 files changed, 2

[PATCH] VSOCK: Detach QP check should filter out non matching QPs.

2016-04-05 Thread Jorgen Hansen
Zhang <georgezh...@vmware.com> Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- net/vmw_vsock/vmci_transport.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 0a369bb..662bdd2 1006

[PATCH] VSOCK: Detach QP check should filter out non matching QPs.

2016-04-05 Thread Jorgen Hansen
Zhang Signed-off-by: Jorgen Hansen --- net/vmw_vsock/vmci_transport.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 0a369bb..662bdd2 100644 --- a/net/vmw_vsock/vmci_transport.c +++ b/net/vmw_vsock

[PATCH] VMCI: Use 32bit atomics for queue headers on X86_32

2015-11-12 Thread Jorgen Hansen
being overwritten. On MP systems, there is no such correctness issue, but using 32bit atomics avoids the overhead of the locked 64bit operation. All this is safe because the queue size on 32bit systems will never exceed a 32bit value. Reviewed-by: Thomas Hellstrom Signed-off-by: Jorgen Hansen

[PATCH] VMCI: Use 32bit atomics for queue headers on X86_32

2015-11-12 Thread Jorgen Hansen
Signed-off-by: Jorgen Hansen <jhan...@vmware.com> --- drivers/misc/vmw_vmci/vmci_driver.c |2 +- include/linux/vmw_vmci_defs.h | 43 +++--- 2 files changed, 40 insertions(+), 5 deletions(-) diff --git a/drivers/misc/vmw_vmci/vmci_driver.c b/drivers/m

[PATCH] VSOCK: sock_put wasn't safe to call in interrupt context

2015-10-21 Thread Jorgen Hansen
1.0.2.0-k since up until now it appears that this module was sharing version with vsock that is currently at 1.0.1.0-k). Reviewed-by: Aditya Asarwade Reviewed-by: Thomas Hellstrom Signed-off-by: Jorgen Hansen --- net/vmw_vsock/vmci_transport.c | 173 +++- net

[PATCH] VSOCK: sock_put wasn't safe to call in interrupt context

2015-10-21 Thread Jorgen Hansen
1.0.2.0-k since up until now it appears that this module was sharing version with vsock that is currently at 1.0.1.0-k). Reviewed-by: Aditya Asarwade <asarw...@vmware.com> Reviewed-by: Thomas Hellstrom <thellst...@vmware.com> Signed-off-by: Jorgen Hansen <jhan...@vmware.com>