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 <sstabellini@kernel.org>
Reviewed-by: Juergen Gross <jgross@suse.com>
Release-acked-by: Wei Liu <wei.liu2@citrix.com>
This commit is contained in:
Stefano Stabellini 2016-10-21 12:08:27 -07:00
parent b49e452fe9
commit c6d25aa6ba

View File

@ -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);
}
}