|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 09/10] xen: remove XEN_GUEST_HANDLE(ulong)
>>> On 18.10.12 at 09:32, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
> On Thu, 2012-10-18 at 07:50 +0100, Jan Beulich wrote:
>> >>> On 15.10.12 at 17:20, Ian Campbell <ian.campbell@xxxxxxxxxx> wrote:
>> These two must be wrapped in __XEN_INTERFACE_VERSION__
>> conditionals (and __XEN_LATEST_INTERFACE_VERSION__ needs
>> to be bumped accordingly), since the various guest handles are
>> distinct types (i.e. consumers will fail to build if not updated).
>
> Are there external consumers of gnttab_setup_table?
We can't know - it's a public, not tools-only interface.
> Nevertheless, here is the fix.
>
> 8<-----------------------------------------------------
>
> # HG changeset patch
> # User Ian Campbell <ijc@xxxxxxxxxxxxxx>
> # Date 1350544609 -3600
> # Node ID 68f0f7ed3e7b3b7b4b9dbc692a448421ebc31035
> # Parent 5c402b905e00fb0871c3f439c8391dd3cfb3bc10
> xen: retain ulong guest handle for older consumers.
>
> 26072:5529b91bd2e4 removed this but we need to keep it around for
> older consumers. Bump __XEN_LATEST_INTERFACE_VERSION__ accordingly.
>
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
> diff -r 5c402b905e00 -r 68f0f7ed3e7b xen/include/public/grant_table.h
> --- a/xen/include/public/grant_table.h Wed Oct 17 16:43:55 2012 +0100
> +++ b/xen/include/public/grant_table.h Thu Oct 18 08:16:49 2012 +0100
> @@ -385,7 +385,11 @@ struct gnttab_setup_table {
> uint32_t nr_frames;
> /* OUT parameters. */
> int16_t status; /* => enum grant_status */
> +#if __XEN_INTERFACE_VERSION__ < 0x00040300
> + XEN_GUEST_HANDLE(ulong) frame_list;
> +#else
> XEN_GUEST_HANDLE(xen_pfn_t) frame_list;
> +#endif
> };
> typedef struct gnttab_setup_table gnttab_setup_table_t;
> DEFINE_XEN_GUEST_HANDLE(gnttab_setup_table_t);
> diff -r 5c402b905e00 -r 68f0f7ed3e7b xen/include/public/xen-compat.h
> --- a/xen/include/public/xen-compat.h Wed Oct 17 16:43:55 2012 +0100
> +++ b/xen/include/public/xen-compat.h Thu Oct 18 08:16:49 2012 +0100
> @@ -27,7 +27,7 @@
> #ifndef __XEN_PUBLIC_XEN_COMPAT_H__
> #define __XEN_PUBLIC_XEN_COMPAT_H__
>
> -#define __XEN_LATEST_INTERFACE_VERSION__ 0x00040200
> +#define __XEN_LATEST_INTERFACE_VERSION__ 0x00040300
>
> #if defined(__XEN__) || defined(__XEN_TOOLS__)
> /* Xen is built with matching headers and implements the latest interface.
> */
> diff -r 5c402b905e00 -r 68f0f7ed3e7b xen/include/public/xen.h
> --- a/xen/include/public/xen.h Wed Oct 17 16:43:55 2012 +0100
> +++ b/xen/include/public/xen.h Thu Oct 18 08:16:49 2012 +0100
> @@ -43,6 +43,10 @@ DEFINE_XEN_GUEST_HANDLE(char);
> __DEFINE_XEN_GUEST_HANDLE(uchar, unsigned char);
> DEFINE_XEN_GUEST_HANDLE(int);
> __DEFINE_XEN_GUEST_HANDLE(uint, unsigned int);
> +#if __XEN_INTERFACE_VERSION__ < 0x00040300
> +DEFINE_XEN_GUEST_HANDLE(long);
> +__DEFINE_XEN_GUEST_HANDLE(ulong, unsigned long);
> +#endif
> DEFINE_XEN_GUEST_HANDLE(void);
>
> DEFINE_XEN_GUEST_HANDLE(uint64_t);
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |