[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] libxl: fix compilation on ARM
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@xxxxxxxxxxxxx> > 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@xxxxxxxxx> > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> > Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx> > --- > 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@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |