[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] libxc: Fix the data type of mfn parameter passed to xc_map_foreign_range()



I appear to receive this series out of order.

This one appears in my inbox later then "xenconsole: Change the type of
ring_ref to xen_pfn_t in console_create_ring", which at a glance depends
on this one.

Please resend this series with proper numbering.

On Tue, Oct 17, 2017 at 10:16:32PM +0530, Bhupinder Thakur wrote:
> Currently the data type of mfn paramter passed to xc_map_foreign_range() is 
> unsigned
> long. This could be problem for 32-bit arm architectures where the lengh of 
> long is
> 32 bits while mfn happens to be a 64-bit value.
> 
> To avoid truncating a 64-bit value, the type of mfn is changed from "unsigned 
> long" to
> xen_pfn_t. Also the parameter name "mfn" is changed to "pfn" which is a more 
> accurate
> indication of what this parameter represents.
> 
> Signed-off-by: Bhupinder Thakur <bhupinder.thakur@xxxxxxxxxx>
> ---
> CC: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> CC: Wei Liu <wei.liu2@xxxxxxxxxx>
> CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
> CC: Julien Grall <julien.grall@xxxxxxx>
> 
>  tools/libxc/include/xenctrl_compat.h | 2 +-
>  tools/libxc/xc_foreign_memory.c      | 4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/tools/libxc/include/xenctrl_compat.h 
> b/tools/libxc/include/xenctrl_compat.h
> index a655e47..5ee72bf 100644
> --- a/tools/libxc/include/xenctrl_compat.h
> +++ b/tools/libxc/include/xenctrl_compat.h
> @@ -26,7 +26,7 @@
>   */
>  void *xc_map_foreign_range(xc_interface *xch, uint32_t dom,
>                              int size, int prot,
> -                            unsigned long mfn );
> +                            xen_pfn_t pfn);
>  
>  void *xc_map_foreign_pages(xc_interface *xch, uint32_t dom, int prot,
>                             const xen_pfn_t *arr, int num );
> diff --git a/tools/libxc/xc_foreign_memory.c b/tools/libxc/xc_foreign_memory.c
> index 4053d26..c1f114a 100644
> --- a/tools/libxc/xc_foreign_memory.c
> +++ b/tools/libxc/xc_foreign_memory.c
> @@ -33,7 +33,7 @@ void *xc_map_foreign_pages(xc_interface *xch, uint32_t dom, 
> int prot,
>  
>  void *xc_map_foreign_range(xc_interface *xch,
>                             uint32_t dom, int size, int prot,
> -                           unsigned long mfn)
> +                           xen_pfn_t pfn)
>  {
>      xen_pfn_t *arr;
>      int num;
> @@ -46,7 +46,7 @@ void *xc_map_foreign_range(xc_interface *xch,
>          return NULL;
>  
>      for ( i = 0; i < num; i++ )
> -        arr[i] = mfn + i;
> +        arr[i] = pfn + i;
>  
>      ret = xc_map_foreign_pages(xch, dom, prot, arr, num);
>      free(arr);
> -- 
> 2.7.4
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.