On 5/7/26 11:23, Song Gao wrote:
diff --git a/include/standard-headers/linux/virtio_ring.h
b/include/standard-headers/linux/virtio_ring.h
index 22f6eb8ca7..7baf1968a3 100644
--- a/include/standard-headers/linux/virtio_ring.h
+++ b/include/standard-headers/linux/virtio_ring.h
@@ -31,7 +31,6 @@
* SUCH DAMAGE.
*
* Copyright Rusty Russell IBM Corporation 2007. */
-#include <stdint.h>
#include "standard-headers/linux/types.h"
#include "standard-headers/linux/virtio_types.h"
@@ -200,7 +199,7 @@ static inline void vring_init(struct vring *vr, unsigned int num, void *p,
vr->num = num;
vr->desc = p;
vr->avail = (struct vring_avail *)((char *)p + num * sizeof(struct
vring_desc));
- vr->used = (void *)(((uintptr_t)&vr->avail->ring[num] +
sizeof(__virtio16)
+ vr->used = (void *)(((unsigned long)&vr->avail->ring[num] +
sizeof(__virtio16)
+ align-1) & ~(align - 1));
}
The kernel commit 3c4629b68dbe ("virtio: uapi: avoid usage of
libc types") changed this virtio header and this breaks the
build on Windows :
https://gitlab.com/legoater/qemu/-/jobs/14297040230
A fix could be to reintroduce 'uintptr_t' (available through
osdep.h) by modifying the linux headers update script. Ideas ?
Thanks,
C.