From patchwork Fri Mar 3 22:00:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arseniy Krasnov X-Patchwork-Id: 64112 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp697478wrd; Fri, 3 Mar 2023 16:26:23 -0800 (PST) X-Google-Smtp-Source: AK7set+jzbY4tdVTh92AofOLdXcCHsyGW8dOSTYR7X5VnOIL/tHwTwTAIIq0GkztWCQJVAKm73eR X-Received: by 2002:a17:902:f612:b0:19c:df17:7c99 with SMTP id n18-20020a170902f61200b0019cdf177c99mr3414721plg.33.1677889583598; Fri, 03 Mar 2023 16:26:23 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1677889583; cv=none; d=google.com; s=arc-20160816; b=HUyVmau3ioX3sGCJuC3uCzvZLxPP4PMb2HtUCs1DoouvYsaGWm8EwAG+Rti7NvaZSw aYir5HReO6jI/q67jfc8jI9tE+axoI0ZDpGIWOBh8gcw1r8S4nD+xauBM6bIQ9K2XfOD gv2mEFghVOTuNTs7bmTra+fcSRyKxQnnJp1DMBiV7SRdQexKpX9eo+z5oDaGFOuqsu8c 696s/cieIAki+1AaGPE1vAo2WhqkaFqM3L9DlWRjCtGRbx3hJ6vjuU91VzHKyTBJVguy 6DuygQabQHgGWSuZ32XdByYilfdZr5VFTjvY02jIgAlgv3m2wJNu+g9dNQ1A4LGj9pPx yIRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:subject:from:cc:to :in-reply-to:content-language:user-agent:mime-version:date :message-id:dkim-signature; bh=frCKZPP6m8x+qRpvRirAieIO1yh96VlFuo704GZeY9s=; b=upSHaCJNtLMAneZ9YCvqsAt49ausPXlNxqevVp2xGSSu2PqOfFziKPwWQDu+ygBYUA eCRTDv6dLH87o06MDQ0i4686p3G9EQMHeCJNQ+ecooLZ8O/gi4SMVeCE7GfEEcMKyzBQ HFbKIkJLDS6axrsrbJ/DbBz12EhoFU6KNdW4slIGbhafBl+OAiZI0yid73RHcyMh0egF XeccYTN81LAPc/McnIqyCB+RAv2wIr/ewuWuS6eS+EHbMJgd7iDOSO1Zs3+DKKKapY6N ob1HksNzhfdYvw5B6BAtqyOLwDasD2s2PZoGGHunDHRzWc2mhgHa2tPctssNlYqD5Pva FtDg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=cGtGBFy5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 3-20020a631143000000b00501f64fcef3si3301954pgr.230.2023.03.03.16.26.09; Fri, 03 Mar 2023 16:26:23 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=cGtGBFy5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229901AbjCDADk (ORCPT + 99 others); Fri, 3 Mar 2023 19:03:40 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38880 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229559AbjCDAD1 (ORCPT ); Fri, 3 Mar 2023 19:03:27 -0500 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B6AFCEB5B; Fri, 3 Mar 2023 16:03:24 -0800 (PST) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 9AF045FD07; Sat, 4 Mar 2023 01:03:03 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1677880983; bh=frCKZPP6m8x+qRpvRirAieIO1yh96VlFuo704GZeY9s=; h=Message-ID:Date:MIME-Version:To:From:Subject:Content-Type; b=cGtGBFy5msWICxW4y6khtiH1JVQNSZwvxRsX+IqOM68bj+KdDPgGWyyeDe9IcIz2f 8qhLUdqp6eqfynBXq+2ILY9587Jr53gCbo7pvaAiQfQ50EL3WwZqZ5dkQMQw6lEkQB XGq60vcicDf093jolZfRbKacBMLcjAh7gL3GxVU+tovlAtB+gAExF7B2ORTcifxrDs S3JqI4uendMn9j3GuGXG/KVsf2rwWHviYV7EORGk8e2fVXUX9H882J0DnV6MDIVl0H 2sgBYGvqEeIA00kkCyNW7nQN9TGEMUMV+iwE22/rPU3YP3MzNjYzoGPyLm99E27SOS 03G3HBX9T2QGA== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Sat, 4 Mar 2023 01:03:03 +0300 (MSK) Message-ID: <482863e2-217d-364f-2710-c1cbfd5db4e9@sberdevices.ru> Date: Sat, 4 Mar 2023 01:00:13 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Content-Language: en-US In-Reply-To: To: Stefan Hajnoczi , Stefano Garzarella , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Bobby Eshleman CC: , , , , , , From: Arseniy Krasnov Subject: [RFC PATCH v1 1/3] test/vsock: SOCK_SEQPACKET 'rx_bytes'/'fwd_cnt' bug reproducer X-Originating-IP: [172.16.1.6] X-ClientProxiedBy: S-MS-EXCH02.sberdevices.ru (172.16.1.5) To S-MS-EXCH01.sberdevices.ru (172.16.1.4) X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/03/03 17:09:00 #20912733 X-KSMG-AntiVirus-Status: Clean, skipped X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759394747804410167?= X-GMAIL-MSGID: =?utf-8?q?1759394747804410167?= virtio/vsock: replace virtio_vsock_pkt with sk_buff Signed-off-by: Arseniy Krasnov --- net/vmw_vsock/virtio_transport_common.c | 4 +++ tools/testing/vsock/vsock_test.c | 44 +++++++++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/net/vmw_vsock/virtio_transport_common.c b/net/vmw_vsock/virtio_transport_common.c index a1581c77cf84..77bb1cad8471 100644 --- a/net/vmw_vsock/virtio_transport_common.c +++ b/net/vmw_vsock/virtio_transport_common.c @@ -256,6 +256,10 @@ static void virtio_transport_dec_rx_pkt(struct virtio_vsock_sock *vvs, int len; len = skb_headroom(skb) - sizeof(struct virtio_vsock_hdr) - skb->len; + + if (len < 0) + pr_emerg("Negative len %i\n", len); + vvs->rx_bytes -= len; vvs->fwd_cnt += len; } diff --git a/tools/testing/vsock/vsock_test.c b/tools/testing/vsock/vsock_test.c index 67e9f9df3a8c..2651de2aedc9 100644 --- a/tools/testing/vsock/vsock_test.c +++ b/tools/testing/vsock/vsock_test.c @@ -860,7 +860,51 @@ static void test_stream_poll_rcvlowat_client(const struct test_opts *opts) close(fd); } +static void test_seqpacket_rxbytes_client(const struct test_opts *opts) +{ + unsigned char data[256]; + int fd; + + fd = vsock_seqpacket_connect(opts->peer_cid, 1234); + if (fd < 0) { + perror("connect"); + exit(EXIT_FAILURE); + } + + send(fd, data, sizeof(data), 0); + + control_writeln("CLISENT"); + + close(fd); + + exit(0); +} + +static void test_seqpacket_rxbytes_server(const struct test_opts *opts) +{ + unsigned char data[8]; + int fd; + + fd = vsock_seqpacket_accept(VMADDR_CID_ANY, 1234, NULL); + if (fd < 0) { + perror("accept"); + exit(EXIT_FAILURE); + } + + control_expectln("CLISENT"); + read(fd, data, sizeof(data)); + + close(fd); + + exit(0); +} + static struct test_case test_cases[] = { + { + .name = "SOCK_SEQPACKET negative 'rx_bytes'", + .run_client = test_seqpacket_rxbytes_client, + .run_server = test_seqpacket_rxbytes_server, + }, { .name = "SOCK_STREAM connection reset", .run_client = test_stream_connection_reset, From patchwork Fri Mar 3 22:01:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arseniy Krasnov X-Patchwork-Id: 64113 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp698834wrd; Fri, 3 Mar 2023 16:30:44 -0800 (PST) X-Google-Smtp-Source: AK7set90cxaAciDwWOK+7qlIwrKTZPdlOV/p2Qp6hWH5Ku/ABGJi1CIEH+Fc4LjZ99rKp8dwfG/Z X-Received: by 2002:a17:906:1481:b0:8b1:7ae8:ba6f with SMTP id x1-20020a170906148100b008b17ae8ba6fmr3575752ejc.16.1677889843939; Fri, 03 Mar 2023 16:30:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1677889843; cv=none; d=google.com; s=arc-20160816; b=tq9V6+Tto8+bCgkYRMUSVOFnHbQL6CV6I1uWJx7lrJctQCrpj9ifLUp2z5HbaFwqxi i+F4RhMRYmz4j5yfAkBXnlX7w6o5qzwUmRnXWI05uJXchdhRap4eOGu4WiyP7L+IISaW 1j0HtcXYyN4EMQVBCDdPElRsmA9BbfrHj7PKY52mlIzCZfo8eFwUSPT/fQlgWiorVgx7 XcAW1+xCNPRZeyVbLVt+Z/e75mwTqhg3JkhL5fhvX0AE0x7srDG6khUH8DBcbQwhOQAq KQD3gmzO6wjLF4eQHmfdGsY4mBY6+BjMHgMDSIsZzlWLNRXaWqLDbLNykuOGVgOf5CNd NNBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:subject:from:cc:to :in-reply-to:content-language:user-agent:mime-version:date :message-id:dkim-signature; bh=Icgy8iDTd8OsLA0qcC7gyzpquMde/dsgpaxAtiinzyo=; b=zcGJSpbNDWpeKz4tOGSHHQU+u+oj2YtYg2p0PW4GJghRDJZ8eEwxL6l0m9dzG6hX4b OjGq13IPhoC4uJAYN2UEzOcKAkRwnA0VcXKzElNb7rU4GCt9e9XMd54X3ZVfqA3L41nB LRgc7efpllfaTShmsP0ntbgooipRNlg0fDJ31/nsqu91i8tjPo2iCgDuq+BrGstTXq9N W2y1Gcg3ePLtpSSOW9LXtAYp9CdYr4+iOrhs3HYGOck815apl2105q3JtJZcdf2d3gmf SV82eKHdG6s9kSLeTS7h7cgZ5vOiJxwY+zgMxoLrPPaCZqT4doqzpjf48VpkXXsvQ9rZ w02A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=bBOOyNLj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id wu5-20020a170906eec500b008bedf75469bsi4773182ejb.736.2023.03.03.16.30.20; Fri, 03 Mar 2023 16:30:43 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=bBOOyNLj; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229880AbjCDADd (ORCPT + 99 others); Fri, 3 Mar 2023 19:03:33 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38876 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229445AbjCDAD1 (ORCPT ); Fri, 3 Mar 2023 19:03:27 -0500 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B6B95EC71; Fri, 3 Mar 2023 16:03:24 -0800 (PST) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id C4DB85FD19; Sat, 4 Mar 2023 01:04:24 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1677881064; bh=Icgy8iDTd8OsLA0qcC7gyzpquMde/dsgpaxAtiinzyo=; h=Message-ID:Date:MIME-Version:To:From:Subject:Content-Type; b=bBOOyNLjfdEd0XdCMzLE+adQMP36CslJqEklfr63E9CrBCwE6EPFLDpSGUbxhL+uE 9+PiLk1FV2GDtqjPqDFZhIg9QtlwRlt5ffO5bDFsFU4HM8OlZNEtc/J84NUP7l+Pc4 SpnxpNF9BMGvHtU0nMzUNVS7IhmokX9C192mwi5QnMRRtVn9V28NNMDo/WntG8EZSn 5vFsK6X30TEm+YiDW1Glcdu5N2Rmxg4eKiaiFr0At5F0G1M+khWOoKcVGq6uAJTq40 9UPgdHM50t3WUIWQhZpBxdypTIfTymbanNevw8AHi1nlqx5eFE8f+VEBuIicdNQYyr diI7J7Ow17ieA== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Sat, 4 Mar 2023 01:04:24 +0300 (MSK) Message-ID: <0ec95196-7445-b183-022d-fd3e1e1a7529@sberdevices.ru> Date: Sat, 4 Mar 2023 01:01:34 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Content-Language: en-US In-Reply-To: To: Stefan Hajnoczi , Stefano Garzarella , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Bobby Eshleman CC: , , , , , , From: Arseniy Krasnov Subject: [RFC PATCH v1 2/3] virtio/vsock: fix 'rx_bytes'/'fwd_cnt' calculation X-Originating-IP: [172.16.1.6] X-ClientProxiedBy: S-MS-EXCH01.sberdevices.ru (172.16.1.4) To S-MS-EXCH01.sberdevices.ru (172.16.1.4) X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/03/03 17:09:00 #20912733 X-KSMG-AntiVirus-Status: Clean, skipped X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759395021082843061?= X-GMAIL-MSGID: =?utf-8?q?1759395021082843061?= Substraction of 'skb->len' is redundant here: 'skb_headroom()' is delta between 'data' and 'head' pointers, e.g. it is number of bytes returned to user (of course accounting size of header). 'skb->len' is number of bytes rest in buffer. Fixes: 71dc9ec9ac7d ("virtio/vsock: replace virtio_vsock_pkt with sk_buff") Signed-off-by: Arseniy Krasnov --- net/vmw_vsock/virtio_transport_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/vmw_vsock/virtio_transport_common.c b/net/vmw_vsock/virtio_transport_common.c index 77bb1cad8471..d80075e1db42 100644 --- a/net/vmw_vsock/virtio_transport_common.c +++ b/net/vmw_vsock/virtio_transport_common.c @@ -255,7 +255,7 @@ static void virtio_transport_dec_rx_pkt(struct virtio_vsock_sock *vvs, { int len; - len = skb_headroom(skb) - sizeof(struct virtio_vsock_hdr) - skb->len; + len = skb_headroom(skb) - sizeof(struct virtio_vsock_hdr); if (len < 0) pr_emerg("Negative len %i\n", len); From patchwork Fri Mar 3 22:02:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arseniy Krasnov X-Patchwork-Id: 64116 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:5915:0:0:0:0:0 with SMTP id v21csp706166wrd; Fri, 3 Mar 2023 16:55:53 -0800 (PST) X-Google-Smtp-Source: AK7set8zsPcG+6b4x4YxwxXPZtFwJMR5diFeOp9tzfWmkutXJZzK2BtFQnSZI9whRSwzMBisSLsq X-Received: by 2002:a50:ee92:0:b0:4c2:96d0:c0cb with SMTP id f18-20020a50ee92000000b004c296d0c0cbmr3963324edr.23.1677891352955; Fri, 03 Mar 2023 16:55:52 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1677891352; cv=none; d=google.com; s=arc-20160816; b=rflrkzlyXJSf14veZHuydB40KlAkU0n9rsSnMBwPmXPMiPYchGPE7rHhSmlzyJcs/V X+oNf9LaCS3dVWS0OUL7C1IkZ3v6yLGg4NHFyiCXX1pIwQIJtaN8PvPhshMzZ1XXXtWm hsfnLoZKmdDHWlGcCvg1DJEcQNCQhDC87pObHkIJZ4DeLXRl/NWjAzD6J6wr5DFDJxHW t4SKbgfszEGG3d9rlNlGdDCQDLBrXrp0izuN+GmJDB5BWZo9p+fGnKqnlaJqAsVMu86W CNa9pUqOTfRIUKqiETj17XAwNKS0IqCkd4vl7NFqBpxNqm+yDW22NXdrbW2JgoyE0J+7 6mRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:subject:from:cc:to :in-reply-to:content-language:user-agent:mime-version:date :message-id:dkim-signature; bh=e3N0YJ0uSXUIygh8I5oRxE8zPq5uyuoYZQhh7v2tXp4=; b=a1Sg31swIuXjwytMwecuCzdCaA21dTcJDz+9vdtbReavY5mRQa4LlTCmWT5dfP245u Cj2rYAh/cCDQnkdnMu+gm62fCv0SbTm3BrYX7GH/AycqasVQxgWKLf9QjaVZRnPsFwS/ +NwaUVHG69FlNiZq7Ix51FAJpIht8w0ACdHGSIcTowDSvQyV0//vS/hEi/UthKXLo9kq MO9mbido7I3m97qWGh3u2eOi5Hh0jVqpIPYL0nIL92TCHpZ/YJjs/NyH8CjO3uoPSE2k +o0QAl8D+6a/7+L6mZYXYJZptVZ7NQHbsL0587hwE+sfahzxMpUjTvbRKg74GVpJ4SDM UP3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=bEKaIMcF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nc8-20020a1709071c0800b008ddf3c18310si5117564ejc.757.2023.03.03.16.55.29; Fri, 03 Mar 2023 16:55:52 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@sberdevices.ru header.s=mail header.b=bEKaIMcF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=sberdevices.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229750AbjCDAD3 (ORCPT + 99 others); Fri, 3 Mar 2023 19:03:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38874 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229538AbjCDAD1 (ORCPT ); Fri, 3 Mar 2023 19:03:27 -0500 Received: from mx.sberdevices.ru (mx.sberdevices.ru [45.89.227.171]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B655FEB50; Fri, 3 Mar 2023 16:03:24 -0800 (PST) Received: from s-lin-edge02.sberdevices.ru (localhost [127.0.0.1]) by mx.sberdevices.ru (Postfix) with ESMTP id 64FE45FD2E; Sat, 4 Mar 2023 01:05:19 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sberdevices.ru; s=mail; t=1677881119; bh=e3N0YJ0uSXUIygh8I5oRxE8zPq5uyuoYZQhh7v2tXp4=; h=Message-ID:Date:MIME-Version:To:From:Subject:Content-Type; b=bEKaIMcFKwNSwUf9ShSc9fH+vHOfHn84oXfVs+JOqa0cEqfp4DbzYMC15A03tDHh7 3v8S32KaH1beaxPMyp9BAsCkFOIDPQE3uYbdSi1f91YijkE0i12Sb4P9g/0juaDv7p t+PPLZFt25ogbsBqHiFLgSXQxtnWJyQMWGEr+zGDMnNV0XRoOatBiaFk5NdmwD6Zc+ ZofIZ1tbuPzNdzvdiyYZrj4fsAx+DBzK+696tpxVcqEwjuqL7JZtmtlJya0RUUOKY8 xnr2wdKaseE7+hMynk9xbG8GfX//9I9aFR0SjPKXfDZOEZMjTk7Y6MhRKdrJJFB4n5 4LTocHToMBjEw== Received: from S-MS-EXCH01.sberdevices.ru (S-MS-EXCH01.sberdevices.ru [172.16.1.4]) by mx.sberdevices.ru (Postfix) with ESMTP; Sat, 4 Mar 2023 01:05:19 +0300 (MSK) Message-ID: Date: Sat, 4 Mar 2023 01:02:29 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Content-Language: en-US In-Reply-To: To: Stefan Hajnoczi , Stefano Garzarella , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Bobby Eshleman CC: , , , , , , From: Arseniy Krasnov Subject: [RFC PATCH v1 3/3] virtio/vsock: remove all data from sk_buff X-Originating-IP: [172.16.1.6] X-ClientProxiedBy: S-MS-EXCH02.sberdevices.ru (172.16.1.5) To S-MS-EXCH01.sberdevices.ru (172.16.1.4) X-KSMG-Rule-ID: 4 X-KSMG-Message-Action: clean X-KSMG-AntiSpam-Status: not scanned, disabled by settings X-KSMG-AntiSpam-Interceptor-Info: not scanned X-KSMG-AntiPhishing: not scanned, disabled by settings X-KSMG-AntiVirus: Kaspersky Secure Mail Gateway, version 1.1.2.30, bases: 2023/03/03 17:09:00 #20912733 X-KSMG-AntiVirus-Status: Clean, skipped X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1759396602921647472?= X-GMAIL-MSGID: =?utf-8?q?1759396602921647472?= In case of SOCK_SEQPACKET all sk_buffs are used once - after read some data from it, it will be removed, so user will never read rest of the data. Thus we need to update credit parameters of the socket like whole sk_buff is read - so call 'skb_pull()' for the whole buffer. Fixes: 71dc9ec9ac7d ("virtio/vsock: replace virtio_vsock_pkt with sk_buff") Signed-off-by: Arseniy Krasnov --- net/vmw_vsock/virtio_transport_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/vmw_vsock/virtio_transport_common.c b/net/vmw_vsock/virtio_transport_common.c index d80075e1db42..bbcf331b6ad6 100644 --- a/net/vmw_vsock/virtio_transport_common.c +++ b/net/vmw_vsock/virtio_transport_common.c @@ -470,7 +470,7 @@ static int virtio_transport_seqpacket_do_dequeue(struct vsock_sock *vsk, dequeued_len = err; } else { user_buf_len -= bytes_to_copy; - skb_pull(skb, bytes_to_copy); + skb_pull(skb, skb->len); } spin_lock_bh(&vvs->rx_lock);