Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/1658319/?format=api
{ "id": 1658319, "url": "http://patchwork.ozlabs.org/api/patches/1658319/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-um/patch/20220720030436.79520-41-xuanzhuo@linux.alibaba.com/", "project": { "id": 60, "url": "http://patchwork.ozlabs.org/api/projects/60/?format=api", "name": "User-mode Linux Development", "link_name": "linux-um", "list_id": "linux-um.lists.infradead.org", "list_email": "linux-um@lists.infradead.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20220720030436.79520-41-xuanzhuo@linux.alibaba.com>", "list_archive_url": null, "date": "2022-07-20T03:04:36", "name": "[v12,40/40] virtio_net: support set_ringparam", "commit_ref": null, "pull_url": null, "state": "not-applicable", "archived": false, "hash": "90f29c2dfe9c97ab00bd18b190cb1d230071c65a", "submitter": { "id": 80519, "url": "http://patchwork.ozlabs.org/api/people/80519/?format=api", "name": "Xuan Zhuo", "email": "xuanzhuo@linux.alibaba.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-um/patch/20220720030436.79520-41-xuanzhuo@linux.alibaba.com/mbox/", "series": [ { "id": 310331, "url": "http://patchwork.ozlabs.org/api/series/310331/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-um/list/?series=310331", "date": "2022-07-20T03:03:59", "name": "virtio pci support VIRTIO_F_RING_RESET", "version": 12, "mbox": "http://patchwork.ozlabs.org/series/310331/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/1658319/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/1658319/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linux-um-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@bilbo.ozlabs.org", "Authentication-Results": [ "bilbo.ozlabs.org;\n\tdkim=pass (2048-bit key;\n secure) header.d=lists.infradead.org header.i=@lists.infradead.org\n header.a=rsa-sha256 header.s=bombadil.20210309 header.b=TckRIK08;\n\tdkim-atps=neutral", "ozlabs.org;\n spf=none (no SPF record) smtp.mailfrom=lists.infradead.org\n (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org;\n envelope-from=linux-um-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org;\n receiver=<UNKNOWN>)" ], "Received": [ "from bombadil.infradead.org (bombadil.infradead.org\n [IPv6:2607:7c80:54:3::133])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby bilbo.ozlabs.org (Postfix) with ESMTPS id 4LngZv4SYJz9s2R\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 20 Jul 2022 13:06:31 +1000 (AEST)", "from localhost ([::1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux))\n\tid 1oE02W-00HFtu-Da; Wed, 20 Jul 2022 03:06:20 +0000", "from out30-130.freemail.mail.aliyun.com ([115.124.30.130])\n\tby bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux))\n\tid 1oE02T-00HFnN-SS\n\tfor linux-um@lists.infradead.org; Wed, 20 Jul 2022 03:06:19 +0000", "from localhost(mailfrom:xuanzhuo@linux.alibaba.com\n fp:SMTPD_---0VJux9Mt_1658286371)\n by smtp.aliyun-inc.com;\n Wed, 20 Jul 2022 11:06:13 +0800" ], "DKIM-Signature": "v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20210309; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:\n\tMessage-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=mRbuhDeYrV7D+yLRhydhW2VJ2kdppBntzoFkd2vQj4o=; b=TckRIK08N+aJSH\n\t60j6JTzM2EN5aAKxjNN+i2/j//OycaB2h/63+zNn4NyGqi/th3ofViIiVPeYq2uaoOxFjkBBy5ltz\n\tegOSZGmeJRJntXXEFWnI/Bxr1mXmDNBW1DBaCU5R5+hXrUAlQMbbCQzSU4u0LI1H2bHTcfMxFQeNp\n\tp/zMjgMOWt4p19vd9t8v0pu/E8hOm2ZJd9iuGUn/RUnh/izrkniVVEzuzu4Q6rc1hLDby4SSmwWGJ\n\t34IGtFnE/7/3fVGA8ooZyrCg4pzFuXkp65ckxCdQuROAM39AxIPzVh6z4BiXMFNcPPUmcFSEBRovh\n\tfPezG9tS+SX1ZrIWoQZg==;", "X-Alimail-AntiSpam": "\n AC=PASS;BC=-1|-1;BR=01201311R221e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046049;MF=xuanzhuo@linux.alibaba.com;NM=1;PH=DS;RN=37;SR=0;TI=SMTPD_---0VJux9Mt_1658286371;", "From": "Xuan Zhuo <xuanzhuo@linux.alibaba.com>", "To": "virtualization@lists.linux-foundation.org", "Cc": "Richard Weinberger <richard@nod.at>,\n\tAnton Ivanov <anton.ivanov@cambridgegreys.com>,\n\tJohannes Berg <johannes@sipsolutions.net>,\n\t\"Michael S. Tsirkin\" <mst@redhat.com>,\n\tJason Wang <jasowang@redhat.com>,\n\t\"David S. Miller\" <davem@davemloft.net>,\n\tEric Dumazet <edumazet@google.com>,\n\tJakub Kicinski <kuba@kernel.org>,\n\tPaolo Abeni <pabeni@redhat.com>,\n\tHans de Goede <hdegoede@redhat.com>,\n\tMark Gross <markgross@kernel.org>,\n\tVadim Pasternak <vadimp@nvidia.com>,\n\tBjorn Andersson <bjorn.andersson@linaro.org>,\n\tMathieu Poirier <mathieu.poirier@linaro.org>,\n\tCornelia Huck <cohuck@redhat.com>,\n\tHalil Pasic <pasic@linux.ibm.com>,\n\tEric Farman <farman@linux.ibm.com>,\n\tHeiko Carstens <hca@linux.ibm.com>,\n\tVasily Gorbik <gor@linux.ibm.com>,\n\tAlexander Gordeev <agordeev@linux.ibm.com>,\n\tChristian Borntraeger <borntraeger@linux.ibm.com>,\n\tSven Schnelle <svens@linux.ibm.com>,\n\tAlexei Starovoitov <ast@kernel.org>,\n\tDaniel Borkmann <daniel@iogearbox.net>,\n\tJesper Dangaard Brouer <hawk@kernel.org>,\n\tJohn Fastabend <john.fastabend@gmail.com>,\n\tXuan Zhuo <xuanzhuo@linux.alibaba.com>,\n\tVincent Whitchurch <vincent.whitchurch@axis.com>,\n\tlinux-um@lists.infradead.org,\n\tnetdev@vger.kernel.org,\n\tplatform-driver-x86@vger.kernel.org,\n\tlinux-remoteproc@vger.kernel.org,\n\tlinux-s390@vger.kernel.org,\n\tkvm@vger.kernel.org,\n\tbpf@vger.kernel.org,\n\tkangjie.xu@linux.alibaba.com", "Subject": "[PATCH v12 40/40] virtio_net: support set_ringparam", "Date": "Wed, 20 Jul 2022 11:04:36 +0800", "Message-Id": "<20220720030436.79520-41-xuanzhuo@linux.alibaba.com>", "X-Mailer": "git-send-email 2.31.0", "In-Reply-To": "<20220720030436.79520-1-xuanzhuo@linux.alibaba.com>", "References": "<20220720030436.79520-1-xuanzhuo@linux.alibaba.com>", "MIME-Version": "1.0", "X-Git-Hash": "366032b2ffac", "X-CRM114-Version": "20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ", "X-CRM114-CacheID": "sfid-20220719_200618_117617_21EEAE7B ", "X-CRM114-Status": "GOOD ( 11.64 )", "X-Spam-Score": "-8.0 (--------)", "X-Spam-Report": "Spam detection software,\n running on the system \"bombadil.infradead.org\",\n has NOT identified this incoming email as spam. The original\n message has been attached to this so you can view it or label\n similar future email. If you have any questions, see\n the administrator of that system for details.\n Content preview: Support set_ringparam based on virtio queue reset. Users\n can\n use ethtool -G eth0 <ring_num> to modify the ring size of virtio-net.\n Signed-off-by:\n Xuan Zhuo <xuanzhuo@linux.alibaba.com> Acked-by: Jason Wang\n <jasowang@redhat.com>\n --- drivers/net/virtio_net.c | 48 ++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 48 insertion [...]\n Content analysis details: (-8.0 points, 5.0 required)\n pts rule name description\n ---- ----------------------\n --------------------------------------------------\n -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/,\n no trust\n [115.124.30.130 listed in list.dnswl.org]\n -0.0 SPF_PASS SPF: sender matches SPF record\n 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record\n -7.5 USER_IN_DEF_SPF_WL From: address is in the default SPF\n white-list\n -0.5 ENV_AND_HDR_SPF_MATCH Env and Hdr From used in default SPF WL\n Match\n 0.0 UNPARSEABLE_RELAY Informational: message has unparseable relay\n lines", "X-BeenThere": "linux-um@lists.infradead.org", "X-Mailman-Version": "2.1.34", "Precedence": "list", "List-Id": "<linux-um.lists.infradead.org>", "List-Unsubscribe": "<http://lists.infradead.org/mailman/options/linux-um>,\n <mailto:linux-um-request@lists.infradead.org?subject=unsubscribe>", "List-Archive": "<http://lists.infradead.org/pipermail/linux-um/>", "List-Post": "<mailto:linux-um@lists.infradead.org>", "List-Help": "<mailto:linux-um-request@lists.infradead.org?subject=help>", "List-Subscribe": "<http://lists.infradead.org/mailman/listinfo/linux-um>,\n <mailto:linux-um-request@lists.infradead.org?subject=subscribe>", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Sender": "\"linux-um\" <linux-um-bounces@lists.infradead.org>", "Errors-To": "linux-um-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org" }, "content": "Support set_ringparam based on virtio queue reset.\n\nUsers can use ethtool -G eth0 <ring_num> to modify the ring size of\nvirtio-net.\n\nSigned-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>\nAcked-by: Jason Wang <jasowang@redhat.com>\n---\n drivers/net/virtio_net.c | 48 ++++++++++++++++++++++++++++++++++++++++\n 1 file changed, 48 insertions(+)", "diff": "diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c\nindex d1e6940b46d8..59fc48c60403 100644\n--- a/drivers/net/virtio_net.c\n+++ b/drivers/net/virtio_net.c\n@@ -2329,6 +2329,53 @@ static void virtnet_get_ringparam(struct net_device *dev,\n \tring->tx_pending = virtqueue_get_vring_size(vi->sq[0].vq);\n }\n \n+static int virtnet_set_ringparam(struct net_device *dev,\n+\t\t\t\t struct ethtool_ringparam *ring,\n+\t\t\t\t struct kernel_ethtool_ringparam *kernel_ring,\n+\t\t\t\t struct netlink_ext_ack *extack)\n+{\n+\tstruct virtnet_info *vi = netdev_priv(dev);\n+\tu32 rx_pending, tx_pending;\n+\tstruct receive_queue *rq;\n+\tstruct send_queue *sq;\n+\tint i, err;\n+\n+\tif (ring->rx_mini_pending || ring->rx_jumbo_pending)\n+\t\treturn -EINVAL;\n+\n+\trx_pending = virtqueue_get_vring_size(vi->rq[0].vq);\n+\ttx_pending = virtqueue_get_vring_size(vi->sq[0].vq);\n+\n+\tif (ring->rx_pending == rx_pending &&\n+\t ring->tx_pending == tx_pending)\n+\t\treturn 0;\n+\n+\tif (ring->rx_pending > vi->rq[0].vq->num_max)\n+\t\treturn -EINVAL;\n+\n+\tif (ring->tx_pending > vi->sq[0].vq->num_max)\n+\t\treturn -EINVAL;\n+\n+\tfor (i = 0; i < vi->max_queue_pairs; i++) {\n+\t\trq = vi->rq + i;\n+\t\tsq = vi->sq + i;\n+\n+\t\tif (ring->tx_pending != tx_pending) {\n+\t\t\terr = virtnet_tx_resize(vi, sq, ring->tx_pending);\n+\t\t\tif (err)\n+\t\t\t\treturn err;\n+\t\t}\n+\n+\t\tif (ring->rx_pending != rx_pending) {\n+\t\t\terr = virtnet_rx_resize(vi, rq, ring->rx_pending);\n+\t\t\tif (err)\n+\t\t\t\treturn err;\n+\t\t}\n+\t}\n+\n+\treturn 0;\n+}\n+\n static bool virtnet_commit_rss_command(struct virtnet_info *vi)\n {\n \tstruct net_device *dev = vi->dev;\n@@ -2816,6 +2863,7 @@ static const struct ethtool_ops virtnet_ethtool_ops = {\n \t.get_drvinfo = virtnet_get_drvinfo,\n \t.get_link = ethtool_op_get_link,\n \t.get_ringparam = virtnet_get_ringparam,\n+\t.set_ringparam = virtnet_set_ringparam,\n \t.get_strings = virtnet_get_strings,\n \t.get_sset_count = virtnet_get_sset_count,\n \t.get_ethtool_stats = virtnet_get_ethtool_stats,\n", "prefixes": [ "v12", "40/40" ] }