xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Wei Liu <wei.liu2@citrix.com>
To: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: Xen-devel <xen-devel@lists.xenproject.org>,
	Changlong Xie <xiecl.fnst@cn.fujitsu.com>,
	Wei Liu <wei.liu2@citrix.com>,
	Wen Congyang <wency@cn.fujitsu.com>
Subject: Re: [PATCH] libxl: fix compilation on ARM
Date: Mon, 4 Apr 2016 11:51:12 +0100	[thread overview]
Message-ID: <20160404105112.GE25710@citrix.com> (raw)
In-Reply-To: <22274.18075.802554.440487@mariner.uk.xensource.com>

On Mon, Apr 04, 2016 at 11:48:59AM +0100, Ian Jackson wrote:
> Ian Jackson writes ("Re: [PATCH] libxl: fix compilation on ARM"):
> > Following discussion on irc, here is a v2:
> 
> I forgot to update the commit message.
> 
> Ian.
> 
> From 4cbc583020642d6c333d07e297c52594bb88b542 Mon Sep 17 00:00:00 2001
> From: Ian Jackson <ian.jackson@eu.citrix.com>
> Date: Mon, 4 Apr 2016 11:41:19 +0100
> Subject: [PATCH] libxl: ARM build: fix type of libxl__srm_callout_callback_restore_results
> 
> COLO introduced a few callbacks. The original implementation used
> unsigned long for a type which in fact should be xen_pfn_t. That broke
> libxl compilation on ARM, because xen_pfn_t is not a synonym for
> unsigned long on ARM platform.
> 
> Fixing this requires modifying the perl script: specifically now we
> need to include xenctrl.h before _libxl_save_msgs_*.h, rather than
> afterwards, so that we can use xen_pfn_t there.
> 
> Reported-by: Olaf Hering <olaf@aepfle.de>
> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>

Acked-by: Wei Liu <wei.liu2@citrix.com>

> ---
>  tools/libxl/libxl_create.c         |    4 ++--
>  tools/libxl/libxl_save_msgs_gen.pl |    8 ++++----
>  2 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
> index 6882ff8..4b02de9 100644
> --- a/tools/libxl/libxl_create.c
> +++ b/tools/libxl/libxl_create.c
> @@ -1109,8 +1109,8 @@ static void domcreate_bootloader_done(libxl__egc *egc,
>      domcreate_stream_done(egc, &dcs->srs, rc);
>  }
>  
> -void libxl__srm_callout_callback_restore_results(unsigned long store_mfn,
> -          unsigned long console_mfn, void *user)
> +void libxl__srm_callout_callback_restore_results(xen_pfn_t store_mfn,
> +          xen_pfn_t console_mfn, void *user)
>  {
>      libxl__save_helper_state *shs = user;
>      libxl__domain_create_state *dcs = shs->caller_state;
> diff --git a/tools/libxl/libxl_save_msgs_gen.pl b/tools/libxl/libxl_save_msgs_gen.pl
> index c2243f2..3ae7373 100755
> --- a/tools/libxl/libxl_save_msgs_gen.pl
> +++ b/tools/libxl/libxl_save_msgs_gen.pl
> @@ -29,8 +29,8 @@ our @msgs = (
>      [  6, 'srcxA',  "wait_checkpoint", [] ],
>      [  7, 'scxA',   "switch_qemu_logdirty",  [qw(int domid
>                                                unsigned enable)] ],
> -    [  8, 'rcx',    "restore_results",       ['unsigned long', 'store_gfn',
> -                                              'unsigned long', 'console_gfn'] ],
> +    [  8, 'rcx',    "restore_results",       ['xen_pfn_t', 'store_gfn',
> +                                              'xen_pfn_t', 'console_gfn'] ],
>      [  9, 'srW',    "complete",              [qw(int retval
>                                                   int errnoval)] ],
>  );
> @@ -70,9 +70,9 @@ END_BOTH
>  
>  END_CALLOUT
>  
> -#include "_libxl_save_msgs_${ah}.h"
>  #include <xenctrl.h>
>  #include <xenguest.h>
> +#include "_libxl_save_msgs_${ah}.h"
>  
>  END_HELPER
>  }
> @@ -141,7 +141,7 @@ static void bytes_put(unsigned char *const buf, int *len,
>  
>  END
>  
> -foreach my $simpletype (qw(int uint16_t uint32_t unsigned), 'unsigned long') {
> +foreach my $simpletype (qw(int uint16_t uint32_t unsigned), 'unsigned long', 'xen_pfn_t') {
>      my $typeid = typeid($simpletype);
>      $out_body{'callout'} .= <<END;
>  static int ${typeid}_get(const unsigned char **msg,
> -- 
> 1.7.10.4
> 

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

  reply	other threads:[~2016-04-04 10:50 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-02  0:36 [PATCH] libxl: fix compilation on ARM Wei Liu
2016-04-04 10:46 ` Ian Jackson
2016-04-04 10:48   ` Ian Jackson
2016-04-04 10:51     ` Wei Liu [this message]
2016-04-04 10:51       ` Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160404105112.GE25710@citrix.com \
    --to=wei.liu2@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=wency@cn.fujitsu.com \
    --cc=xen-devel@lists.xenproject.org \
    --cc=xiecl.fnst@cn.fujitsu.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).