On 08/07/2015 12:34 PM, Julien Grall wrote:
The variable xen_store_mfn is effectively storing a GFN and not an MFN.

Signed-off-by: Julien Grall <julien.gr...@citrix.com>

---
Cc: Konrad Rzeszutek Wilk <konrad.w...@oracle.com>
Cc: Boris Ostrovsky <boris.ostrov...@oracle.com>
Cc: David Vrabel <david.vra...@citrix.com>

     I think that the assignation of xen_start_info in
     xenstored_local_init is pointless. Although I haven't drop it just
     in case.

I think so too (but that would be a separate patch if you decide to do it).

Reviewed-by: Boris Ostrovsky <boris.ostrov...@oracle.com>


     Changes in v3:
         - Patch added.
---
  drivers/xen/xenbus/xenbus_probe.c | 14 +++++++-------
  1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/xen/xenbus/xenbus_probe.c 
b/drivers/xen/xenbus/xenbus_probe.c
index b3870f4..3cbe055 100644
--- a/drivers/xen/xenbus/xenbus_probe.c
+++ b/drivers/xen/xenbus/xenbus_probe.c
@@ -75,7 +75,7 @@ EXPORT_SYMBOL_GPL(xen_store_interface);
  enum xenstore_init xen_store_domain_type;
  EXPORT_SYMBOL_GPL(xen_store_domain_type);
-static unsigned long xen_store_mfn;
+static unsigned long xen_store_gfn;
static BLOCKING_NOTIFIER_HEAD(xenstore_chain); @@ -711,7 +711,7 @@ static int __init xenstored_local_init(void)
        if (!page)
                goto out_err;
- xen_store_mfn = xen_start_info->store_mfn = virt_to_gfn((void *)page);
+       xen_store_gfn = xen_start_info->store_mfn = virt_to_gfn((void *)page);
/* Next allocate a local port which xenstored can bind to */
        alloc_unbound.dom        = DOMID_SELF;
@@ -785,12 +785,12 @@ static int __init xenbus_init(void)
                err = xenstored_local_init();
                if (err)
                        goto out_error;
-               xen_store_interface = gfn_to_virt(xen_store_mfn);
+               xen_store_interface = gfn_to_virt(xen_store_gfn);
                break;
        case XS_PV:
                xen_store_evtchn = xen_start_info->store_evtchn;
-               xen_store_mfn = xen_start_info->store_mfn;
-               xen_store_interface = gfn_to_virt(xen_store_mfn);
+               xen_store_gfn = xen_start_info->store_mfn;
+               xen_store_interface = gfn_to_virt(xen_store_gfn);
                break;
        case XS_HVM:
                err = hvm_get_parameter(HVM_PARAM_STORE_EVTCHN, &v);
@@ -800,9 +800,9 @@ static int __init xenbus_init(void)
                err = hvm_get_parameter(HVM_PARAM_STORE_PFN, &v);
                if (err)
                        goto out_error;
-               xen_store_mfn = (unsigned long)v;
+               xen_store_gfn = (unsigned long)v;
                xen_store_interface =
-                       xen_remap(xen_store_mfn << PAGE_SHIFT, PAGE_SIZE);
+                       xen_remap(xen_store_gfn << PAGE_SHIFT, PAGE_SIZE);
                break;
        default:
                pr_warn("Xenstore state unknown\n");

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to