Re: [Xen-devel] [PATCH v2 4/8] xen: Use the correctly the Xen memory terminologies

2015-08-06 Thread Julien Grall
Hi,


On 04/08/15 19:12, Julien Grall wrote:
 diff --git a/include/xen/page.h b/include/xen/page.h
 index c5ed20b..e7e1425 100644
 --- a/include/xen/page.h
 +++ b/include/xen/page.h
 @@ -3,9 +3,9 @@
  
  #include asm/xen/page.h
  
 -static inline unsigned long page_to_mfn(struct page *page)
 +static inline unsigned long page_to_gfn(struct page *page)
  {
 - return pfn_to_mfn(page_to_pfn(page));
 + return pfn_to_gfn(page_to_pfn(page));
  }

I've just noticed that there is a function gfn_to_page used for KVM.

Maybe I should rename page_to_gfn to xen_page_to_gfn to avoid confusion
with KVM one?

Regards,

-- 
Julien Grall
--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Xen-devel] [PATCH v2 4/8] xen: Use the correctly the Xen memory terminologies

2015-08-06 Thread Stefano Stabellini
On Thu, 6 Aug 2015, Julien Grall wrote:
 Hi,
 
 
 On 04/08/15 19:12, Julien Grall wrote:
  diff --git a/include/xen/page.h b/include/xen/page.h
  index c5ed20b..e7e1425 100644
  --- a/include/xen/page.h
  +++ b/include/xen/page.h
  @@ -3,9 +3,9 @@
   
   #include asm/xen/page.h
   
  -static inline unsigned long page_to_mfn(struct page *page)
  +static inline unsigned long page_to_gfn(struct page *page)
   {
  -   return pfn_to_mfn(page_to_pfn(page));
  +   return pfn_to_gfn(page_to_pfn(page));
   }
 
 I've just noticed that there is a function gfn_to_page used for KVM.
 
 Maybe I should rename page_to_gfn to xen_page_to_gfn to avoid confusion
 with KVM one?

Yeah, prepending xen would help to avoid namespace pollution.
--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Xen-devel] [PATCH v2 4/8] xen: Use the correctly the Xen memory terminologies

2015-08-06 Thread Julien Grall
On 06/08/15 12:06, Stefano Stabellini wrote:
 On Thu, 6 Aug 2015, Julien Grall wrote:
 Hi,


 On 04/08/15 19:12, Julien Grall wrote:
 diff --git a/include/xen/page.h b/include/xen/page.h
 index c5ed20b..e7e1425 100644
 --- a/include/xen/page.h
 +++ b/include/xen/page.h
 @@ -3,9 +3,9 @@
  
  #include asm/xen/page.h
  
 -static inline unsigned long page_to_mfn(struct page *page)
 +static inline unsigned long page_to_gfn(struct page *page)
  {
 -   return pfn_to_mfn(page_to_pfn(page));
 +   return pfn_to_gfn(page_to_pfn(page));
  }

 I've just noticed that there is a function gfn_to_page used for KVM.

 Maybe I should rename page_to_gfn to xen_page_to_gfn to avoid confusion
 with KVM one?
 
 Yeah, prepending xen would help to avoid namespace pollution.

Will do. May I keep your Reviewed-by for this mechanical change?

Regards,

-- 
Julien Grall
--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Xen-devel] [PATCH v2 4/8] xen: Use the correctly the Xen memory terminologies

2015-08-06 Thread Stefano Stabellini
On Thu, 6 Aug 2015, Julien Grall wrote:
 On 06/08/15 12:06, Stefano Stabellini wrote:
  On Thu, 6 Aug 2015, Julien Grall wrote:
  Hi,
 
 
  On 04/08/15 19:12, Julien Grall wrote:
  diff --git a/include/xen/page.h b/include/xen/page.h
  index c5ed20b..e7e1425 100644
  --- a/include/xen/page.h
  +++ b/include/xen/page.h
  @@ -3,9 +3,9 @@
   
   #include asm/xen/page.h
   
  -static inline unsigned long page_to_mfn(struct page *page)
  +static inline unsigned long page_to_gfn(struct page *page)
   {
  - return pfn_to_mfn(page_to_pfn(page));
  + return pfn_to_gfn(page_to_pfn(page));
   }
 
  I've just noticed that there is a function gfn_to_page used for KVM.
 
  Maybe I should rename page_to_gfn to xen_page_to_gfn to avoid confusion
  with KVM one?
  
  Yeah, prepending xen would help to avoid namespace pollution.
 
 Will do. May I keep your Reviewed-by for this mechanical change?

Yes

--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Xen-devel] [PATCH v2 4/8] xen: Use the correctly the Xen memory terminologies

2015-08-05 Thread Julien Grall
On 05/08/15 13:19, Boris Ostrovsky wrote:
 On 08/05/2015 06:51 AM, Julien Grall wrote:

 diff --git a/drivers/video/fbdev/xen-fbfront.c
 b/drivers/video/fbdev/xen-fbfront.c
 index 09dc447..25e3cce 100644
 --- a/drivers/video/fbdev/xen-fbfront.c
 +++ b/drivers/video/fbdev/xen-fbfront.c
 @@ -539,7 +539,7 @@ static int xenfb_remove(struct xenbus_device *dev)
  static unsigned long vmalloc_to_mfn(void *address)
{
 -return pfn_to_mfn(vmalloc_to_pfn(address));
 +return pfn_to_gfn(vmalloc_to_pfn(address));
}
 Are you sure? This will return vmalloc_to_pfn(address)).
 I guess you mean vmalloc_to_mfn will return vmalloc_to_pfn?

 If so, it will be only the case on auto-translated case (because pfn ==
 gfn). In the case of PV, the mfn will be returned.
 
 How will mfn be returned on PV when pfn_to_gfn() is an identity function?
 
 static inline unsigned long pfn_to_gfn(unsigned long pfn)
  {
  return pfn;
  }

The identity function is only for ARM guest which are always
auto-translated (arch/arm/include/asm/xen/page.h).

The x86 version contains a check if the guest is auto-translated or not
(arch/x86/include/asm/xen/page.):

static inline unsigned long pfn_to_gfn(unsigned long pfn)
{
if (xen_feature(XENFEAT_auto_translated_physmap))
return pfn;
else
return pfn_to_mfn(pfn);
}

Regards,

-- 
Julien Grall
--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Xen-devel] [PATCH v2 4/8] xen: Use the correctly the Xen memory terminologies

2015-08-05 Thread Boris Ostrovsky

On 08/05/2015 08:33 AM, Julien Grall wrote:

On 05/08/15 13:19, Boris Ostrovsky wrote:

On 08/05/2015 06:51 AM, Julien Grall wrote:

diff --git a/drivers/video/fbdev/xen-fbfront.c
b/drivers/video/fbdev/xen-fbfront.c
index 09dc447..25e3cce 100644
--- a/drivers/video/fbdev/xen-fbfront.c
+++ b/drivers/video/fbdev/xen-fbfront.c
@@ -539,7 +539,7 @@ static int xenfb_remove(struct xenbus_device *dev)
  static unsigned long vmalloc_to_mfn(void *address)
{
-return pfn_to_mfn(vmalloc_to_pfn(address));
+return pfn_to_gfn(vmalloc_to_pfn(address));
}

Are you sure? This will return vmalloc_to_pfn(address)).

I guess you mean vmalloc_to_mfn will return vmalloc_to_pfn?

If so, it will be only the case on auto-translated case (because pfn ==
gfn). In the case of PV, the mfn will be returned.

How will mfn be returned on PV when pfn_to_gfn() is an identity function?

static inline unsigned long pfn_to_gfn(unsigned long pfn)
  {
  return pfn;
  }

The identity function is only for ARM guest which are always
auto-translated (arch/arm/include/asm/xen/page.h).

The x86 version contains a check if the guest is auto-translated or not
(arch/x86/include/asm/xen/page.):

static inline unsigned long pfn_to_gfn(unsigned long pfn)
{
 if (xen_feature(XENFEAT_auto_translated_physmap))
 return pfn;
 else
 return pfn_to_mfn(pfn);
}


Of course --- I was looking at the top of the patch and didn't realize 
it was ARM changes. Sorry for the noise.


-boris
--
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html