virtio: fix vring_align() on 64-bit windows
long is 32-bits on 64-bit windows, which caused the top half of the address to be truncated; this patch changes it to use the QEMU_ALIGN_UP macro which does not suffer the same problem Signed-off-by: Andrew Baumann <Andrew.Baumann@microsoft.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
parent
c53598ed18
commit
b8adbc6578
|
@ -34,7 +34,7 @@ struct VirtQueue;
|
|||
static inline hwaddr vring_align(hwaddr addr,
|
||||
unsigned long align)
|
||||
{
|
||||
return (addr + align - 1) & ~(align - 1);
|
||||
return QEMU_ALIGN_UP(addr, align);
|
||||
}
|
||||
|
||||
typedef struct VirtQueue VirtQueue;
|
||||
|
|
Loading…
Reference in a new issue