From: Stefano Stabellini Date: Fri, 21 Oct 2016 19:08:27 +0000 (-0700) Subject: xen-usb: do not reference PAGE_SIZE X-Git-Tag: qemu-xen-4.9.0-rc1~127^2~2 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=c6d25aa6bab44e841ef6585cbbd9af05b7a90b65;p=qemu-xen.git xen-usb: do not reference PAGE_SIZE PAGE_SIZE is undefined on ARM64. Use XC_PAGE_SIZE instead, which is always 4096 even when page granularity is 64K. For this to actually work with 64K pages, more changes are required. Signed-off-by: Stefano Stabellini Reviewed-by: Juergen Gross Release-acked-by: Wei Liu --- diff --git a/hw/usb/xen-usb.c b/hw/usb/xen-usb.c index 174d715e3e..de2ebd6210 100644 --- a/hw/usb/xen-usb.c +++ b/hw/usb/xen-usb.c @@ -160,7 +160,7 @@ static int usbback_gnttab_map(struct usbback_req *usbback_req) for (i = 0; i < nr_segs; i++) { if ((unsigned)usbback_req->req.seg[i].offset + - (unsigned)usbback_req->req.seg[i].length > PAGE_SIZE) { + (unsigned)usbback_req->req.seg[i].length > XC_PAGE_SIZE) { xen_be_printf(xendev, 0, "segment crosses page boundary\n"); return -EINVAL; } @@ -183,7 +183,7 @@ static int usbback_gnttab_map(struct usbback_req *usbback_req) for (i = 0; i < usbback_req->nr_buffer_segs; i++) { seg = usbback_req->req.seg + i; - addr = usbback_req->buffer + i * PAGE_SIZE + seg->offset; + addr = usbback_req->buffer + i * XC_PAGE_SIZE + seg->offset; qemu_iovec_add(&usbback_req->packet.iov, addr, seg->length); } }