Re: [PATCH v7 00/14] virtio: introduce support for GSO over UDP tunnel

2025-09-30 Thread Paolo Abeni
Hi Michael, On Mon, Sep 22, 2025 at 10:21 PM Paolo Abeni wrote: > Some virtualized deployments use UDP tunnel pervasively and are impacted > negatively by the lack of GSO support for such kind of traffic in the > virtual NIC driver. > > The virtio_net specification recently int

[PATCH v7 06/14] virtio: add support for negotiating extended features

2025-09-22 Thread Paolo Abeni
ed-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- v6 -> v6: - clarified commit message v4 -> v5: - reordered virtio_set_features{_ex}() definitions v3 -> v4: - use new virtio_features macro names v2 -> v3: - _array -> _ex v1 -> v2: - uint128_t -> u

[PATCH v7 09/14] qmp: update virtio features map to support extended features

2025-09-22 Thread Paolo Abeni
Acked-by: Jason Wang Acked-by: Markus Armbruster Acked-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- v6 -> v7: - fixed features description typo v3 -> v4: - cleanup unknown features init - update QMP example and doc accordingly - use new virtio_features macro names v2

[PATCH v7 12/14] virtio-net: implement extended features support

2025-09-22 Thread Paolo Abeni
Use the extended types and helpers to manipulate the virtio_net features. Note that offloads are still 64bits wide, as per specification, and extended offloads will be mapped into such range. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v4 -> v5: - reba

[PATCH v7 01/14] net: bundle all offloads in a single struct

2025-09-22 Thread Paolo Abeni
The set_offload() argument list is already pretty long and we are going to introduce soon a bunch of additional offloads. Replace the offload arguments with a single struct and update all the relevant call-sites. No functional changes intended. Signed-off-by: Paolo Abeni --- v5 -> v6: -

[PATCH v7 08/14] vhost: add support for negotiating extended features

2025-09-22 Thread Paolo Abeni
t going to implement extended features soon. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Acked-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- v3 -> v4: - fix compile warning for real :( - de-duplicate code from vhost_{get,ack}_features and vhost_{get,ack}_features_ex - use new vi

[PATCH v7 02/14] linux-headers: deal with counted_by annotation

2025-09-22 Thread Paolo Abeni
Such annotation is present into the kernel uAPI headers since v6.7, and will be used soon by the vhost_type.h. Deal with it just stripping it. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Acked-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- scripts/update-linux-headers.sh | 1 + 1

[PATCH v7 07/14] virtio-pci: implement support for extended features

2025-09-22 Thread Paolo Abeni
non zero. Relay on reset to clear all the feature space before load. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Acked-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- v5 -> v6: - fixed checkpatch error (missing brackets on a single line statement) v4 -> v5: - add blank line

[PATCH v7 04/14] virtio: introduce extended features type

2025-09-22 Thread Paolo Abeni
manipulate them. Most drivers will keep using only 64 bits features space: use union to allow them access the lower part of the extended space without any per driver change. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Acked-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- v6 ->

[PATCH v7 03/14] linux-headers: Update to Linux v6.17-rc1

2025-09-22 Thread Paolo Abeni
Update headers to include the virtio GSO over UDP tunnel features Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v4 -> v5: - fetch the headers from the linux vanilla tree instead of net-next --- include/standard-headers/drm/drm_fourcc.h |

[PATCH v7 10/14] vhost-backend: implement extended features support

2025-09-22 Thread Paolo Abeni
changed belongs to the 64 bit range. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Acked-by: Stefano Garzarella Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_features macro names v1 -> v2: - synced with kernel ioctl changes --- hw/virtio/vhost-backend.

[PATCH v7 11/14] vhost-net: implement extended features support

2025-09-22 Thread Paolo Abeni
Provide extended version of the features manipulation helpers, and let the device initialization deal with the full features space, adjusting the relevant format strings accordingly. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v3 -> v4: - add miss

[PATCH v7 00/14] virtio: introduce support for GSO over UDP tunnel

2025-09-22 Thread Paolo Abeni
patch 1 unmodified, still some hope we could live with that;) v2: https://lists.gnu.org/archive/html/qemu-devel/2025-07/msg03000.html Paolo Abeni (14): net: bundle all offloads in a single struct linux-headers: deal with counted_by annotation linux-headers: Update to Linux v6.17-rc1 virt

Re: [PATCH v6 09/14] qmp: update virtio features map to support extended features

2025-09-22 Thread Paolo Abeni
On 9/22/25 2:55 PM, Michael S. Tsirkin wrote: > On Fri, Sep 12, 2025 at 03:07:00PM +0200, Paolo Abeni wrote: >> Extend the VirtioDeviceFeatures struct with an additional u64 >> to track unknown features in the 64-127 bit range and decode >> the full virtio features spaces

[PATCH v6 09/14] qmp: update virtio features map to support extended features

2025-09-20 Thread Paolo Abeni
Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v3 -> v4: - cleanup unknown features init - update QMP example and doc accordingly - use new virtio_features macro names v2 -> v3: - unknown-dev-features-dword2 -> unknown-dev-features2 - _array -> _ex - fixed typo

Re: [PATCH v6 00/14] virtio: introduce support for GSO over UDP tunnel

2025-09-19 Thread Paolo Abeni
Hi Michael, On Fri, Sep 12, 2025 at 9:10 PM Paolo Abeni wrote: > Some virtualized deployments use UDP tunnel pervasively and are impacted > negatively by the lack of GSO support for such kind of traffic in the > virtual NIC driver. > > The virtio_net specification recently introdu

[PATCH v6 10/14] vhost-backend: implement extended features support

2025-09-18 Thread Paolo Abeni
changed belongs to the 64 bit range. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_features macro names v1 -> v2: - synced with kernel ioctl changes --- hw/virtio/vhost-backend.c | 62 ---

[PATCH v6 00/14] virtio: introduce support for GSO over UDP tunnel

2025-09-17 Thread Paolo Abeni
implementation deduplicating a bit of code - many more cleanups, see the individual patches changelog for the details - I left patch 1 unmodified, still some hope we could live with that;) v2: https://lists.gnu.org/archive/html/qemu-devel/2025-07/msg03000.html Paolo Abeni (14): net: bundle all o

[PATCH v6 11/14] vhost-net: implement extended features support

2025-09-17 Thread Paolo Abeni
Provide extended version of the features manipulation helpers, and let the device initialization deal with the full features space, adjusting the relevant format strings accordingly. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v3 -> v4: - add miss

[PATCH v6 03/14] linux-headers: Update to Linux v6.17-rc1

2025-09-17 Thread Paolo Abeni
Update headers to include the virtio GSO over UDP tunnel features Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v4 -> v5: - fetch the headers from the linux vanilla tree instead of net-next --- include/standard-headers/drm/drm_fourcc.h |

[PATCH v6 12/14] virtio-net: implement extended features support

2025-09-15 Thread Paolo Abeni
Use the extended types and helpers to manipulate the virtio_net features. Note that offloads are still 64bits wide, as per specification, and extended offloads will be mapped into such range. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v4 -> v5: - reba

Re: [PATCH v6 09/14] qmp: update virtio features map to support extended features

2025-09-12 Thread Paolo Abeni
On 9/12/25 3:42 PM, Markus Armbruster wrote: > Paolo Abeni writes: > >> Extend the VirtioDeviceFeatures struct with an additional u64 >> to track unknown features in the 64-127 bit range and decode >> the full virtio features spaces for vhost and virtio devices. >&g

[PATCH v6 13/14] net: implement tunnel probing

2025-09-12 Thread Paolo Abeni
to support both of them or none. The new features are disabled by default to avoid compat issues, and could be enabled, after that hw_compat_10_1 will be added, together with the related compat entries. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni -- v4 -> v5

[PATCH v6 08/14] vhost: add support for negotiating extended features

2025-09-12 Thread Paolo Abeni
t going to implement extended features soon. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v3 -> v4: - fix compile warning for real :( - de-duplicate code from vhost_{get,ack}_features and vhost_{get,ack}_features_ex - use new virtio_features macro na

[PATCH v6 05/14] virtio: serialize extended features state

2025-09-12 Thread Paolo Abeni
-by: Paolo Abeni --- v3 -> v4: - move the build bug before vmstate_virtio - use new virtio_features macro names v2 -> v3: - 128bit_features state load/stores only the high bits - consolidate the load implementation to use a single set helper for 128/64/32 bits features - _array ->

[PATCH v6 07/14] virtio-pci: implement support for extended features

2025-09-12 Thread Paolo Abeni
non zero. Relay on reset to clear all the feature space before load. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v5 -> v6: - fixed checkpatch error (missing brackets on a single line statement) v4 -> v5: - add blank line after QEMU_BUILD_BUG_ON()

[PATCH v6 02/14] linux-headers: deal with counted_by annotation

2025-09-12 Thread Paolo Abeni
Such annotation is present into the kernel uAPI headers since v6.7, and will be used soon by the vhost_type.h. Deal with it just stripping it. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- scripts/update-linux-headers.sh | 1 + 1 file changed, 1 insertion

[PATCH v6 14/14] net: implement UDP tunnel features offloading

2025-09-12 Thread Paolo Abeni
or the host negotiated any UDP tunnel related feature: add them to the kernel supported features list, to allow qemu transfer to the backend the needed information. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v3 -> v4: - '|' -> '||'

[PATCH v6 06/14] virtio: add support for negotiating extended features

2025-09-12 Thread Paolo Abeni
es need to implemented a new pair of features getter/setter, the core will conditionally use them instead of the basic one. Note that 'bad_features' don't need to be extended, as they are bound to the 64 bits limit. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by:

[PATCH v6 04/14] virtio: introduce extended features type

2025-09-12 Thread Paolo Abeni
manipulate them. Most drivers will keep using only 64 bits features space: use union to allow them access the lower part of the extended space without any per driver change. Reviewed-by: Akihiko Odaki Acked-by: Jason Wang Signed-off-by: Paolo Abeni --- v5 -> v6: - removed trailing

[PATCH v6 01/14] net: bundle all offloads in a single struct

2025-09-12 Thread Paolo Abeni
The set_offload() argument list is already pretty long and we are going to introduce soon a bunch of additional offloads. Replace the offload arguments with a single struct and update all the relevant call-sites. No functional changes intended. Signed-off-by: Paolo Abeni --- v5 -> v6: -

Re: [PATCH v5 00/13] virtio: introduce support for GSO over UDP tunnel

2025-09-03 Thread Paolo Abeni
On 9/1/25 4:47 AM, Jason Wang wrote: > On Thu, Aug 28, 2025 at 9:47 AM Akihiko Odaki > wrote: >> >> On 2025/08/13 19:28, Paolo Abeni wrote: >>> Some virtualized deployments use UDP tunnel pervasively and are impacted >>> negatively by the lack of GSO sup

Re: [PATCH v5 00/13] virtio: introduce support for GSO over UDP tunnel

2025-08-22 Thread Paolo Abeni
Hi Jason, On Wed, Aug 13, 2025 at 6:30 PM Paolo Abeni wrote: > Some virtualized deployments use UDP tunnel pervasively and are impacted > negatively by the lack of GSO support for such kind of traffic in the > virtual NIC driver. > > The virtio_net specification recently introdu

Re: [PATCH v5] net: bundle all offloads in a single struct

2025-08-13 Thread Paolo Abeni
Hi, On 8/13/25 12:34 PM, Michael Tokarev wrote: > On 13.08.2025 13:26, Paolo Abeni wrote: > >> +typedef struct NetOffloads { >> +bool csum; >> +bool tso4; >> +bool tso6; >> +bool ecn; >> +bool ufo; >> +bool uso4; >> +

[PATCH v5 13/13] net: implement UDP tunnel features offloading

2025-08-13 Thread Paolo Abeni
or the host negotiated any UDP tunnel related feature: add them to the kernel supported features list, to allow qemu transfer to the backend the needed information. Signed-off-by: Paolo Abeni --- v3 -> v4: - '|' -> '||' v2 -> v3: - rebased on top of "net: C

[PATCH v5 10/13] vhost-net: implement extended features support

2025-08-13 Thread Paolo Abeni
Provide extended version of the features manipulation helpers, and let the device initialization deal with the full features space, adjusting the relevant format strings accordingly. Signed-off-by: Paolo Abeni --- v3 -> v4: - add missing features initialization - use new virtio_featu

[PATCH v5 04/13] virtio: serialize extended features state

2025-08-13 Thread Paolo Abeni
of the few spots that need explicitly to know and set in stone the extended features array size; add a build bug to prevent breaking the migration should such size change again in the future: more serialization plumbing will be needed. Signed-off-by: Paolo Abeni --- v3 -> v4: - move the bu

[PATCH v5 06/13] virtio-pci: implement support for extended features

2025-08-13 Thread Paolo Abeni
non zero. Relay on reset to clear all the feature space before load. Signed-off-by: Paolo Abeni --- v4 -> v5: - add blank line after QEMU_BUILD_BUG_ON() - make virtio_pci_select_max() robust vs future feature space increase v3 -> v4: - use new virtio_features macro names - move the

[PATCH v5 03/13] virtio: introduce extended features type

2025-08-13 Thread Paolo Abeni
manipulate them. Most drivers will keep using only 64 bits features space: use union to allow them access the lower part of the extended space without any per driver change. Signed-off-by: Paolo Abeni --- v4 -> v5: - DEFINE_PROP_FEATURE -> VIRTIO_DEFINE_PROP_FEATURE v3 -> v4: - VIR

[PATCH v5 05/13] virtio: add support for negotiating extended features

2025-08-13 Thread Paolo Abeni
es need to implemented a new pair of features getter/setter, the core will conditionally use them instead of the basic one. Note that 'bad_features' don't need to be extended, as they are bound to the 64 bits limit. Signed-off-by: Paolo Abeni --- v4 -> v5: - reord

[PATCH v5 08/13] qmp: update virtio features map to support extended features

2025-08-13 Thread Paolo Abeni
Extend the VirtioDeviceFeatures struct with an additional u64 to track unknown features in the 64-127 bit range and decode the full virtio features spaces for vhost and virtio devices. Also add entries for the soon-to-be-supported virtio net GSO over UDP features. Signed-off-by: Paolo Abeni

[PATCH v5 11/13] virtio-net: implement extended features support

2025-08-13 Thread Paolo Abeni
Use the extended types and helpers to manipulate the virtio_net features. Note that offloads are still 64bits wide, as per specification, and extended offloads will be mapped into such range. Signed-off-by: Paolo Abeni --- v4 -> v5: - rebased on top of 6071d13c6a37 v3 -> v4: - u

[PATCH v5 12/13] net: implement tunnel probing

2025-08-13 Thread Paolo Abeni
to support both of them or none. The new features are disabled by default to avoid compat issues, and could be enabled, after that hw_compat_10_1 will be added, together with the related compat entries. Signed-off-by: Paolo Abeni -- v4 -> v5: - disable features by default - DEFINE

[PATCH v5 07/13] vhost: add support for negotiating extended features

2025-08-13 Thread Paolo Abeni
t going to implement extended features soon. Signed-off-by: Paolo Abeni --- v3 -> v4: - fix compile warning for real :( - de-duplicate code from vhost_{get,ack}_features and vhost_{get,ack}_features_ex - use new virtio_features macro names v2 -> v3: - fix compile warning - _array

[PATCH v5 09/13] vhost-backend: implement extended features support

2025-08-13 Thread Paolo Abeni
changed belongs to the 64 bit range. Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_features macro names v1 -> v2: - synced with kernel ioctl changes --- hw/virtio/vhost-backend.c | 62 --- 1 file changed, 51 insertions(+), 11 deletions(-) diff

[PATCH v5 00/13] virtio: introduce support for GSO over UDP tunnel

2025-08-13 Thread Paolo Abeni
- I left patch 1 unmodified, still some hope we could live with that;) v2: https://lists.gnu.org/archive/html/qemu-devel/2025-07/msg03000.html Paolo Abeni (13): linux-headers: deal with counted_by annotation linux-headers: Update to Linux v6.17-rc1 virtio: introduce extended features type v

[PATCH v5 02/13] linux-headers: Update to Linux v6.17-rc1

2025-08-13 Thread Paolo Abeni
Update headers to include the virtio GSO over UDP tunnel features Signed-off-by: Paolo Abeni -- v4 -> v5: - fetch the headers from the linux vanilla tree instead of net-next --- include/standard-headers/drm/drm_fourcc.h | 56 ++- include/standard-headers/linux/ethtool.h |

[PATCH v5 01/13] linux-headers: deal with counted_by annotation

2025-08-13 Thread Paolo Abeni
Such annotation is present into the kernel uAPI headers since v6.7, and will be used soon by the vhost_type.h. Deal with it just stripping it. Signed-off-by: Paolo Abeni --- scripts/update-linux-headers.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/update-linux-headers.sh b

[PATCH v5] net: bundle all offloads in a single struct

2025-08-13 Thread Paolo Abeni
The set_offload() argument list is already pretty long and we are going to introduce soon a bunch of additional offloads. Replace the offload arguments with a single struct and update all the relevant call-sites. No functional changes intended. Signed-off-by: Paolo Abeni --- v4 -> v5: - s

Re: [RFC PATCH v4 07/14] virtio-pci: implement support for extended features

2025-08-13 Thread Paolo Abeni
On 8/13/25 7:55 AM, Jason Wang wrote: > On Tue, Aug 12, 2025 at 4:03 PM Akihiko Odaki > wrote: >> >> On 2025/08/12 13:01, Jason Wang wrote: >>> On Fri, Aug 8, 2025 at 12:55 PM Akihiko Odaki >>> wrote: >>>> >>>> On 2025/08/08 5:18, Paol

Re: [RFC PATCH v4 07/14] virtio-pci: implement support for extended features

2025-08-07 Thread Paolo Abeni
On 7/26/25 1:52 PM, Akihiko Odaki wrote: > On 2025/07/24 4:31, Paolo Abeni wrote: >> @@ -1477,6 +1509,13 @@ int virtio_pci_add_shm_cap(VirtIOPCIProxy *proxy, >> return virtio_pci_add_mem_cap(proxy, &cap.cap); >> } >> >> +static int virtio_pc

[RFC PATCH v4 10/14] vhost-backend: implement extended features support

2025-07-23 Thread Paolo Abeni
changed belongs to the 64 bit range. Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_features macro names v1 -> v2: - synced with kernel ioctl changes --- hw/virtio/vhost-backend.c | 62 --- 1 file changed, 51 insertions(+), 11 deletions(-) diff

[RFC PATCH v4 12/14] virtio-net: implement extended features support

2025-07-23 Thread Paolo Abeni
Use the extended types and helpers to manipulate the virtio_net features. Note that offloads are still 64bits wide, as per specification, and extended offloads will be mapped into such range. Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_features macro names v2 -> v3: - r

[RFC PATCH v4 14/14] net: implement UDP tunnel features offloading

2025-07-23 Thread Paolo Abeni
or the host negotiated any UDP tunnel related feature: add them to the kernel supported features list, to allow qemu transfer to the backend the needed information. Signed-off-by: Paolo Abeni --- v3 -> v4: - '|' -> '||' v2 -> v3: - rebased on top of "net: C

[RFC PATCH v4 02/14] linux-headers: deal with counted_by annotation

2025-07-23 Thread Paolo Abeni
Such annotation is present into the kernel uAPI headers since v6.7, and will be used soon by the vhost_type.h. Deal with it just stripping it. Signed-off-by: Paolo Abeni --- scripts/update-linux-headers.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/update-linux-headers.sh b

[RFC PATCH v4 09/14] qmp: update virtio features map to support extended features

2025-07-23 Thread Paolo Abeni
Extend the VirtioDeviceFeatures struct with an additional u64 to track unknown features in the 64-127 bit range and decode the full virtio features spaces for vhost and virtio devices. Also add entries for the soon-to-be-supported virtio net GSO over UDP features. Signed-off-by: Paolo Abeni

[RFC PATCH v4 13/14] net: implement tunnel probing

2025-07-23 Thread Paolo Abeni
to support both of them or none. Note that this will requires a few compat entries after that hw_compat_10_1 will be added. Signed-off-by: Paolo Abeni -- v3 -> v4: - move DEFINE_PROP_FEATURE() in patch 4 v2 -> v3: - use bool type for tap_probe_has_tunnel() - rebased on top of 2deec9a

[RFC PATCH v4 07/14] virtio-pci: implement support for extended features

2025-07-23 Thread Paolo Abeni
non zero. Relay on reset to clear all the feature space before load. Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_features macro names - move the build bug before vmstate_virtio_pci_modern_state_sub v2 -> v3: - drop the pre_load/post_load trickery and relay on reset z

[RFC PATCH v4 04/14] virtio: introduce extended features type

2025-07-23 Thread Paolo Abeni
manipulate them. Most drivers will keep using only 64 bits features space: use union to allow them access the lower part of the extended space without any per driver change. Signed-off-by: Paolo Abeni --- v3 -> v4: - VIRTIO_FEATURES_DWORDS -> VIRTIO_FEATURES_NU64S - VIRTI

[RFC PATCH v4 03/14] linux-headers: Update to Linux ~v6.16-rc7 net-next

2025-07-23 Thread Paolo Abeni
Update headers to include the virtio GSO over UDP tunnel features Signed-off-by: Paolo Abeni -- Note: while the relevant change are not into Linus's tree yet, they have been merged in the net-next tree and they should land into the vanilla tree during the next merge window. --- include/sta

[RFC PATCH v4 05/14] virtio: serialize extended features state

2025-07-23 Thread Paolo Abeni
of the few spots that need explicitly to know and set in stone the extended features array size; add a build bug to prevent breaking the migration should such size change again in the future: more serialization plumbing will be needed. Signed-off-by: Paolo Abeni --- v3 -> v4: - move the bu

[RFC PATCH v4 08/14] vhost: add support for negotiating extended features

2025-07-23 Thread Paolo Abeni
t going to implement extended features soon. Signed-off-by: Paolo Abeni --- v3 -> v4: - fix compile warning for real :( - de-duplicate code from vhost_{get,ack}_features and vhost_{get,ack}_features_ex - use new virtio_features macro names v2 -> v3: - fix compile warning - _array

[RFC PATCH v4 11/14] vhost-net: implement extended features support

2025-07-23 Thread Paolo Abeni
Provide extended version of the features manipulation helpers, and let the device initialization deal with the full features space, adjusting the relevant format strings accordingly. Signed-off-by: Paolo Abeni --- v3 -> v4: - add missing features initialization - use new virtio_featu

[RFC PATCH v4 06/14] virtio: add support for negotiating extended features

2025-07-23 Thread Paolo Abeni
es need to implemented a new pair of features getter/setter, the core will conditionally use them instead of the basic one. Note that 'bad_features' don't need to be extended, as they are bound to the 64 bits limit. Signed-off-by: Paolo Abeni --- v3 -> v4: - use new virtio_fe

[RFC PATCH v4 01/14] net: bundle all offloads in a single struct

2025-07-23 Thread Paolo Abeni
The set_offload() argument list is already pretty long and we are going to introduce soon a bunch of additional offloads. Replace the offload arguments with a single struct and update all the relevant call-sites. No functional changes intended. Signed-off-by: Paolo Abeni --- v3 ->

[RFC PATCH v4 00/14] virtio: introduce support for GSO over UDP tunnel

2025-07-23 Thread Paolo Abeni
see the individual patches changelog for the details - I left patch 1 unmodified, still some hope we could live with that;) Paolo Abeni (14): net: bundle all offloads in a single struct linux-headers: deal with counted_by annotation linux-headers: Update to Linux ~v6.16-rc7 net-next

Re: [PATCH RFC v3 06/13] virtio-pci: implement support for extended features

2025-07-23 Thread Paolo Abeni
On 7/23/25 7:47 AM, Jason Wang wrote: > On Tue, Jul 22, 2025 at 3:37 PM Paolo Abeni wrote: >> >> On 7/22/25 5:28 AM, Jason Wang wrote: >>> On Fri, Jul 18, 2025 at 4:53 PM Paolo Abeni wrote: >>>> >>>> Extend the features configuration space t

Re: [PATCH RFC v3 07/13] vhost: add support for negotiating extended features

2025-07-22 Thread Paolo Abeni
On 7/22/25 5:32 AM, Jason Wang wrote: > On Fri, Jul 18, 2025 at 4:53 PM Paolo Abeni wrote: >> >> Similar to virtio infra, vhost core maintains the features status >> in the full extended format and allows the devices to implement >> extended version of the get

Re: [PATCH RFC v3 06/13] virtio-pci: implement support for extended features

2025-07-22 Thread Paolo Abeni
On 7/22/25 5:28 AM, Jason Wang wrote: > On Fri, Jul 18, 2025 at 4:53 PM Paolo Abeni wrote: >> >> Extend the features configuration space to 128 bits, and allow the >> common read/write operation to access all of it. >> >> On migration, save the 128 bit version of

Re: [PATCH RFC v3 12/13] net: implement tunnel probing

2025-07-22 Thread Paolo Abeni
On 7/22/25 5:50 AM, Jason Wang wrote: > On Fri, Jul 18, 2025 at 4:54 PM Paolo Abeni wrote: >> Tap devices support GSO over UDP tunnel offload. Probe for such >> feature in a similar manner to other offloads. >> >> GSO over UDP tunnel needs to be enabled in addition to a

Re: [PATCH RFC v3 12/13] net: implement tunnel probing

2025-07-21 Thread Paolo Abeni
On 7/18/25 1:17 PM, Stefano Garzarella wrote: > On Fri, Jul 18, 2025 at 10:52:38AM +0200, Paolo Abeni wrote: >> @@ -4245,6 +4274,14 @@ static const Property virtio_net_properties[] = { >> rss_data.speci

Re: [PATCH RFC v3 03/13] virtio: introduce extended features type

2025-07-21 Thread Paolo Abeni
On 7/21/25 9:49 AM, Akihiko Odaki wrote: > On 2025/07/21 16:33, Paolo Abeni wrote: >> On 7/20/25 12:41 PM, Akihiko Odaki wrote: >>> On 2025/07/18 17:52, Paolo Abeni wrote: >>>> diff --git a/include/hw/virtio/virtio-features.h >>>> b/include/hw/virtio/v

Re: [PATCH RFC v3 07/13] vhost: add support for negotiating extended features

2025-07-21 Thread Paolo Abeni
On 7/21/25 4:53 AM, Lei Yang wrote: > On Fri, Jul 18, 2025 at 10:37 PM Stefano Garzarella > wrote: >> On Fri, Jul 18, 2025 at 10:52:33AM +0200, Paolo Abeni wrote: >>> Similar to virtio infra, vhost core maintains the features status >>> in the full extended fo

Re: [PATCH RFC v3 08/13] qmp: update virtio features map to support extended features

2025-07-21 Thread Paolo Abeni
On 7/21/25 9:23 AM, Akihiko Odaki wrote: > On 2025/07/18 17:52, Paolo Abeni wrote: >> Extend the VirtioDeviceFeatures struct with an additional u64 >> to track unknown features in the 64-127 bit range and decode >> the full virtio features spaces for vhost and virtio de

Re: [PATCH RFC v3 04/13] virtio: serialize extended features state

2025-07-21 Thread Paolo Abeni
7/20/25 12:44 PM, Akihiko Odaki wrote: > On 2025/07/18 17:52, Paolo Abeni wrote: >> @@ -,26 +3362,23 @@ virtio_load(VirtIODevice *vdev, QEMUFile *f, int >> version_id) >> vdev->device_endian = virtio_default_endian(); >> } >> >>

Re: [PATCH RFC v3 03/13] virtio: introduce extended features type

2025-07-21 Thread Paolo Abeni
On 7/20/25 12:41 PM, Akihiko Odaki wrote: > On 2025/07/18 17:52, Paolo Abeni wrote: >> diff --git a/include/hw/virtio/virtio-features.h >> b/include/hw/virtio/virtio-features.h >> new file mode 100644 >> index 00..68e326e3e8 >> --- /dev/null >> ++

Re: [PATCH RFC v3 08/13] qmp: update virtio features map to support extended features

2025-07-21 Thread Paolo Abeni
On 7/19/25 8:57 AM, Markus Armbruster wrote: > Paolo Abeni writes: > >> Extend the VirtioDeviceFeatures struct with an additional u64 >> to track unknown features in the 64-127 bit range and decode >> the full virtio features spaces for vhost and virtio devices. >&g

Re: [PATCH RFC v3 07/13] vhost: add support for negotiating extended features

2025-07-21 Thread Paolo Abeni
On 7/18/25 4:36 PM, Stefano Garzarella wrote: > On Fri, Jul 18, 2025 at 10:52:33AM +0200, Paolo Abeni wrote: >> @@ -1871,6 +1900,20 @@ uint64_t vhost_get_features(struct vhost_dev *hdev, >> const int *feature_bits, >> return features; >> } >> >> +void

Re: [PATCH RFC v3 10/13] vhost-net: implement extended features support

2025-07-18 Thread Paolo Abeni
On 7/18/25 3:01 PM, Stefano Garzarella wrote: > On Fri, Jul 18, 2025 at 10:52:36AM +0200, Paolo Abeni wrote: >> @@ -234,7 +234,8 @@ struct vhost_net *vhost_net_init(VhostNetOptions >> *options) >> int r; >> bool backend_kernel = options->backend_typ

Re: [PATCH RFC v3 13/13] net: implement UDP tunnel features offloading

2025-07-18 Thread Paolo Abeni
On 7/18/25 3:22 PM, Stefano Garzarella wrote: > On Fri, Jul 18, 2025 at 10:52:39AM +0200, Paolo Abeni wrote: >> diff --git a/net/tap.c b/net/tap.c >> index 23c6c118e7..2dfa843547 100644 >> --- a/net/tap.c >> +++ b/net/tap.c >> @@ -62,6 +62,8 @@ sta

Re: [PATCH RFC v3 08/13] qmp: update virtio features map to support extended features

2025-07-18 Thread Paolo Abeni
On 7/18/25 12:18 PM, Stefano Garzarella wrote: > On Fri, Jul 18, 2025 at 10:52:34AM +0200, Paolo Abeni wrote: >> diff --git a/hw/virtio/virtio-qmp.c b/hw/virtio/virtio-qmp.c >> index 3b6377cf0d..03c6163cf4 100644 >> --- a/hw/virtio/virtio-qmp.c >> +++ b/hw/virtio/virtio

[PATCH RFC v3 12/13] net: implement tunnel probing

2025-07-18 Thread Paolo Abeni
to support both of them or none. Signed-off-by: Paolo Abeni --- v2 -> v3: - use bool type for tap_probe_has_tunnel() - rebased on top of 2deec9ab7d ("virtio-net: Move virtio_net_get_features() down") - _array -> _ex v1 -> v2: - peer_has_tunnel return a bool -

[PATCH RFC v3 03/13] virtio: introduce extended features type

2025-07-18 Thread Paolo Abeni
manipulate them. Most drivers will keep using only 64 bits features space: use union to allow them access the lower part of the extended space without any per driver change. Signed-off-by: Paolo Abeni --- v2 -> v3: - fix preprocessor guard name - use BIT_ULL - add missing parentheses

[PATCH RFC v3 09/13] vhost-backend: implement extended features support

2025-07-18 Thread Paolo Abeni
changed belongs to the 64 bit range. Signed-off-by: Paolo Abeni --- v1 -> v2: - synced with kernel ioctl changes --- hw/virtio/vhost-backend.c | 62 --- 1 file changed, 51 insertions(+), 11 deletions(-) diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vh

[PATCH RFC v3 04/13] virtio: serialize extended features state

2025-07-18 Thread Paolo Abeni
of the few spots that need explicitly to know and set in stone the extended features array size; add a build bug to prevent breaking the migration should such size change again in the future: more serialization plumbing will be needed. Signed-off-by: Paolo Abeni --- v2 -> v3: - 128bit_featu

[PATCH RFC v3 13/13] net: implement UDP tunnel features offloading

2025-07-18 Thread Paolo Abeni
or the host negotiated any UDP tunnel related feature: add them to the kernel supported features list, to allow qemu transfer to the backend the needed information. Signed-off-by: Paolo Abeni --- v2 -> v3: - rebased on top of "net: Consolidate vhost feature bits into vhost_net s

[PATCH RFC v3 10/13] vhost-net: implement extended features support

2025-07-18 Thread Paolo Abeni
Provide extended version of the features manipulation helpers, and let the device initialization deal with the full features space, adjusting the relevant format strings accordingly. Signed-off-by: Paolo Abeni --- v2 -> v3: - use virtio_features_andnot return value instead

[PATCH RFC v3 05/13] virtio: add support for negotiating extended features

2025-07-18 Thread Paolo Abeni
es need to implemented a new pair of features getter/setter, the core will conditionally use them instead of the basic one. Note that 'bad_features' don't need to be extended, as they are bound to the 64 bits limit. Signed-off-by: Paolo Abeni --- v2 -> v3: - _array -&g

[PATCH RFC v3 08/13] qmp: update virtio features map to support extended features

2025-07-18 Thread Paolo Abeni
Extend the VirtioDeviceFeatures struct with an additional u64 to track unknown features in the 64-127 bit range and decode the full virtio features spaces for vhost and virtio devices. Also add entries for the soon-to-be-supported virtio net GSO over UDP features. Signed-off-by: Paolo Abeni

[PATCH RFC v3 11/13] virtio-net: implement extended features support

2025-07-18 Thread Paolo Abeni
Use the extended types and helpers to manipulate the virtio_net features. Note that offloads are still 64bits wide, as per specification, and extended offloads will be mapped into such range. Signed-off-by: Paolo Abeni --- v2 -> v3: - rebased on top of 2deec9ab7d ("virtio-n

[PATCH RFC v3 02/13] linux-headers: Update to Linux ~v6.16-rc5 net-next

2025-07-18 Thread Paolo Abeni
Update headers to include the virtio GSO over UDP tunnel features Signed-off-by: Paolo Abeni -- Note: while the relevant change are not into Linus's tree yet, they have been merged in the net-next tree and they should land into the vanilla tree during the next merge window. --- include/sta

[PATCH RFC v3 01/13] net: bundle all offloads in a single struct

2025-07-18 Thread Paolo Abeni
The set_offload() argument list is already pretty long and we are going to introduce soon a bunch of additional offloads. Replace the offload arguments with a single struct and update all the relevant call-sites. No functional changes intended. Signed-off-by: Paolo Abeni --- Note: I maintained

[PATCH RFC v3 06/13] virtio-pci: implement support for extended features

2025-07-18 Thread Paolo Abeni
Extend the features configuration space to 128 bits, and allow the common read/write operation to access all of it. On migration, save the 128 bit version of the features only if the upper bits are non zero. Relay reset to clear all the feature space before load. Signed-off-by: Paolo Abeni

[PATCH RFC v3 07/13] vhost: add support for negotiating extended features

2025-07-18 Thread Paolo Abeni
t going to implement extended features soon. Signed-off-by: Paolo Abeni --- v2 -> v3: - fix compile warning - _array -> _ex v1 -> v2: - uint128_t -> uint64_t[] - add _ex() variant of features manipulation helpers --- hw/virtio/vhost.c | 73 +++-

[PATCH RFC v3 00/13] virtio: introduce support for GSO over UDP tunnel

2025-07-18 Thread Paolo Abeni
og for the details - I left patch 1 unmodified, still some hope we could live with that;) Paolo Abeni (13): net: bundle all offloads in a single struct linux-headers: Update to Linux ~v6.16-rc5 net-next virtio: introduce extended features type virtio: serialize extended features sta

Re: boot failure on top of current git

2025-07-16 Thread Paolo Abeni
On 7/16/25 6:13 PM, Zhao Liu wrote: > On Wed, Jul 16, 2025 at 05:22:46PM +0200, Paolo Bonzini wrote: >> Date: Wed, 16 Jul 2025 17:22:46 +0200 >> From: Paolo Bonzini >> Subject: Re: boot failure on top of current git >> >> On 7/16/25 16:44, Paolo Abeni wrote: &

Re: boot failure on top of current git

2025-07-16 Thread Paolo Abeni
On 7/16/25 5:39 PM, Paolo Bonzini wrote: > On Wed, Jul 16, 2025 at 5:26 PM Paolo Abeni wrote: >> On 7/16/25 5:22 PM, Paolo Bonzini wrote: >>> On 7/16/25 16:44, Paolo Abeni wrote: >>>> I'm observing boot failure for a rhel-9.7 VM. I'm using qemu git tree at

Re: boot failure on top of current git

2025-07-16 Thread Paolo Abeni
On 7/16/25 5:26 PM, Paolo Abeni wrote: > On 7/16/25 5:22 PM, Paolo Bonzini wrote: >> On 7/16/25 16:44, Paolo Abeni wrote: >>> I'm observing boot failure for a rhel-9.7 VM. I'm using qemu git tree at >>> commit c079d3a31e. >> >> No and I cannot re

Re: boot failure on top of current git

2025-07-16 Thread Paolo Abeni
On 7/16/25 5:22 PM, Paolo Bonzini wrote: > On 7/16/25 16:44, Paolo Abeni wrote: >> I'm observing boot failure for a rhel-9.7 VM. I'm using qemu git tree at >> commit c079d3a31e. > > No and I cannot reproduce it. > > What host is it (processor) and kernel v

boot failure on top of current git

2025-07-16 Thread Paolo Abeni
Hi, I'm observing boot failure for a rhel-9.7 VM. I'm using qemu git tree at commit c079d3a31e. My local conf is: /configure --enable-kvm --enable-lto --target-list=x86_64-softmmu enable-numa --enable-curses --enable-vhost-net and the qemu command line: /build/qemu-system-x86_64 -smp 4 -enab

  1   2   >