All of lore.kernel.org
 help / color / mirror / Atom feed
From: Parav Pandit <parav@nvidia.com>
To: <virtio-comment@lists.linux.dev>, <mst@redhat.com>,
	<cohuck@redhat.com>, <mvaralar@redhat.com>
Cc: <shahafs@nvidia.com>, Parav Pandit <parav@nvidia.com>
Subject: [PATCH 2/4] edit: add changelog for 1.4
Date: Mon, 27 Oct 2025 19:47:54 +0200	[thread overview]
Message-ID: <20251027174756.56284-3-parav@nvidia.com> (raw)
In-Reply-To: <20251027174756.56284-1-parav@nvidia.com>

Add the changelog for 1.4.

Signed-off-by: Parav Pandit <parav@nvidia.com>
---
 cl-os.tex | 2092 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 2092 insertions(+)

diff --git a/cl-os.tex b/cl-os.tex
index e69de29..c5100f7 100644
--- a/cl-os.tex
+++ b/cl-os.tex
@@ -0,0 +1,2092 @@
+3abace8 & 27 Sep 2023 & Cornelia Huck & { remove enumerate usage that makes the tool unhappy
+
+
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+db68dc0 & 28 Sep 2023 & Cornelia Huck & { Revert "remove enumerate usage that makes the tool unhappy"
+
+
+This reverts commit 3abace87db23ddceaf9688a405dd3fd540023977.
+
+We can fix it properly instead.
+
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+c7bef01 & 28 Sep 2023 & Michael S. Tsirkin & { html: add missing enumitem package
+
+
+makediffhtml.sh currently fails with:
+
+! Missing number, treated as zero.
+<to be read again>
+                   \textbackslash c@*
+l.25850 \textbackslash begin\{enumerate\}[label=\textbackslash alph*
+                                      .]
+?
+! Emergency stop.
+<to be read again>
+                   \textbackslash c@*
+l.25850 \textbackslash begin\{enumerate\}[label=\textbackslash alph*
+                                      .]
+
+Some web searches turned up suggestions to use enumitem and in fact,
+virtio.tex already does this - but virtio-html.tex doesn't.
+
+Adding \textbackslash usepackage\{enumitem\} in virtio-html.tex too fixes the issue.
+
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+3fdaa17 & 30 Oct 2023 & jeshwank & { virtio-tee: Reserve device ID 46 for TEE device
+
+
+In a virtual environment, an application running in guest VM may want
+to delegate security sensitive tasks to a Trusted Application (TA)
+running within a Trusted Execution Environment (TEE). A TEE is a trusted
+OS running in some secure environment, for example, TrustZone on ARM
+CPUs, or a separate secure co-processor etc.
+
+A virtual TEE device emulates a TEE within a guest VM. Such a virtual
+TEE device supports multiple operations such as:
+
+VIRTIO_TEE_CMD_OPEN_DEVICE – Open a communication channel with virtio
+                             TEE device.
+VIRTIO_TEE_CMD_CLOSE_DEVICE – Close communication channel with virtio
+                              TEE device.
+VIRTIO_TEE_CMD_GET_VERSION – Get version of virtio TEE.
+VIRTIO_TEE_CMD_OPEN_SESSION – Open a session to communicate with
+                              trusted application running in TEE.
+VIRTIO_TEE_CMD_CLOSE_SESSION – Close a session to end communication
+                               with trusted application running in TEE.
+VIRTIO_TEE_CMD_INVOKE_FUNC – Invoke a command or function in trusted
+                             application running in TEE.
+VIRTIO_TEE_CMD_CANCEL_REQ – Cancel an ongoing command within TEE.
+VIRTIO_TEE_CMD_REGISTER_MEM - Register shared memory with TEE.
+VIRTIO_TEE_CMD_UNREGISTER_MEM - Unregister shared memory from TEE.
+
+We would like to reserve device ID 46 for Virtio-TEE device.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/175}
+
+Signed-off-by: Jeshwanth Kumar <jeshwanthkumar.nk@amd.com>
+Reviewed-by: Rijo Thomas <Rijo-john.Thomas@amd.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Sumit Garg <sumit.garg@linaro.org>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+42f3899 & 30 Oct 2023 & Xuan Zhuo & { virtio-net: support device stats
+
+
+This patch allows the driver to obtain some statistics from the device.
+
+In the device implementation, we can count a lot of such information,
+which can be used for debugging and judging the running status of the
+device. We hope to directly display it to the user through ethtool.
+
+To get stats atomically, try to get stats for all/multiple queue pairs
+in one command.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/180}
+
+Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Suggested-by: Michael S. Tsirkin <mst@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+925b42e & 30 Oct 2023 & Parav Pandit & { conformance: Add missing virtqueue reset conformance references
+
+
+Add the missing references to the virtqueue reset related conformance
+requirements.
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+[CH: pushed as an editorial change]
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+68d5cc4 & 30 Oct 2023 & Parav Pandit & { packed-ring: Change host,guest to device,driver
+
+
+Rest of the packed ring description already uses the device
+and driver terminology. Change the introductory line as well from
+host and guest to device and driver respectively.
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Michael S. Tsirkin <mst@redhat.com>
+[CH: pushed as an editorial update]
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+c8249d7 & 30 Oct 2023 & Cornelia Huck & { editorial: allow for longer device id table
+
+
+Move to "longtable" to allow the table to span multiple pages (it
+became too long to fit on one page with the latest addition.)
+
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+eb16e33 & 03 Nov 2023 & Cornelia Huck & { editorial: various fixes for 1.3-csd01
+
+
+
+- Set approval date to 06 October 2023. (applies to front page subtitle,
+citation format, PDF page footers)
+
+- Set filenames and URIs to show csd01 instead of wd01 (also PDF footers)
+
+- Set "Previous stage" to "N/A" (don't list a different numbered Version)
+
+- In "Related work", change (3x) text - "Latest version" to "Latest stage"
+
+- In "Notices", set the copyright year to 2023.
+
+
+- In the first line of Appendix D. Revision History, replace "the previous
+version" with "Version 1.2"
+
+
+- In Section 1.3, apply the current IETF-recommended text:
+"The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
+"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
+"OPTIONAL" in this document are to be interpreted as described in BCP 14
+[[RFC2119](\#link)] and [[RFC8174](\#link)] when, and only when, they appear
+in all capitals, as shown here."
+
+- Also, add the RFC 8174 reference:
+[RFC8174]
+Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP
+14, RFC 8174, DOI 10.17487/RFC8174, May 2017,
+\url{https://www.rfc-editor.org/info/rfc8174.}
+
+Reported-by: Paul Knight <paul.knight@oasis-open.org>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+43a948e & 03 Nov 2023 & Cornelia Huck & { editorial: update "Computer Language Definitions" URL
+
+
+Split out from the other fixes for 1.3-csd01 so that we can fixup the
+diff.
+
+
+- In "Status", (fourth paragraph) change the hyperlink under (Computer
+Language Definitions) to be "
+\url{https://www.oasis-open.org/policies-guidelines/tc-process-2017-05-26/\#wpComponentsCompLang}
+"
+
+Reported-by: Paul Knight <paul.knight@oasis-open.org>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+5fc35a7 & 03 Nov 2023 & Cornelia Huck & { makediff: update list of cherry-picks
+
+
+We don't need to apply the old commits anymore, but we have to apply
+the URL update to work around a not-yet-debugged latexdiff problem.
+
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+4cb03b1 & 17 Nov 2023 & Parav Pandit & { description: Avoid splitting the word virtqueue
+
+
+Don't split the word virtqueue.
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+[CH: applied as editorial]
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+878a5e7 & 13 Feb 2024 & Shujun Xue & { Define the DEVICE ID of Virtio Cpu balloon device as 47.
+
+
+The Virtio CPU balloon device is a primitive device for managing guest
+CPU capacity: the device asks for certain CPU cores to be online,
+offline or throttled, and the driver performs the requested operation.
+This allows the guest to adapt to changes in allowance of underlying
+CPU capacity.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/187}
+
+Signed-off-by: Shujun Xue <shujunxue@google.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+07bb9f7 & 13 Feb 2024 & Harald Mommer & { virtio-can: Device specification.
+
+
+virtio-can is a virtual CAN device. It provides a way to give access to
+a CAN controller from a driver guest. The device is aimed to be used by
+driver guests running a HLOS as well as by driver guests running a
+typical RTOS as used in controller environments.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/186}
+
+Signed-off-by: Harald Mommer <Harald.Mommer@opensynergy.com>
+Signed-off-by: Mikhail Golubev-Ciuchea <Mikhail.Golubev-Ciuchea@opensynergy.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+193daee & 13 Feb 2024 & Heng Qi & { virtio-net: support the RSS context
+
+
+Commit 84a1d9c48200 ("net: ethtool: extend RXNFC API to support RSS spreading of
+filter matches") adds support for RSS context as a destination for receive flow filters
+(see WIP work: \url{https://lists.oasis-open.org/archives/virtio-comment/202308/msg00194.html).}
+
+An RSS context consists of configurable parameters specified by receive-side scaling.
+
+Some use cases:
+1. When users want some data flows to be steered to specific multiple rxqs, they can set
+   receive flow filter rules for these data flows to an RSS context with desired rxqs.
+2. Traffic isolation. Used when users want the traffic of certain applications to occupy
+   several queues without being distubed.
+
+How to set/configure an RSS context:
+Assuming no RSS context has been created before.
+1. ethtool -X eth0 context new start 5 equal 8
+
+This command creates an RSS context with an id=1 for eth0, and fills in the indirection
+table with rxq indexes 5-8 circularly. The hash key and hash types reuse the default
+RSS configuration.
+
+Then, we can use 'ethtool -x eth0 context 1' to query the above configuration.
+
+2. ethtool -X eth0 context new start 6 equal 7 \textbackslash 
+   hkey 8f:bf:dd:11:23:58:d2:8a:00:31:d0:32:a3:b5:1f:\textbackslash 
+   1f:e4:d1:fe:47:7f:64:42:fd:d0:61:16:b8:b0:f9:71:e8:2d:36:7f:18:dd:4d:c8:f3
+
+This command creates an RSS context with an id=2 for eth0, and fills in the indirection
+table with rxq indexes 6-7 circularly. The hash key is 8f:bf:dd:11:23:58:d2:8a:00:31:d0\textbackslash 
+:32:a3:b5:1f:1f:e4:d1:fe:47:7f:64:42:fd:d0:61:16:b8:b0:f9:71:e8:2d:36:7f:18:dd:4d:c8:f3.
+Hash types reuse the default RSS configuration.
+
+3. ethtool -N eth0 rx-flow-hash tcp4 sdfn context 1
+
+This command specifies the hash types for the RSS context whose id=1 on eth0.
+Now this RSS context only has the hash key to reuse the default RSS configuration.
+
+4. ethtool -N eth0 flow-type udp4 src-ip 1.1.1.1 context 1
+
+This command configures a receive flow filter rule for eth0, and the data flow matching
+this rule will continue to select the final rxq according to the RSS context configuration
+with id=1.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/178}
+
+Signed-off-by: Heng Qi <hengqi@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Acked-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+bb11bf9 & 13 Feb 2024 & Haixu Cui & { content: Rename SPI master to SPI controller
+
+
+SPI master is an outdated term and should use SPI controller.
+
+Signed-off-by: Haixu Cui <quic_haixcui@quicinc.com>
+Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+a402acc & 13 Feb 2024 & Haixu Cui & { virtio-spi: add the device specification
+
+
+The Virtio SPI (Serial Peripheral Interface) device is a virtual
+SPI controller that allows the driver to operate and use the SPI
+controller under the control of the host.
+
+This patch adds the specification for virtio-spi.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/189}
+
+Signed-off-by: Haixu Cui <quic_haixcui@quicinc.com>
+Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+37c6a40 & 16 Feb 2024 & Pape, Andreas (ADITG/ESS3) & { sound: add sampling rates 12000Hz and 24000Hz
+
+
+24kHz is used for 'super wideband' voice transmission 12kHz is added 'for completeness'
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/184}
+
+Signed-off-by: Andreas Pape <apape@de.adit-jv.com>
+Reviewed-by: Anton Yakovlev <anton.yakovlev@opensynergy.com>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+
+ } \\
+\hline
+71fe8e9 & 21 May 2024 & Michael S. Tsirkin & { README.md: update mailing list info
+
+
+As approved by the TC, we are moving to a less formal
+way of discussing the specification, on the mailing lists
+provided by the Linux Foundation:
+
+\url{https://groups.oasis-open.org/higherlogic/ws/public/ballot?id=3820}
+
+Update README.md, CONTRIBUTING.md and newdevice.tex accordingly.
+
+Use this opportunity to explain when and how to use each
+mailing list.
+
+Oh yes, and device numbers are reserved through virtio-comment
+not through virtio-dev. Correct that.
+
+Message-Id: <8f5db33c96d685fcebca3579b05d09b64dd720d9.1715766697.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+6678bbf & 11 Jul 2024 & Parav Pandit & { Add link for the feature bits section
+
+
+Device common feature bits overview in the basic facilities and
+their actual description are apart by 24 chapters.
+
+Help reader to directly reach out to feature bits definitions from
+the basic chapter.
+
+MST: merged as a trivial editorial change
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240612073522.2571082-1-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+550b760 & 11 Jul 2024 & Michael S. Tsirkin & { can: drop a broken conformance link
+
+
+CAN device has a single device conformance section, drop
+a link to a non-existent section, fixing a Latex error.
+
+Fixes: 07bb9f7 ("virtio-can: Device specification.")
+Message-ID: <87a6c3c4463e9f304cdd5dd5fac2194a95a8bcd2.1720724591.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+d7c486b & 11 Jul 2024 & Michael S. Tsirkin & { introduction: fix label
+
+
+label to rfc8174 is incorrect, leading to undefined reference
+and multiple defined reference latex errors.
+
+Fix it up.
+
+Message-Id: <52b6fc16793e3b24284aefafda94322c739b9f7f.1720725332.git.mst@redhat.com>
+Fixes: eb16e33 ("editorial: various fixes for 1.3-csd01")
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+7e454b6 & 11 Jul 2024 & Michael S. Tsirkin & { makediff: cherry pick label change
+
+
+label changes tend to trip up makediff - this one
+causes an undefined reference from deleted section.
+To fix, cherry-pick it.
+
+Message-Id: <216774e3fa811e0a6e994a3815f0804ddfc0bb03.1720731399.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+b495841 & 11 Jul 2024 & Michael S. Tsirkin & { transport-mmio: fix up makediff from 1.2
+
+
+we fixed a typo in label name: in the diff old links become
+undefined. Add the old label back for now, we can drop it
+down the road.
+
+Message-Id: <fc98549666e0fe74e890a7a62ca71248e709712b.1720731329.git.mst@redhat.com>
+Fixes: ca97719 ("transport-mmio: Fix spellings and white spaces")
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+75086cb & 11 Jul 2024 & Michael S. Tsirkin & { Merge tag 'v1.3-wd02' into virtio-1.4
+
+
+Merge fixes from master branch (1.3) up to tag v1.3-wd02
+commit b495841 ("transport-mmio: fix up makediff from 1.2")
+
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+61b65cb & 11 Jul 2024 & Cornelia Huck & { editorial: allow for longer device id table: makediff 1.3
+
+
+Move to "longtable" to allow the table to span multiple pages (it
+became too long to fit on one page with the latest addition.)
+
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+(cherry picked from commit c8249d73d2fdbbfd38e8bf45c8492057bc2485e9)
+
+ } \\
+\hline
+6fa0087 & 11 Jul 2024 & Michael S. Tsirkin & { Merge tag 'v1.3-wd02-makediff' into virtio-1.4
+
+
+this is just so makediff can cherry pick a workaround
+for latexdiff.
+
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+79b04be & 11 Jul 2024 & Michael S. Tsirkin & { makediff: update base version to 1.3
+
+
+might cause minor conflicts if we merge 1.3 branch
+again, but seems cleaner than seeing full diff here.
+
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+18e47c0 & 11 Jul 2024 & Parav Pandit & { virtio-blk: Fix data type of num_queues field
+
+
+Correct the endianness of num_queues field to be little endian.
+
+Suggested-by: Max Gurtovoy <mgurtovoy@nvidia.com>
+Reviewed-by: Max Gurtovoy <mgurtovoy@nvidia.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
+Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
+Message-Id: <20240521122119.2004071-1-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+0080681 & 11 Jul 2024 & Parav Pandit & { virtio-net: Fix receive buffer size calculation text
+
+
+Receive buffer size calculation is based on the following
+negotiated features.
+
+The text has wrong calculation for IPv6 and also it has missed
+VIRTIO_NET_F_HASH_REPORT.
+
+The problem of igorance of VIRTIO_NET_F_HASH_REPORT is reported
+in [1], however fix for ipv6 payload length must also be
+considered.
+
+Since for the both the fixes touching same requirements, a
+new issue is created as [2].
+
+This patch brings following fixes.
+
+1. Fix annotating struct virtio_net_hdr as field
+2. Fix receive buffer calculation for guest GSO cases to consider
+   ipv6 payload length
+3. small grammar corrections for article
+4. reword the requirement to consider the virtio_ndr_hdr which is
+   depends on the negotiated feature, hence first clarify the
+   struct virtio_net_hdr size
+
+[1] \url{https://github.com/oasis-tcs/virtio-spec/issues/170}
+[2] \url{https://github.com/oasis-tcs/virtio-spec/issues/183}
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/170}
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/183}
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240606102014.2103986-2-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+bf0fdf8 & 11 Jul 2024 & Parav Pandit & { virtio-net: Clarify the size of the struct virtio_net_hdr for tx
+
+
+The feature VIRTIO_NET_F_HASH_REPORT only applies to the receive side.
+However, when VIRTIO_NET_F_HASH_REPORT feature was introduced, it was
+not clarified that the size of the struct virtio_net_hdr on the packet
+transmission also uses higher size when VIRTIO_NET_F_HASH_REPORT is
+negotiated.
+
+Explicitly clarify this.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/183}
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240606102014.2103986-3-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+6abd42f & 11 Jul 2024 & Parav Pandit & { virtio-net: Annotate virtio_net_hdr as field
+
+
+At several places struct virtio_net_hdr missed out the field
+annotation. Add it.
+
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240606102014.2103986-4-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+fdd39cf & 11 Jul 2024 & Parav Pandit & { admin: Introduce self group
+
+
+Define self group to control the self device itself.
+
+Subsequent patches introduces the concept of device capabilities
+and device resources which utilizes the self group to access
+capabilities and uses device resources to refer to the device itself.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-2-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+bfe175d & 11 Jul 2024 & Parav Pandit & { admin: Use already defined names for the legacy commands
+
+
+Instead of description, use the existing name for defining the legacy
+commands. While at it, prefer the shorter label names which
+are already unique and refer them as hyperreference in the table
+for quick naviation.
+
+This is editorial change to align to subsequent patches.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-3-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+88a24d2 & 11 Jul 2024 & Parav Pandit & { admin: Add theory of operation for capability admin commands
+
+
+Device capability indicates the supported functionality and
+resources of the device to the driver.
+
+Driver capability indicates the supported functionality
+and resources which driver will be using. Driver capability is
+subset of the device capability.
+
+Add theory of operation describing it.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-4-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+72a91e6 & 11 Jul 2024 & Parav Pandit & { admin: Prepare table for multipage listing
+
+
+If the table spans across two pages, it is not readable.
+Make use of xltabular package that supports table spanning
+across multiple pages.
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-5-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+d60a390 & 11 Jul 2024 & Parav Pandit & { admin: Add capability admin commands
+
+
+Add three capabilities related administration commands.
+First to get the device capability.
+Second to set the driver capability.
+Third for the driver to discover which capabilities can be accessed.
+
+Even though the current series restricts device capability reading
+to the self group type, same structure and command format etc will
+be reusable in future to read the capability from the owner device
+and also to set the device capability via owner device using
+new DEV_CAP_SET command.
+
+Resource objects are introduced in subsequent patch which utilizes
+the capability, however some description around resource object
+limit is covered in this patch to keep things simple.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-6-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+738f0a2 & 11 Jul 2024 & Parav Pandit & { admin: Add theory of operation for device resource objects
+
+
+The driver controls the device by means of device resource objects.
+These operations include create, query, modify, and destroy the device
+resource objects.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-7-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+5040f36 & 11 Jul 2024 & Parav Pandit & { admin: Add device resource objects admin commands
+
+
+Add generic administration commands create, modify, query and destroy
+device resource object.
+
+Each resource object defines resource specific attributes for the commands.
+Once the resource object is created by the driver, it can be query/modify or
+destroyed by the driver.
+
+Each resource object is identified using a unique resource id per
+resource type.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-8-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+7b3bdd6 & 11 Jul 2024 & Parav Pandit & { virtio-net: Add theory of operation for flow filter
+
+
+Currently packet allow/drop interface has following limitations.
+
+1. Driver can either select which MAC and VLANs to consider
+for allowing/dropping packets, here, the driver has a
+limitation that driver needs to supply full mac
+table or full vlan table for each type. Driver cannot add or
+delete an individual entry.
+
+2. Driver cannot select mac+vlan combination for which
+to allow/drop packet.
+
+3. Driver cannot not set other commonly used packet match fields
+such as IP header fields, TCP, UDP, SCP header fields.
+
+4. Driver cannot steer specific packets based on the match
+fields to specific receiveq.
+
+5. Driver do not have multiple or dedicated virtqueues to
+   perform flow filter requests in accelerated manner in
+   the device.
+
+Flow filter as a generic framework overcome above limitations.
+
+As starting point it is useful to support at least two use cases.
+a. ARFS
+b. ethtool ntuple steering
+
+In future it can be further extended for usecases such as
+switching device, connection tracking or may be more.
+
+The flow filter has following properties.
+
+1. It is an extendible object that driver can create, destroy.
+2. It belongs to a flow filter group.
+3. Each flow filter rule is identified using a unique id,
+   has priority, match key, destination(rq) and action(allow/drop).
+4. Flow filter key also refers to the mask to learn which fields
+   of the packets to match.
+
+This patch adds theory of operation for flow filter functionality.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Heng Qi <hengqi@linux.alibaba.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-9-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+899bb0c & 11 Jul 2024 & Parav Pandit & { virtio-net: Add flow filter capability
+
+
+Add first flow filter capability that indicates device resource
+limits such as number of flow filter rules, groups and selectors.
+
+add second capability that indicates supported selectors defining
+which packet headers and their fields supported.
+
+[Parav Pandit: resolve conflict: editorial: in spec links]
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Heng Qi <hengqi@linux.alibaba.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-10-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+224e98b & 11 Jul 2024 & Parav Pandit & { virtio-net: Add flow filter group, classifier and rule resource objects
+
+
+Flow filter rules depend on the flow filter group resource object.
+The device can have one or more flow filter groups. Each flow filter
+group has its own order. The group order defines the packet
+processing order in the flow filter domain.
+
+Define flow filter classifier object which consists of one
+or multiple types of packet header fields to consider
+for matching. A mask can match on partial field or whole
+field if the device supports partial masking for a given
+mask type.
+
+Define flow filter rule resource which consists of
+match key, reference to group and mask objects and
+an action.
+
+Currently it covers the most common filter types and value
+of Ethernet header, IPV4 and IPV6 headers and TCP and UDP headers.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Heng Qi <hengqi@linux.alibaba.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-11-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+3b7b737 & 11 Jul 2024 & Parav Pandit & { virtio-net: Add flow filter device and driver requirements
+
+
+Add device and driver flow filter requirements.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/179}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Heng Qi <hengqi@linux.alibaba.com>
+Acked-by: Satananda Burla <sburla@marvell.com>
+Message-Id: <20240604132903.2093195-12-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+9b3129f & 12 Jul 2024 & Martin Kröning & { virtio_pci_cap64: specify offset_hi, length_hi endianness
+
+
+While the capability introduction says "This virtio structure capability uses little-endian format,"
+it might be preferrable to be explicit about the endianness of offset_hi and length_hi.
+
+Signed-off-by: Martin Kröning <martin.kroening@eonerc.rwth-aachen.de>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/196}
+Message-Id: <DF89BB0F-6BA4-4DAB-AEC3-03AAF858EC8E@eonerc.rwth-aachen.de>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+67141d1 & 12 Jul 2024 & Parav Pandit & { admin: Add theory of operation for device parts
+
+
+A device can get and set the state of the device which is
+organized as multiple device parts. This can be useful
+in cases of VM snapshot, VM migration, debug or some other use
+cases.
+
+Add the theory of operations on how to get/set device parts
+and how it affects when the device is stopped or resumed.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/176}
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240601145042.2074739-2-parav@nvidia.com>
+
+ } \\
+\hline
+a1281ad & 12 Jul 2024 & Parav Pandit & { admin: Extend resource objects for sr-iov group type
+
+
+occasionally the group owner device accesses the device parts
+of the member device. Extend the usage of resource objects
+for member device parts access.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/176}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240601145042.2074739-3-parav@nvidia.com>
+
+ } \\
+\hline
+aa4f6f0 & 12 Jul 2024 & Parav Pandit & { admin: Add admin commands for device parts
+
+
+Add administration commands to handle device parts such as
+get/set device parts, get metadata of the device parts,
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/176}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240601145042.2074739-4-parav@nvidia.com>
+
+ } \\
+\hline
+617aa2d & 12 Jul 2024 & Parav Pandit & { admin: Define common device parts
+
+
+Define common device parts that represents the state of the device.
+The driver can get and set these device parts using administration
+commands.
+
+[Parav Pandit: resolve conflict: editorial: empty blank line at end of file newdevice.tex]
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/176}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240601145042.2074739-5-parav@nvidia.com>
+
+ } \\
+\hline
+52d320c & 12 Jul 2024 & Parav Pandit & { admin: Add requirements of device parts commands
+
+
+Add device and driver side requirements for the device parts
+related commands.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/176}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240601145042.2074739-6-parav@nvidia.com>
+
+ } \\
+\hline
+24e93e1 & 15 Jul 2024 & Parav Pandit & { editorial: replace hyperref with ref
+
+
+Replace hyperreference with the name reference.
+Fix the broken reference link for the DEVICE_STATUS part.
+
+Fixes: aa4f6f069ab3 ("admin: Add admin commands for device parts")
+Fixes: 617aa2d62a88 ("admin: Define common device parts")
+Suggested-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240714144023.3291803-1-parav@vr-arch-host06.mtvr.labs.mlnx>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+7379354 & 15 Jul 2024 & Michael S. Tsirkin & { makediff: look in subjects only
+
+
+We currently use rev-list with -F to find commits.
+This helps if commit subject has any special characters
+but means that pattern can apply anywhere in the line.
+In particular, a common Fixes: (hash) "subject" pattern
+we started using implies that fixups are picked up
+instead of the commit.
+
+For now, just switch to using regexp (dropping -F)
+and add "^" in front to only look for the string at
+beginning of the line.
+
+We'll worry about more elaborate logic later, if it's ever
+needed.
+
+Message-Id: <1130700f4ae71a93d9887af35cf105731219f057.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+98ad5fc & 15 Jul 2024 & Michael S. Tsirkin & { makediff: cherry pick table env change
+
+
+latexdiff can not cope with environment name changes.
+cherry pick to avoid confusing it.
+
+Fixes: 72a91e6 ("admin: Prepare table for multipage listing")
+Message-Id: <c210d1bf4c64145ad3aae7155ef6050433f23346.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+849b421 & 15 Jul 2024 & Michael S. Tsirkin & { admin: switch to tabularx
+
+
+xltabular seems to confuse htlatex. Switch to an older
+tabularx which seems to be sufficient for our purposes.
+
+Message-Id: <29ebb999f6d3808edbf32cd6e95b69fefc1a6e34.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+8e81624 & 15 Jul 2024 & Michael S. Tsirkin & { admin-cmds-device-parts: switch to tabularx
+
+
+xltabular seems to confuse htlatex. Switch to an older
+tabularx which seems to be sufficient for our purposes.
+
+Message-Id: <bd3cf4e620485271d777f9cfc51d1ae9ee1b8169.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+886fc33 & 15 Jul 2024 & Michael S. Tsirkin & { device-parts: switch to tabularx
+
+
+xltabular seems to confuse htlatex. Switch to an older
+tabularx which seems to be sufficient for our purposes.
+
+Message-Id: <00f72154c624fbbe8c3da9dbdb4e4369c36b7f10.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+a5fb7b5 & 15 Jul 2024 & Michael S. Tsirkin & { admin-cmds-resource-objects: switch to tabularx
+
+
+xltabular seems to confuse htlatex. Switch to an older
+tabularx which seems to be sufficient for our purposes.
+
+Message-Id: <3f7be88a42af0a384621ef07b65c7a31755ef42e.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+459f1aa & 15 Jul 2024 & Michael S. Tsirkin & { virtio: replace xltabular with ltablex
+
+
+now that we only use tabularx, switch to ltablex to
+make tabularx tables paginate properly.
+
+Message-Id: <15b11ce5ac9bbe1aaa7818403b999ff39c74a479.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+e48de84 & 15 Jul 2024 & Michael S. Tsirkin & { makediff: cherry pick switch to tabularx
+
+
+Message-Id: <88cdb7020f5b2771a6d201b1f65005da97e54f16.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+6c23405 & 15 Jul 2024 & Michael S. Tsirkin & { admin: get rid of _ in labels
+
+
+it's not the 1st time we find out underscores in labels confuse
+latexdiff machinery when generating html.
+Errors look like this:
+
+! Missing \textbackslash endcsname inserted.
+<to be read again>
+                   \textbackslash unhbox
+....
+
+?
+! Emergency stop.
+<to be read again>
+                   \textbackslash unhbox
+
+To fix, convert underscores in labels to dashes.
+
+Message-Id: <3e773fcfd4246e66e6f39d3be95d2c0335e34532.1721062136.git.mst@redhat.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+
+ } \\
+\hline
+2a5a957 & 23 Oct 2024 & Viresh Kumar & { virtio-transport: Add a section to define mandatory transport requirements
+
+
+The current Virtio documentation lacks a set of generic requirements
+applicable to all transports. Defining these generic requirements could
+be beneficial when integrating support for a new transport.
+
+This section outlines the essential requirements that any transport
+method must adhere to.
+
+Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/201}
+Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
+Link: \url{https://lore.kernel.org/r/4c24ede14e2545b2e9c69e7d9b79dc15744fd965.1723647318.git.viresh.kumar@linaro.org}
+
+ } \\
+\hline
+1d38844 & 23 Oct 2024 & Parav Pandit & { device-parts: editorial: Add missing struct keyword
+
+
+'struct' keyword was missing in the definition.
+Add it.
+
+Branch: virtio-1.4
+Fixes: aa4f6f06 ("admin: Add admin commands for device parts")
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20240916030835.68178-2-parav@nvidia.com}
+
+ } \\
+\hline
+9081da1 & 23 Oct 2024 & Parav Pandit & { device-parts: editorial: Fix metadata type name
+
+
+The description is for the type VIRTIO_ADMIN_CMD_DEV_PARTS_METADATA_TYPE_LIST;
+however, it referred to a non-existent definition. Correct it.
+
+Branch: virtio-1.4
+Fixes: aa4f6f069ab3 ("admin: Add admin commands for device parts")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/205}
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20240916030835.68178-3-parav@nvidia.com}
+
+ } \\
+\hline
+b820c61 & 23 Oct 2024 & Parav Pandit & { crypto: editorial: Fix spelling errors
+
+
+Fix spelling errors.
+
+Branch: virtio-1.4
+Fixes: a385dd3366a2 ("virtio-crypto: Add virtio crypto device specification")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/205}
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20240916030835.68178-4-parav@nvidia.com}
+
+ } \\
+\hline
+ec1845b & 23 Oct 2024 & Parav Pandit & { gpu: editorial: Fix spelling errors
+
+
+Fix spelling errors.
+
+Branch: virtio-1.4
+Fixes: fed64230bf31 ("Add virtio gpu device specification.")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/205}
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20240916030835.68178-5-parav@nvidia.com}
+
+ } \\
+\hline
+9d60d84 & 23 Oct 2024 & Parav Pandit & { common: editorial: Fix spelling errors
+
+
+Fix spelling errors.
+
+Branch: virtio-1.4
+Fixes: 5f1a8ac61c15 ("admin: introduce virtio admin virtqueues")
+Fixes: 68f66ff7a3d9 ("content: define what an exported object is")
+Fixes: ef16b644cc25 ("content.tex: spec text converted to latex")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/205}
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20240916030835.68178-6-parav@nvidia.com}
+
+ } \\
+\hline
+e98070a & 03 Nov 2024 & Albert Esteve & { content: Reserve ID for media device
+
+
+Reserve device ID 49 for media device.
+Compatible with video encoder, video decoder,
+and capture devices.
+
+Signed-off-by: Albert Esteve <aesteve@redhat.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/202}
+Link: \url{https://lore.kernel.org/r/20240906070833.1949727-1-aesteve@redhat.com}
+
+ } \\
+\hline
+417fb28 & 03 Nov 2024 & Parav Pandit & { virtio-gpu: Fix spelling error
+
+
+Fix spelling error.
+
+Fixes: fed64230bf31 ("Add virtio gpu device specification.")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/192}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+
+ } \\
+\hline
+d17c70a & 03 Nov 2024 & Parav Pandit & { Revert "virtio-gpu: Fix spelling error"
+
+
+This reverts commit 417fb28849c6ecac3b18a35e8a154c03f8dba66f.
+Reverted due to missing Link in commit log.
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+
+ } \\
+\hline
+4a5df40 & 03 Nov 2024 & Parav Pandit & { virtio-gpu: Fix spelling error
+
+
+Fix spelling error.
+
+Fixes: fed64230bf31 ("Add virtio gpu device specification.")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/192}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20241027044457.495730-1-parav@nvidia.com}
+
+ } \\
+\hline
+a1849e3 & 25 Nov 2024 & Juraj Marcin & { virtio-mem: introduce VIRTIO_MEM_F_PERSISTENT_SUSPEND
+
+
+Before, the behavior while suspending to a deep sleep state and waking
+up was not specified. For example, in x86 QEMU VM all devices receive a
+reset request during wake-up. This would lead to unplugging of all the
+plugged memory blocks. Due to this, suspending is disallowed in the
+Linux Kernel, when plugged memory is present and
+VIRTIO_MEM_F_PERSISTENT_SUSPEND feature flag is not advertised by the
+virtio-mem device.
+
+This new flag should signal to the guest driver, that the device can
+correctly suspend to a deep sleep state and then wake up without
+disrupting the plugged memory blocks. This feature flag is already
+supported in the Linux Kernel [1] and also supported in QEMU [2].
+
+[1]: \url{https://lore.kernel.org/all/20240318120645.105664-1-david@redhat.com/}
+[2]: \url{https://lore.kernel.org/all/20240904103722.946194-1-jmarcin@redhat.com/}
+
+Reviewed-by: David Hildenbrand <david@redhat.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Juraj Marcin <jmarcin@redhat.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/207}
+Link: \url{https://lore.kernel.org/r/20241009090202.10544-2-jmarcin@redhat.com}
+
+ } \\
+\hline
+c8c01f2 & 25 Nov 2024 & Parav Pandit & { device-parts: editorial: Replace duplicated part type
+
+
+Device part type VIRTIO_DEV_PART_VQ_CFG was duplicated in
+the description; it is supposed to be VIRTIO_DEV_PART_VQ_NOTIFY_CFG.
+Fix it.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/209}
+Fixes: 617aa2d62a88 ("Signed-off-by: Parav Pandit <parav@nvidia.com>")
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20241020114141.451478-2-parav@nvidia.com}
+
+ } \\
+\hline
+f21f831 & 25 Nov 2024 & Parav Pandit & { device-parts: Add device type specific raw selector
+
+
+The subsequent patch defines the device-type-specific parts. For
+these parts, the raw selector format is defined to ensure that
+each device type can specify its format accurately.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/209}
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20241020114141.451478-3-parav@nvidia.com}
+Note: Merged with tab replaced with white spaces.
+
+ } \\
+\hline
+b2990c8 & 25 Nov 2024 & Parav Pandit & { virtio-net: Define cvq configuration related device parts
+
+
+virtio net driver sends the control virtqueue commands for
+device configuration. Such driver configuration is currently
+not captured in the device parts.
+
+This series adds several of such device parts which represents
+the network device specific configuration.
+
+It is done by utilizing the existing device parts structure.
+A new generic selector format is added to enable device type
+specific device parts.
+
+This series also reuses the existing control virtqueue command
+structures, fields, and values to define the network device parts.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/209}
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20241020114141.451478-4-parav@nvidia.com}
+
+ } \\
+\hline
+8e443f4 & 20 Jan 2025 & Paolo Abeni & { virtio-net: clarify NEEDS_CSUM semantic for GSO packats.
+
+
+The current wording is a bit unclear hinting to possible additional
+nested headers. For GSO packets virtio net (currently) supports
+offload for the checksum of single transport header, explicitly state
+that in both the driver and device sections.
+
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/81034d9f4b12f7bd7aa6f7f5266cb6d551d0823c.1732699986.git.pabeni@redhat.com}
+
+ } \\
+\hline
+95c085b & 20 Jan 2025 & Paolo Abeni & { virtio-net: clarify DATA_VALID semantic for encap protos.
+
+
+DATA_VALID allows offloading a single checksum level, leaving
+unspecified which header checksum is offloaded when one or more
+encapsulated protocols are present.
+
+In such a case, the only option usable from the guest OS is
+offloading the outermost checksum. That also matches the existing
+implementation.
+
+Explicitly state such the constraint, to remove any ambiguity and
+make later changes more straightforward.
+
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/ec6fdbfba2c4fc1969d83799836ebb694a01fb30.1732699986.git.pabeni@redhat.com}
+
+ } \\
+\hline
+8cd457d & 20 Jan 2025 & Paolo Abeni & { virtio-net: define UDP tunnel segmentation offload feature
+
+
+The VIRTIO_NET_HDR_GSO_UDP_TUNNEL_IPV\{4,6\} are two gso_type flags
+allowing respectively GSO over UDPv4 tunnel and GSO over UDPv6 tunnel.
+They can be negotiated on both the host and guest sides.
+
+One constraint addressed here is that the virtio side (either device or
+driver) receiving a UDP tunneled GSO packet must be able to reconstruct
+completely the inner and outer headers offset - to allow for later GSO.
+
+To accommodate such need, new fields are introduced in the virtio_net
+header: outer_th_offset and inner_nh_offset.
+They map directly to the corresponding header information. The inner
+transport header is implied by the (inner) checksum offload.
+
+Those fields are required because a virtio device H/W implementation
+performing segmentation for UDP tunneled packet will need to touch
+the outer transport protocol (for the UDP length filed), the
+inner network protocol (for the total length field, in the IPv4
+case).
+
+Note that segmentation will additionally need to touch
+the outer network protocol and the inner transport protocol. The first
+is implied/easily found with trivial parsing, the latter is identified
+by the existing csum_start field.
+
+Note that there is no concept of UDP tunnel type negotiation (e.g.
+vxlan, geneve, vxlan-gpe, etc.), as a virtio device H/W implementation
+can perform segmentation for every possible UDP-tunnel given the
+specified new fields.
+In the reverse direction, if a virtio device H/W implementation receives
+some traffic for an unknown or unsupported UDP tunnel, it will simply
+not aggregate the wire packet in a GSO one.
+
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Link: \url{https://lore.kernel.org/r/3e1c45071c8cf4efc7ca0ecc7b52a73c6bf983fe.1732699986.git.pabeni@redhat.com}
+
+ } \\
+\hline
+3fea589 & 20 Jan 2025 & Paolo Abeni & { virtio-net: define UDP tunnel checksum offload feature
+
+
+This complements the previous change, additionally
+introducing the UDP tunnel checksum offload feature.
+
+Differently from the plain checksum offload feature, this
+depends on UDP tunnel segmentation being available, as outer checksum
+computation for non GSO packets is cheap and H/W implementation of
+such a feature is complex.
+
+UDP tunnel checksum offload does not introduce additional fields,
+instead it leverages the outer transport offset introduced by the
+UDP tunnel segmentation feature to locate the outer checksum
+inside the packet.
+
+When UDP tunnel checksum offload is negotiated:
+
+- the driver requests the outer UDP checksum offload setting the
+VIRTIO_NET_HDR_F_UDP_TUNNEL_CSUM bit in the flag field. Such bit
+is not allocated inside the gso_type field to prevent space
+exhaustion there.
+
+- in the device -> driver direction, the VIRTIO_NET_HDR_F_DATA_VALID
+bit semantic is extended, covering both the inner and the outer
+checksum validation.
+
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Link: \url{https://lore.kernel.org/r/e87cf0c61f5ea3783cea0bcc4ea74f6e73f453d7.1732699986.git.pabeni@redhat.com}
+
+ } \\
+\hline
+14d3f88 & 03 Feb 2025 & Parav Pandit & { virtio-net: Fix to avoid using reserved feature bits
+
+
+Listed patches in the fixes tag, incorrectly used the reserved feature bits.
+Fix them to use the well defined device specific range.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/212}
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/213}
+Fixes: 8cd457d8aa82 ("virtio-net: define UDP tunnel segmentation offload feature")
+Fixes: 3fea589bd7c6 ("virtio-net: define UDP tunnel checksum offload feature")
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Cornelia Huck <cohuck@redhat.com>
+Acked-by: Michael S. Tsirkin <mst@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250126062058.13695-1-parav@nvidia.com}
+
+ } \\
+\hline
+124fcd0 & 24 Feb 2025 & Steffen Trumtrar & { virtio-net: Fix receive buffer size typo
+
+
+The commit 00806815385340dd411cc67df3f6837935bb5e26 introduced a slight
+typo in the struct virtio_net_hdr size calculation depending on
+VIRTIO_NET_F_HASH_REPORT negotiation.
+
+Without VIRTIO_NET_F_HASH_REPORT the struct is smaller than with the
+feature. This mix up only occurs in one instance; sizes are correct in
+all other occurences.
+
+Fix this typo.
+
+Fixes: 008068153853 ("virtio-net: Fix receive buffer size calculation text")
+Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Michael S. Tsirkin <mst@redhat.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/216}
+Link: \url{https://lore.kernel.org/r/20250207-v1-4-topic-virtio-net-receive-buffer-fix-v1-1-efcef167d6bc@pengutronix.de}
+
+ } \\
+\hline
+a9b942e & 10 Mar 2025 & Parav Pandit & { virtio-net: Rename selectors_limit to classifiers_limit
+
+
+A classifier object consists of one or more selectors. The number of
+selectors per classifier object is already annotated in the field
+selectors_per_classifier_limit.
+
+The field selectors_limit is intended to reflect the limit of
+classifier objects. Hence, rename it to classifiers_limit.
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/215}
+Fixes: 3b7b7371dbed ("virtio-net: Add flow filter device and driver requirements")
+Fixes: 899bb0ca24d8 ("virtio-net: Add flow filter capability")
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250215061158.21053-1-parav@nvidia.com}
+
+ } \\
+\hline
+4c73a70 & 10 Apr 2025 & Parav Pandit & { conformance: Add missing virtqueue reset conformance references
+
+
+Add the missing references to the virtqueue reset related conformance
+requirements.
+
+(cherry picked from commit 925b42e3f72fdd113a5e4cc219b739c2c74dba23)
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+[CH: pushed as an editorial change]
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-2-mvaralar@redhat.com}
+
+ } \\
+\hline
+82b4313 & 10 Apr 2025 & Parav Pandit & { packed-ring: Change host,guest to device,driver
+
+
+Rest of the packed ring description already uses the device
+and driver terminology. Change the introductory line as well from
+host and guest to device and driver respectively.
+
+(cherry picked from commit 68d5cc4fe4081a49235885005647b095b7965c0b)
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Michael S. Tsirkin <mst@redhat.com>
+[CH: pushed as an editorial update]
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-3-mvaralar@redhat.com}
+
+ } \\
+\hline
+32a7417 & 10 Apr 2025 & Parav Pandit & { description: Avoid splitting the word virtqueue
+
+
+Don't split the word virtqueue.
+
+(cherry picked from commit 4cb03b12dc951f0152cd2cd9c79b24492e174e43)
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+[CH: applied as editorial]
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-4-mvaralar@redhat.com}
+
+ } \\
+\hline
+36e9060 & 10 Apr 2025 & Haixu Cui & { content: Rename SPI master to SPI controller
+
+
+SPI master is an outdated term and should use SPI controller.
+
+(cherry picked from commit bb11bf9b25cc86c6ff02bf9f243da55b0d383a32)
+
+Signed-off-by: Haixu Cui <quic_haixcui@quicinc.com>
+Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
+Signed-off-by: Cornelia Huck <cohuck@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-5-mvaralar@redhat.com}
+
+ } \\
+\hline
+8297084 & 10 Apr 2025 & Parav Pandit & { virtio-blk: Fix data type of num_queues field
+
+
+Correct the endianness of num_queues field to be little endian.
+
+(cherry picked from commit 18e47c01207b2983a7dfd1e2c7de1bdc408d391a)
+
+Suggested-by: Max Gurtovoy <mgurtovoy@nvidia.com>
+Reviewed-by: Max Gurtovoy <mgurtovoy@nvidia.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
+Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
+Message-Id: <20240521122119.2004071-1-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-6-mvaralar@redhat.com}
+
+ } \\
+\hline
+a22cd3e & 10 Apr 2025 & Parav Pandit & { virtio-net: Fix receive buffer size calculation text
+
+
+Receive buffer size calculation is based on the following
+negotiated features.
+
+The text has wrong calculation for IPv6 and also it has missed
+VIRTIO_NET_F_HASH_REPORT.
+
+The problem of igorance of VIRTIO_NET_F_HASH_REPORT is reported
+in [1], however fix for ipv6 payload length must also be
+considered.
+
+Since for the both the fixes touching same requirements, a
+new issue is created as [2].
+
+This patch brings following fixes.
+
+1. Fix annotating struct virtio_net_hdr as field
+2. Fix receive buffer calculation for guest GSO cases to consider
+   ipv6 payload length
+3. small grammar corrections for article
+4. reword the requirement to consider the virtio_ndr_hdr which is
+   depends on the negotiated feature, hence first clarify the
+   struct virtio_net_hdr size
+
+[1] \url{https://github.com/oasis-tcs/virtio-spec/issues/170}
+[2] \url{https://github.com/oasis-tcs/virtio-spec/issues/183}
+
+(cherry picked from commit 00806815385340dd411cc67df3f6837935bb5e26)
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/170}
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/183}
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240606102014.2103986-2-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-7-mvaralar@redhat.com}
+
+ } \\
+\hline
+25d8101 & 10 Apr 2025 & Parav Pandit & { virtio-net: Clarify the size of the struct virtio_net_hdr for tx
+
+
+The feature VIRTIO_NET_F_HASH_REPORT only applies to the receive side.
+However, when VIRTIO_NET_F_HASH_REPORT feature was introduced, it was
+not clarified that the size of the struct virtio_net_hdr on the packet
+transmission also uses higher size when VIRTIO_NET_F_HASH_REPORT is
+negotiated.
+
+Explicitly clarify this.
+
+(cherry picked from commit bf0fdf8ba828b694a22c44d45cb3fd34cf813e99)
+
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/183}
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240606102014.2103986-3-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-8-mvaralar@redhat.com}
+
+ } \\
+\hline
+fb926ab & 10 Apr 2025 & Parav Pandit & { virtio-net: Annotate virtio_net_hdr as field
+
+
+At several places struct virtio_net_hdr missed out the field
+annotation. Add it.
+
+(cherry picked from commit 6abd42fd2398718ff689dc51fa93d38ede97be8f)
+
+Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Message-Id: <20240606102014.2103986-4-parav@nvidia.com>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-9-mvaralar@redhat.com}
+
+ } \\
+\hline
+b16f382 & 10 Apr 2025 & Martin Kröning & { virtio_pci_cap64: specify offset_hi, length_hi endianness
+
+
+While the capability introduction says "This virtio structure capability uses little-endian format,"
+it might be preferrable to be explicit about the endianness of offset_hi and length_hi.
+
+(cherry picked from commit 9b3129fe72360a78e76b6dd890d3abc5a45fa915)
+
+Signed-off-by: Martin Kröning <martin.kroening@eonerc.rwth-aachen.de>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/196}
+Message-Id: <DF89BB0F-6BA4-4DAB-AEC3-03AAF858EC8E@eonerc.rwth-aachen.de>
+Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-10-mvaralar@redhat.com}
+
+ } \\
+\hline
+376348f & 10 Apr 2025 & Parav Pandit & { gpu: editorial: Fix spelling errors
+
+
+Fix spelling errors.
+
+(cherry picked from commit ec1845bd5a0261a65e29137f949ba03bf2fb44e2)
+
+Branch: virtio-1.4
+Fixes: fed64230bf31 ("Add virtio gpu device specification.")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/205}
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/20240916030835.68178-5-parav@nvidia.com}
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-11-mvaralar@redhat.com}
+
+ } \\
+\hline
+12289b0 & 10 Apr 2025 & Paolo Abeni & { virtio-net: clarify NEEDS_CSUM semantic for GSO packats.
+
+
+The current wording is a bit unclear hinting to possible additional
+nested headers. For GSO packets virtio net (currently) supports
+offload for the checksum of single transport header, explicitly state
+that in both the driver and device sections.
+
+(cherry picked from commit 8e443f483843c3d42a4128778f1c7548a02c48bf)
+
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/81034d9f4b12f7bd7aa6f7f5266cb6d551d0823c.1732699986.git.pabeni@redhat.com}
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-12-mvaralar@redhat.com}
+
+ } \\
+\hline
+d3c2f14 & 10 Apr 2025 & Paolo Abeni & { virtio-net: clarify DATA_VALID semantic for encap protos.
+
+
+DATA_VALID allows offloading a single checksum level, leaving
+unspecified which header checksum is offloaded when one or more
+encapsulated protocols are present.
+
+In such a case, the only option usable from the guest OS is
+offloading the outermost checksum. That also matches the existing
+implementation.
+
+Explicitly state such the constraint, to remove any ambiguity and
+make later changes more straightforward.
+
+(cherry picked from commit 95c085b2f16de4bcdcae9c42d7828d9b8efc7836)
+
+Signed-off-by: Paolo Abeni <pabeni@redhat.com>
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Link: \url{https://lore.kernel.org/r/ec6fdbfba2c4fc1969d83799836ebb694a01fb30.1732699986.git.pabeni@redhat.com}
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-13-mvaralar@redhat.com}
+
+ } \\
+\hline
+16718cb & 10 Apr 2025 & Steffen Trumtrar & { virtio-net: Fix receive buffer size typo
+
+
+The commit 00806815385340dd411cc67df3f6837935bb5e26 introduced a slight
+typo in the struct virtio_net_hdr size calculation depending on
+VIRTIO_NET_F_HASH_REPORT negotiation.
+
+Without VIRTIO_NET_F_HASH_REPORT the struct is smaller than with the
+feature. This mix up only occurs in one instance; sizes are correct in
+all other occurences.
+
+Fix this typo.
+
+(cherry picked from commit 124fcd0e97f209aab19639e7369116d99ede22a2)
+
+Fixes: 008068153853 ("virtio-net: Fix receive buffer size calculation text")
+Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Acked-by: Michael S. Tsirkin <mst@redhat.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/216}
+Link: \url{https://lore.kernel.org/r/20250207-v1-4-topic-virtio-net-receive-buffer-fix-v1-1-efcef167d6bc@pengutronix.de}
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250401133543.801184-14-mvaralar@redhat.com}
+
+ } \\
+\hline
+8d76f64 & 20 May 2025 & Kommula Shiva Shankar & { virtio-net: Introduce a new field to indicate outer network header offset
+
+
+This patch introduces a new field in the virtio_net_hdr called outer_nh_offset, along with a new net device feature, VIRTIO_NET_F_OUT_NET_HEADER.
+
+Currently, drivers lack a dedicated field to signal the start of the network header to the device when performing checksum offload
+and segmentation offload. This requires the device to read the packet in data path, which significantly affects performance.
+Additionally, some hardware implementations require knowledge of the outer L3 offset (aka L2 length) for inline IPsec hardware acceleration.
+
+To address this limitation, we propose to introduce a new field in the virtio_net_hdr called
+outer_nh_offset.
+
+The outer_nh_offset represents the start byte offset of the outer network header from the beginning of the packet.
+
+This issue was briefly discussed on the mailing list in a different thread, which can be found here.
+\url{https://lore.kernel.org/all/DM4PR18MB4269FAAC3CFC7E57E25DFBD2DF8B2@DM4PR18MB4269.namprd18.prod.outlook.com/}
+
+v4->v5
+ - Added padding bytes to virtio_net_hdr to ensure 64b alignment
+ - Addressed pending review comments
+v4:\url{https://lore.kernel.org/virtio-comment/20250304075955.208450-1-kshankar@marvell.com/}
+
+v3 -> v4
+ - Removed the union of new flag with existing flags. Added as a separate field
+   in the virtio net header
+ - Renamed out_nh_offset to outer_nh_offset to maintain consistency with other fields
+ - Spellchecks in commit message description
+v3:\url{https://lore.kernel.org/all/20250217172509.107212-1-kshankar@marvell.com}
+
+v2 -> v3:
+ - Rebase to virtio-1.4
+ - Addressed pending review comments related to wording.
+v2:\url{https://lore.kernel.org/all/20250128142152.3662988-1-kshankar@marvell.com/}
+
+v1 -> v2:
+ - explicitly state that the out_nh_offset can be set only when a valid network header is present.
+ - updated out_nh_offset usage in the RX direction.
+ - minor word cleanup.
+v1: \url{https://lore.kernel.org/virtio-comment/20250114171636.3175670-1-kshankar@marvell.com/}
+
+Signed-off-by: Kommula Shiva Shankar <kshankar@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/222}
+Link: \url{https://lore.kernel.org/r/20250401195655.486230-1-kshankar@marvell.com}
+
+ } \\
+\hline
+fa12149 & 20 May 2025 & Aiswarya Cyriac & { Reserve device ID 49 for Virtio USB controller device
+
+
+Virtio USB controller device is a dual role device, which
+can function as a USB host controller or a USB device
+controller or support both roles. Additionally, device provides
+support for switching of roles between USB host and device.
+
+Signed-off-by: Aiswarya Cyriac <quic_acyriac@quicinc.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/211}
+Link: \url{https://lore.kernel.org/r/20241129111325.952-1-quic_acyriac@quicinc.com}
+
+ } \\
+\hline
+c7553a7 & 04 Jun 2025 & Srujana Challa & { virtio-crypto: Add IPsec service operation and Capabilities
+
+
+This commit introduces the IPsec service operation to the Crypto
+device, enabling offloading of IPsec processing.
+
+Capabilities:
+
+1. IPsec Resource Capability (VIRTIO_CRYPTO_IPSEC_RESOURCE_CAP):
+   Indicates the device's IPsec resource limits, such as the number of
+   outbound and inbound Security Associations (SAs).
+2. IPsec SA Capability (VIRTIO_CRYPTO_IPSEC_SA_CAP): Specifies the
+   supported IPsec modes, along with the supported cryptographic
+   algorithms, authentication algorithms, IPsec options and
+   anti-replay window size.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/226}
+Link: \url{https://lore.kernel.org/r/20250429131953.1949757-2-schalla@marvell.com}
+
+ } \\
+\hline
+9d2cf8d & 04 Jun 2025 & Srujana Challa & { virtio-crypto: Add resource objects for IPsec outbound and inbound SAs
+
+
+This commit introduces resource objects to enable the driver/device to
+create IPsec Security Associations (SAs) for both inbound and outbound
+directions.
+
+The IPsec SA objects include essential parameters required for packet
+outbound and inbound processing, such as SPI, tunnel headers, IPsec mode,
+IPsec options and cipher/authentication specific data.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/226}
+Link: \url{https://lore.kernel.org/r/20250429131953.1949757-3-schalla@marvell.com}
+
+ } \\
+\hline
+4e0baa8 & 04 Jun 2025 & Srujana Challa & { virtio-crypto: Add new IPsec opcodes to data request
+
+
+Adds new IPsec opcodes, VIRTIO_CRYPTO_IPSEC_OUTBOUND and
+VIRTIO_CRYPTO_IPSEC_INBOUND and defines opcode specific
+data structures for IPsec data processing.
+
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/226}
+Link: \url{https://lore.kernel.org/r/20250429131953.1949757-4-schalla@marvell.com}
+
+ } \\
+\hline
+dac8e79 & 04 Jun 2025 & Srujana Challa & { virtio-crypto: Add device and driver requirements for IPsec operation
+
+
+Add device and driver requirements for IPsec Operation.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/226}
+Link: \url{https://lore.kernel.org/r/20250429131953.1949757-5-schalla@marvell.com}
+
+ } \\
+\hline
+45809a3 & 04 Jun 2025 & Srujana Challa & { virtio-net: Add IPsec operation, capabilities and resource objects
+
+
+This commit introduces the IPsec Operation to the Net device
+along with the capabilities and resource objects. This enables
+the offloading of IPsec processing, both before transmission
+and after reception, thereby providing inline offload
+capabilities.
+
+Capbilities:
+
+1. IPsec Resource Capability (VIRTIO_CRYPTO_IPSEC_RESOURCE_CAP):
+   Indicates the device's IPsec resource limits, such as the number of
+   encryption and decryption Security Associations (SAs).
+2. IPsec SA Capability (VIRTIO_CRYPTO_IPSEC_SA_CAP): Specifies the
+   supported IPsec modes, along with the supported cryptographic
+   algorithms, authentication algorithms, IPsec options and
+   anti-replay window size.
+
+Resource objects:
+1. VIRTIO_NET_RESOURCE_OBJ_IPSEC_OUTB_SA
+2. VIRTIO_NET_RESOURCE_OBJ_IPSEC_INB_SA
+
+These IPsec SA resource objects encompass parameters necessary
+for packet encryption and decryption. These include the SPI,
+tunnel headers, IPsec mode, IPsec options, and metadata specific
+to cipher and authentication.
+
+This patch refers the Virtio-crypto IPsec service operation
+capabilities and resource objects data structures and crypto algorithm
+definitions to avoid duplication, however the admin command type vaule
+differs between Virtio-crypto and Virtio-net.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/227}
+Link: \url{https://lore.kernel.org/r/20250520121924.2169258-2-schalla@marvell.com}
+
+ } \\
+\hline
+a9604fa & 04 Jun 2025 & Srujana Challa & { virtio-net: Add new flow filter selector and action for IPsec
+
+
+This update introduces a new flow filter selector to match
+the ESP header and adds a new flow filter action for IPsec
+processing.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/227}
+Link: \url{https://lore.kernel.org/r/20250520121924.2169258-3-schalla@marvell.com}
+
+ } \\
+\hline
+fd15f89 & 04 Jun 2025 & Srujana Challa & { virtio-net: extend virtio_net_hdr for IPsec support
+
+
+Add IPsec resource object identifiers to the virtio_net_hdr for
+identifying encryption/decryption operations on tx and rx side
+respectively, along with flags.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/227}
+Link: \url{https://lore.kernel.org/r/20250520121924.2169258-4-schalla@marvell.com}
+
+ } \\
+\hline
+a0b809a & 04 Jun 2025 & Srujana Challa & { virtio-net: Add IPsec operation device and driver requirements
+
+
+Add device and driver requirements for IPsec Operation.
+
+Signed-off-by: Srujana Challa <schalla@marvell.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/227}
+Link: \url{https://lore.kernel.org/r/20250520121924.2169258-5-schalla@marvell.com}
+
+ } \\
+\hline
+c5e5810 & 09 Jul 2025 & Albert Esteve & { virtio-media: Add virtio media device specification
+
+
+Virtio-media is an encapsulation of the V4L2 UAPI into
+virtio, able to virtualize any video device supported
+by V4L2.
+
+Note that virtio-media does not require the use of a
+V4L2 device driver on the host or guest side -
+V4L2 is only used as a host-guest protocol,
+and both sides are free to convert it from/to any
+model that they wish to use.
+
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Reviewed-by: Alexandre Courbot <gnurou@gmail.com>
+Signed-off-by: Albert Esteve <aesteve@redhat.com>
+
+ } \\
+\hline
+340d076 & 15 Jul 2025 & Zhu Lingshan & { virtio: re-order device status bits
+
+
+This commit re-arranges the device status bits,
+to list them in ascending order.
+
+Signed-off-by: Zhu Lingshan <lingshan.zhu@amd.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/229}
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250704101739.354522-2-lingshan.zhu@amd.com}
+
+ } \\
+\hline
+b1d6ef6 & 15 Jul 2025 & Zhu Lingshan & { virtio: document feature bit 42
+
+
+This commit documents feture bit 42
+VIRTIO_NET_F_GUEST_RSC6
+
+Signed-off-by: Zhu Lingshan <lingshan.zhu@amd.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: 94384142 ("content: Declare virtio-net legacy feature bits 41-42")
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/229}
+Reviewed-by: Jason Wang <jasowang@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250704101739.354522-3-lingshan.zhu@amd.com}
+
+ } \\
+\hline
+f219fef & 15 Jul 2025 & Zhu Lingshan & { virtio: introduce SUSPEND and RESUME feature
+
+
+This commit allows the driver to suspend the
+device through a new device status bit SUSPEND
+and resume the device running by re-setting
+DRIVER_OK bit in device status.
+
+Signed-off-by: Zhu Lingshan <lingshan.zhu@amd.com>
+Signed-off-by: Jason Wang <jasowang@redhat.com>
+Reviewed-by: Parav Pandit <parav@nvidia.com>
+Fixes: \url{https://github.com/oasis-tcs/virtio-spec/issues/229}
+Link: \url{https://lore.kernel.org/r/20250704101739.354522-4-lingshan.zhu@amd.com}
+
+ } \\
+\hline
+6275e11 & 15 Jul 2025 & Parav Pandit & { virtio-net: Fix ipsec broken conformance links
+
+
+Fix the broken conformance links for ipsec device and driver
+requirements.
+
+Fixes: a0b809a7ddbd ("virtio-net: Add IPsec operation device and driver requirements")
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+Reviewed-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250709140049.507870-1-parav@nvidia.com}
+
+ } \\
+\hline
+65645f2 & 22 Sep 2025 & Peter Hilber & { virtio-rtc: Add initial device specification
+
+
+The virtio-rtc device provides information about current time through
+one or more clocks. As such, it is a Real-Time Clock (RTC) device.
+
+The normative statements for this device follow in the next patch.
+
+For this device, there is a Linux kernel driver patch series which is
+being upstreamed, and a proprietary device implementation.
+
+Miscellaneous
+
+-------------
+
+The spec does not specify how a driver should interpret clock readings,
+esp. also not how to perform clock synchronization.
+
+The device uses the former "Timer/Clock" device id which is already part
+of the specification. This device id was registered a long time ago and
+should be unused according to the author's information. The name "RTC"
+was determined to be the best for a device which focuses on current
+time.
+
+Signed-off-by: Peter Hilber <quic_philber@quicinc.com>
+Link: \url{https://lore.kernel.org/r/20250710090648.1711-3-quic_philber@quicinc.com}
+
+ } \\
+\hline
+f111987 & 22 Sep 2025 & Peter Hilber & { virtio-rtc: Add initial normative statements
+
+
+Add the normative statements for the initial device specification.
+
+Signed-off-by: Peter Hilber <quic_philber@quicinc.com>
+Link: \url{https://lore.kernel.org/r/20250710090648.1711-4-quic_philber@quicinc.com}
+
+ } \\
+\hline
+0a6a441 & 22 Sep 2025 & Peter Hilber & { virtio-rtc: Add alarm feature
+
+
+Add the VIRTIO_RTC_F_ALARM feature (without normative statements).
+
+The intended use case is: A driver needs to react when an alarm time has
+been reached, but at alarm time, the driver may be in a sleep state or
+powered off. The alarm feature can resume and notify the driver in this
+case. Alarms may be retained across device resets.
+
+Peculiarities
+
+-------------
+
+Unlike usual alarm clocks, a virtio-rtc alarm-capable clock may step
+autonomously at any time: An alarm may change back from "expired" to
+"not expired" before the driver has started processing an alarm
+notification.
+
+To address the above, and the device resets, define "alarm expiration"
+in such a way that the driver always has a chance to react to an alarm,
+and make the device always responsible for notifying the driver about an
+alarm expiration.
+
+The VIRTIO_RTC_REQ_SET_ALARM_ENABLED request is there so that the Linux
+ioctls RTC_AIE_ON and RTC_AIE_OFF only need to emit one request.
+
+Signed-off-by: Peter Hilber <quic_philber@quicinc.com>
+Link: \url{https://lore.kernel.org/r/20250710090648.1711-5-quic_philber@quicinc.com}
+
+ } \\
+\hline
+f978e07 & 22 Sep 2025 & Peter Hilber & { virtio-rtc: Add normative statements for alarm feature
+
+
+Add the normative statements for the alarm feature added previously.
+
+Signed-off-by: Peter Hilber <quic_philber@quicinc.com>
+Link: \url{https://lore.kernel.org/r/20250710090648.1711-6-quic_philber@quicinc.com}
+
+ } \\
+\hline
+928d969 & 23 Sep 2025 & Matias Ezequiel Vara Larsen & { git-publish: add profile
+
+
+Add git-publish profile and document how to use it.
+
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
+Reviewed-by: Albert Esteve <aesteve@redhat.com>
+Acked-by: Cornelia Huck <cohuck@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250305164546.1484029-1-mvaralar@redhat.com}
+
+ } \\
+\hline
+d9742cb & 26 Sep 2025 & Matias Ezequiel Vara Larsen & { README.md: add example email for TC vote request
+
+
+Signed-off-by: Matias Ezequiel Vara Larsen <mvaralar@redhat.com>
+Link: \url{https://lore.kernel.org/r/20250320114326.2075821-1-mvaralar@redhat.com}
+
+ } \\
+\hline
+63aaa4b & 13 Oct 2025 & Parav Pandit & { Merge branch 'virtio-1.4'
+
+
+Resolved conflict in net device description.
+
+Signed-off-by: Parav Pandit <parav@nvidia.com>
+
+ } \\
+\hline
-- 
2.34.1


  parent reply	other threads:[~2025-10-27 17:49 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-27 17:47 [PATCH 0/4] editorial: Prepare master branch for 1.4 spec release Parav Pandit
2025-10-27 17:47 ` [PATCH 1/4] edit: remove old changelog Parav Pandit
2025-10-27 17:47 ` Parav Pandit [this message]
2025-10-27 17:47 ` [PATCH 3/4] edit: Remove annotation of special character Parav Pandit
2025-10-27 17:47 ` [PATCH 4/4] REVISION: update to 1.4 Parav Pandit
2025-10-27 17:56 ` [PATCH 0/4] editorial: Prepare master branch for 1.4 spec release Michael S. Tsirkin
2025-10-27 18:04   ` Parav Pandit
2025-10-27 18:06     ` Michael S. Tsirkin
2025-10-30 10:57       ` Parav Pandit
2025-10-27 18:08     ` Michael S. Tsirkin
2025-10-30 10:54       ` Parav Pandit
2025-10-30 10:59         ` Michael S. Tsirkin
2025-10-30 15:15           ` Parav Pandit
2025-11-06 15:42             ` Michael S. Tsirkin
2025-11-06 15:50             ` Michael S. Tsirkin
2025-10-27 18:05 ` Michael S. Tsirkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251027174756.56284-3-parav@nvidia.com \
    --to=parav@nvidia.com \
    --cc=cohuck@redhat.com \
    --cc=mst@redhat.com \
    --cc=mvaralar@redhat.com \
    --cc=shahafs@nvidia.com \
    --cc=virtio-comment@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.