<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/virtio/virtqueue.c, branch release/14.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F14.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F14.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2023-08-16T17:54:36Z</updated>
<entry>
<title>sys: Remove $FreeBSD$: one-line .c pattern</title>
<updated>2023-08-16T17:54:36Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-16T17:54:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=685dc743dc3b5645e34836464128e1c0558b404b'/>
<id>urn:sha1:685dc743dc3b5645e34836464128e1c0558b404b</id>
<content type='text'>
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
</content>
</entry>
<entry>
<title>spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD</title>
<updated>2023-05-12T16:44:03Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-05-10T15:40:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4d846d260e2b9a3d4d0a701462568268cbfe7a5b'/>
<id>urn:sha1:4d846d260e2b9a3d4d0a701462568268cbfe7a5b</id>
<content type='text'>
The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with:		pfg
MFC After:		3 days
Sponsored by:		Netflix
</content>
</entry>
<entry>
<title>Add SDT probes virtqueue::enqueue_segments:{entry,return}</title>
<updated>2021-08-27T17:08:59Z</updated>
<author>
<name>Stephen J. Kiernan</name>
<email>stevek@FreeBSD.org</email>
</author>
<published>2021-08-27T17:08:59Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fd80208a5f92a60381d7bb7b5225bcdc38ab6fd5'/>
<id>urn:sha1:fd80208a5f92a60381d7bb7b5225bcdc38ab6fd5</id>
<content type='text'>
This allows one to be able to map the sglist entries passed into the
vq_ring_enqueue_segments() function to the segment indexes used in
the virtqueue.

This function normally gets inlined and may not available via FBT
probes.

Differential Revision: https://reviews.freebsd.org/D31620
</content>
</entry>
<entry>
<title>virtio: Add modern (v1) virtqueue support</title>
<updated>2021-01-19T04:55:23Z</updated>
<author>
<name>Bryan Venteicher</name>
<email>bryanv@FreeBSD.org</email>
</author>
<published>2021-01-19T04:55:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fbe0c4f4c7f4474def7b041c29c1e2facf2af08b'/>
<id>urn:sha1:fbe0c4f4c7f4474def7b041c29c1e2facf2af08b</id>
<content type='text'>
This only supports the legacy virtqueue format that is now called
"Split Virtqueues". Support for the new "Packed Virtqueues" described
in v1.1 is left for a later date.

Reviewed by: grehan (mentor)
Differential Revision: https://reviews.freebsd.org/D27857
</content>
</entry>
<entry>
<title>virtio: Add VirtIO PCI modern (V1) support</title>
<updated>2021-01-19T04:55:23Z</updated>
<author>
<name>Bryan Venteicher</name>
<email>bryanv@FreeBSD.org</email>
</author>
<published>2021-01-19T04:55:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9da9560c4dd3556519cd391a04f0db157dc3c295'/>
<id>urn:sha1:9da9560c4dd3556519cd391a04f0db157dc3c295</id>
<content type='text'>
Use the existing legacy PCI driver as the basis for shared code
between the legacy and modern PCI drivers. The existing virtio_pci
kernel module will contain both the legacy and modern drivers.

Changes to the virtqueue and each device driver (network, block, etc)
for V1 support come in later commits.

Update the MMIO driver to reflect the VirtIO bus method changes, but
the modern compliance can be improved on later.

Note that the modern PCI driver requires bus_map_resource() to be
implemented, which is not the case on all archs.

The hw.virtio.pci.transitional tunable default value is zero so
transitional devices will continue to be driven via the legacy
driver.

Reviewed by: grehan (mentor)
Differential Revision: https://reviews.freebsd.org/D27856
</content>
</entry>
<entry>
<title>Revert: virtio: Support non-legacy network device and queue</title>
<updated>2021-01-19T04:55:23Z</updated>
<author>
<name>Bryan Venteicher</name>
<email>bryanv@FreeBSD.org</email>
</author>
<published>2021-01-19T04:55:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1cd1ed3f5dd50ca070908468a3816f570448427b'/>
<id>urn:sha1:1cd1ed3f5dd50ca070908468a3816f570448427b</id>
<content type='text'>
And subsequent fix 576b099a.

By adding the mergable header to the vtnet_rx_header structure, the size
was increased by 2 bytes, breaking the alignment of this structure as
described the in preceding comments.

Furthermore, the mergable header does not belong the structure. With the
mergable feature, the header is placed in line with the data, so there is
no need for a separate segment, and misleading to follow the mergable
header with any padding.

The V1 header is effectively identical to mergable header, and the driver
has long supported the mergable feature. Revert this so the later changes
that add V1 support can show how V1 is derived from the existing mergable
buffers support, and to facilitate a later MFC.

Reviewed by: grehan (mentor)
Differential Revision: https://reviews.freebsd.org/D27855
</content>
</entry>
<entry>
<title>virtio: Support non-legacy network device and queue</title>
<updated>2020-06-08T21:51:36Z</updated>
<author>
<name>Jessica Clarke</name>
<email>jrtc27@FreeBSD.org</email>
</author>
<published>2020-06-08T21:51:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8c3988dff98e6da1c1312d20bf246631737805c5'/>
<id>urn:sha1:8c3988dff98e6da1c1312d20bf246631737805c5</id>
<content type='text'>
The non-legacy interface always defines num_buffers in the header,
regardless of whether VIRTIO_NET_F_MRG_RXBUF, just leaving it unused. We
also need to ensure our virtqueue doesn't filter out VIRTIO_F_VERSION_1
during negotiation, as it supports non-legacy transports just fine. This
fixes network packet transmission on TinyEMU.

Reviewed by:	br, brooks (mentor), jhb (mentor)
Approved by:	br, brooks (mentor), jhb (mentor)
Differential Revision:	https://reviews.freebsd.org/D25132
</content>
</entry>
<entry>
<title>Add more virtqueue getter methods</title>
<updated>2018-02-19T19:31:18Z</updated>
<author>
<name>Bryan Venteicher</name>
<email>bryanv@FreeBSD.org</email>
</author>
<published>2018-02-19T19:31:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=88126356cf1a673a94b931fad404398bcf156f85'/>
<id>urn:sha1:88126356cf1a673a94b931fad404398bcf156f85</id>
<content type='text'>
MFC after:	2 weeks
</content>
</entry>
<entry>
<title>sys/dev: further adoption of SPDX licensing ID tags.</title>
<updated>2017-11-27T14:52:40Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2017-11-27T14:52:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=718cf2ccb9956613756ab15d7a0e28f2c8e91cab'/>
<id>urn:sha1:718cf2ccb9956613756ab15d7a0e28f2c8e91cab</id>
<content type='text'>
Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
</content>
</entry>
<entry>
<title>Add virtio bus 'poll' method allowing us to inform backend we are</title>
<updated>2014-12-12T11:19:10Z</updated>
<author>
<name>Ruslan Bukin</name>
<email>br@FreeBSD.org</email>
</author>
<published>2014-12-12T11:19:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=156b97fa1f4366966b8cb50be6e720a58e50e959'/>
<id>urn:sha1:156b97fa1f4366966b8cb50be6e720a58e50e959</id>
<content type='text'>
going to poll virtqueue.

Use on BERI soft-core to invalidate cpu caches.

Reviewed by:	bryanv
Sponsored by:	DARPA, AFRL
</content>
</entry>
</feed>
