On Sun, Dec 04, 2022 at 07:19:20PM +0000, Arseniy Krasnov wrote:
From: Bobby Eshleman <[email protected]>

This removes behaviour, where error code returned from any
transport was always switched to ENOMEM.

I would add here the example you described in the cover letter with EMSGSIZE, so the problem is better explained.


Signed-off-by: Bobby Eshleman <[email protected]>
Signed-off-by: Arseniy Krasnov <[email protected]>
---
net/vmw_vsock/af_vsock.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c
index 884eca7f6743..61ddab664c33 100644
--- a/net/vmw_vsock/af_vsock.c
+++ b/net/vmw_vsock/af_vsock.c
@@ -1862,8 +1862,9 @@ static int vsock_connectible_sendmsg(struct socket *sock, 
struct msghdr *msg,
                        written = transport->stream_enqueue(vsk,
                                        msg, len - total_written);
                }
+
                if (written < 0) {
-                       err = -ENOMEM;
+                       err = written;
                        goto out_err;
                }

--
2.25.1

_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to