Commit 433b7ecd38 for qemu.org
commit 433b7ecd3861a44557ed7966644539828f24d762
Author: Cédric Le Goater <clg@redhat.com>
Date: Mon May 11 13:19:13 2026 +0200
update-linux-headers: Inject VIRTIO_RING_NO_LEGACY in virtio_ring.h
The kernel commit 3c4629b68dbe ("virtio: uapi: avoid usage of libc
types") changed the virtio_ring.h header and this breaks the build on
Windows which requires the uintptr_t type to cast from pointer to
integer.
Inject '#define VIRTIO_RING_NO_LEGACY' at the top of the synced header
via the update script after the include guard. This discards the code
section incompatible with Windows.
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20260511111913.3327672-1-clg@redhat.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
diff --git a/scripts/update-linux-headers.sh b/scripts/update-linux-headers.sh
index 386d7a38e7..0dea7c9551 100755
--- a/scripts/update-linux-headers.sh
+++ b/scripts/update-linux-headers.sh
@@ -103,6 +103,7 @@ cp_portable() {
-e 's/__kernel_ulong_t/unsigned long/' \
-e 's/struct ethhdr/struct eth_header/' \
-e '/\#define _LINUX_ETHTOOL_H/a \\n\#include "net/eth.h"' \
+ -e '/\#define _LINUX_VIRTIO_RING_H/a \\n\#define VIRTIO_RING_NO_LEGACY' \
"$f" > "$to/$header";
}