lkml.org 
[lkml]   [2015]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 10/20] xen/xenbus: Use Xen page definition
On Thu, 9 Jul 2015, Julien Grall wrote:
> All the ring (xenstore, and PV rings) are always based on the page
> granularity of Xen.
>
> Signed-off-by: Julien Grall <julien.grall@citrix.com>
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> Cc: David Vrabel <david.vrabel@citrix.com>

Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>


> Changes in v2:
> - Also update the ring mapping function
> ---
> drivers/xen/xenbus/xenbus_client.c | 6 +++---
> drivers/xen/xenbus/xenbus_probe.c | 4 ++--
> 2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/xen/xenbus/xenbus_client.c b/drivers/xen/xenbus/xenbus_client.c
> index 9ad3272..80272f6 100644
> --- a/drivers/xen/xenbus/xenbus_client.c
> +++ b/drivers/xen/xenbus/xenbus_client.c
> @@ -388,7 +388,7 @@ int xenbus_grant_ring(struct xenbus_device *dev, void *vaddr,
> }
> grefs[i] = err;
>
> - vaddr = vaddr + PAGE_SIZE;
> + vaddr = vaddr + XEN_PAGE_SIZE;
> }
>
> return 0;
> @@ -555,7 +555,7 @@ static int xenbus_map_ring_valloc_pv(struct xenbus_device *dev,
> if (!node)
> return -ENOMEM;
>
> - area = alloc_vm_area(PAGE_SIZE * nr_grefs, ptes);
> + area = alloc_vm_area(XEN_PAGE_SIZE * nr_grefs, ptes);
> if (!area) {
> kfree(node);
> return -ENOMEM;
> @@ -750,7 +750,7 @@ static int xenbus_unmap_ring_vfree_pv(struct xenbus_device *dev, void *vaddr)
> unsigned long addr;
>
> memset(&unmap[i], 0, sizeof(unmap[i]));
> - addr = (unsigned long)vaddr + (PAGE_SIZE * i);
> + addr = (unsigned long)vaddr + (XEN_PAGE_SIZE * i);
> unmap[i].host_addr = arbitrary_virt_to_machine(
> lookup_address(addr, &level)).maddr;
> unmap[i].dev_bus_addr = 0;
> diff --git a/drivers/xen/xenbus/xenbus_probe.c b/drivers/xen/xenbus/xenbus_probe.c
> index 4308fb3..c67e5ba 100644
> --- a/drivers/xen/xenbus/xenbus_probe.c
> +++ b/drivers/xen/xenbus/xenbus_probe.c
> @@ -713,7 +713,7 @@ static int __init xenstored_local_init(void)
>
> xen_store_mfn = xen_start_info->store_mfn =
> pfn_to_mfn(virt_to_phys((void *)page) >>
> - PAGE_SHIFT);
> + XEN_PAGE_SHIFT);
>
> /* Next allocate a local port which xenstored can bind to */
> alloc_unbound.dom = DOMID_SELF;
> @@ -804,7 +804,7 @@ static int __init xenbus_init(void)
> goto out_error;
> xen_store_mfn = (unsigned long)v;
> xen_store_interface =
> - xen_remap(xen_store_mfn << PAGE_SHIFT, PAGE_SIZE);
> + xen_remap(xen_store_mfn << XEN_PAGE_SHIFT, XEN_PAGE_SIZE);
> break;
> default:
> pr_warn("Xenstore state unknown\n");
> --
> 2.1.4
>


\
 
 \ /
  Last update: 2015-07-16 18:01    [W:0.800 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site