https://github.com/torvalds/linux
Revision 8daaf39f7f6ef53a11817f6a11ec104016c3545f authored by Arseniy Krasnov on 14 March 2023, 11:08:20 UTC, committed by David S. Miller on 16 March 2023, 17:28:23 UTC
This returns behaviour of SOCK_STREAM read as before skbuff usage. When
copying to user fails current skbuff won't be dropped, but returned to
sockets's queue. Technically instead of 'skb_dequeue()', 'skb_peek()' is
called and when skbuff becomes empty, it is removed from queue by
'__skb_unlink()'.

Fixes: 71dc9ec9ac7d ("virtio/vsock: replace virtio_vsock_pkt with sk_buff")
Signed-off-by: Arseniy Krasnov <AVKrasnov@sberdevices.ru>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Acked-by: Bobby Eshleman <bobby.eshleman@bytedance.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 6825e6b
History
Tip revision: 8daaf39f7f6ef53a11817f6a11ec104016c3545f authored by Arseniy Krasnov on 14 March 2023, 11:08:20 UTC
virtio/vsock: don't drop skbuff on copy failure
Tip revision: 8daaf39
File Mode Size
.gitignore -rw-r--r-- 58 bytes
Kconfig -rw-r--r-- 64.8 KB
Makefile -rw-r--r-- 1.8 KB
build-version -rwxr-xr-x 177 bytes
calibrate.c -rw-r--r-- 8.6 KB
do_mounts.c -rw-r--r-- 15.5 KB
do_mounts.h -rw-r--r-- 908 bytes
do_mounts_initrd.c -rw-r--r-- 3.7 KB
do_mounts_rd.c -rw-r--r-- 7.7 KB
init_task.c -rw-r--r-- 6.1 KB
initramfs.c -rw-r--r-- 17.2 KB
main.c -rw-r--r-- 40.2 KB
noinitramfs.c -rw-r--r-- 862 bytes
version-timestamp.c -rw-r--r-- 762 bytes
version.c -rw-r--r-- 1.3 KB

back to top