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

Re: [Xen-devel] [PATCH 07/10] xen: grant: use xen_pfn_t type for frame_list.



On Wed, 17 Oct 2012, Ian Campbell wrote:
> This correctly sizes it as 64 bit on ARM but leaves it as unsigned
> long on x86 (therefore no intended change on x86).
> 
> The long and ulong guest handles are now unused (and a bit dangerous)
> so remove them.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>


Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

>  arch/arm/include/asm/xen/interface.h |    2 --
>  arch/arm/xen/grant-table.c           |    2 +-
>  arch/x86/include/asm/xen/interface.h |    2 --
>  drivers/xen/grant-table.c            |    8 ++++----
>  include/xen/grant_table.h            |    2 +-
>  include/xen/interface/grant_table.h  |    2 +-
>  6 files changed, 7 insertions(+), 11 deletions(-)
> 
> diff --git a/arch/arm/include/asm/xen/interface.h 
> b/arch/arm/include/asm/xen/interface.h
> index 62160f2..1d6ef9c 100644
> --- a/arch/arm/include/asm/xen/interface.h
> +++ b/arch/arm/include/asm/xen/interface.h
> @@ -37,10 +37,8 @@ typedef uint64_t xen_ulong_t;
>  /* Guest handles for primitive C types. */
>  __DEFINE_GUEST_HANDLE(uchar, unsigned char);
>  __DEFINE_GUEST_HANDLE(uint,  unsigned int);
> -__DEFINE_GUEST_HANDLE(ulong, unsigned long);
>  DEFINE_GUEST_HANDLE(char);
>  DEFINE_GUEST_HANDLE(int);
> -DEFINE_GUEST_HANDLE(long);
>  DEFINE_GUEST_HANDLE(void);
>  DEFINE_GUEST_HANDLE(uint64_t);
>  DEFINE_GUEST_HANDLE(uint32_t);
> diff --git a/arch/arm/xen/grant-table.c b/arch/arm/xen/grant-table.c
> index dbd1330..859a9bb 100644
> --- a/arch/arm/xen/grant-table.c
> +++ b/arch/arm/xen/grant-table.c
> @@ -33,7 +33,7 @@
>  #include <xen/page.h>
>  #include <xen/grant_table.h>
>  
> -int arch_gnttab_map_shared(unsigned long *frames, unsigned long nr_gframes,
> +int arch_gnttab_map_shared(xen_pfn_t *frames, unsigned long nr_gframes,
>                          unsigned long max_nr_gframes,
>                          void **__shared)
>  {
> diff --git a/arch/x86/include/asm/xen/interface.h 
> b/arch/x86/include/asm/xen/interface.h
> index ab3c67c..54d52ff 100644
> --- a/arch/x86/include/asm/xen/interface.h
> +++ b/arch/x86/include/asm/xen/interface.h
> @@ -57,10 +57,8 @@ typedef unsigned long xen_ulong_t;
>  /* Guest handles for primitive C types. */
>  __DEFINE_GUEST_HANDLE(uchar, unsigned char);
>  __DEFINE_GUEST_HANDLE(uint,  unsigned int);
> -__DEFINE_GUEST_HANDLE(ulong, unsigned long);
>  DEFINE_GUEST_HANDLE(char);
>  DEFINE_GUEST_HANDLE(int);
> -DEFINE_GUEST_HANDLE(long);
>  DEFINE_GUEST_HANDLE(void);
>  DEFINE_GUEST_HANDLE(uint64_t);
>  DEFINE_GUEST_HANDLE(uint32_t);
> diff --git a/drivers/xen/grant-table.c b/drivers/xen/grant-table.c
> index b2b0a37..b91f14e 100644
> --- a/drivers/xen/grant-table.c
> +++ b/drivers/xen/grant-table.c
> @@ -84,7 +84,7 @@ struct gnttab_ops {
>        * nr_gframes is the number of frames to map grant table. Returning
>        * GNTST_okay means success and negative value means failure.
>        */
> -     int (*map_frames)(unsigned long *frames, unsigned int nr_gframes);
> +     int (*map_frames)(xen_pfn_t *frames, unsigned int nr_gframes);
>       /*
>        * Release a list of frames which are mapped in map_frames for grant
>        * entry status.
> @@ -960,7 +960,7 @@ static unsigned nr_status_frames(unsigned nr_grant_frames)
>       return (nr_grant_frames * GREFS_PER_GRANT_FRAME + SPP - 1) / SPP;
>  }
>  
> -static int gnttab_map_frames_v1(unsigned long *frames, unsigned int 
> nr_gframes)
> +static int gnttab_map_frames_v1(xen_pfn_t *frames, unsigned int nr_gframes)
>  {
>       int rc;
>  
> @@ -977,7 +977,7 @@ static void gnttab_unmap_frames_v1(void)
>       arch_gnttab_unmap(gnttab_shared.addr, nr_grant_frames);
>  }
>  
> -static int gnttab_map_frames_v2(unsigned long *frames, unsigned int 
> nr_gframes)
> +static int gnttab_map_frames_v2(xen_pfn_t *frames, unsigned int nr_gframes)
>  {
>       uint64_t *sframes;
>       unsigned int nr_sframes;
> @@ -1029,7 +1029,7 @@ static void gnttab_unmap_frames_v2(void)
>  static int gnttab_map(unsigned int start_idx, unsigned int end_idx)
>  {
>       struct gnttab_setup_table setup;
> -     unsigned long *frames;
> +     xen_pfn_t *frames;
>       unsigned int nr_gframes = end_idx + 1;
>       int rc;
>  
> diff --git a/include/xen/grant_table.h b/include/xen/grant_table.h
> index aecee9d..694dcaf 100644
> --- a/include/xen/grant_table.h
> +++ b/include/xen/grant_table.h
> @@ -170,7 +170,7 @@ gnttab_set_unmap_op(struct gnttab_unmap_grant_ref *unmap, 
> phys_addr_t addr,
>       unmap->dev_bus_addr = 0;
>  }
>  
> -int arch_gnttab_map_shared(unsigned long *frames, unsigned long nr_gframes,
> +int arch_gnttab_map_shared(xen_pfn_t *frames, unsigned long nr_gframes,
>                          unsigned long max_nr_gframes,
>                          void **__shared);
>  int arch_gnttab_map_status(uint64_t *frames, unsigned long nr_gframes,
> diff --git a/include/xen/interface/grant_table.h 
> b/include/xen/interface/grant_table.h
> index f9f8b97..e40fae9 100644
> --- a/include/xen/interface/grant_table.h
> +++ b/include/xen/interface/grant_table.h
> @@ -310,7 +310,7 @@ struct gnttab_setup_table {
>      uint32_t nr_frames;
>      /* OUT parameters. */
>      int16_t  status;              /* GNTST_* */
> -    GUEST_HANDLE(ulong) frame_list;
> +    GUEST_HANDLE(xen_pfn_t) frame_list;
>  };
>  DEFINE_GUEST_HANDLE_STRUCT(gnttab_setup_table);
>  
> -- 
> 1.7.2.5
> 

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


 


Rackspace

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