[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH for-4.6] libxl: use correct command line for arm guests.
On Thu, Aug 06, 2015 at 11:55:57AM +0100, Ian Campbell wrote: > We need to use libxl__domain_build_state.pv_cmdline in order to pickup > the correct args when using pygrub. libxl_domain_build_info.cmdline is > any args statically configured by the user. > > This is consistent with the call to xc_domain_allocate, which takes > the cmdline too (in that case for x86/PV usage). > > state->pv_cmdline is also set for non-pygrub guests, since > libxl_bootloader_run propagates info->cmdline if no bootloader is libxl__bootloader_run > condfigured. > > Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx> > --- > For 4.6: This makes pygrub work on ARM. > It's very low risk. Apply as you see fit. > Should also be backported. > --- > tools/libxl/libxl_arm.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/tools/libxl/libxl_arm.c b/tools/libxl/libxl_arm.c > index 42ab6d8..a310737 100644 > --- a/tools/libxl/libxl_arm.c > +++ b/tools/libxl/libxl_arm.c > @@ -260,6 +260,7 @@ static int make_root_properties(libxl__gc *gc, > } > > static int make_chosen_node(libxl__gc *gc, void *fdt, bool ramdisk, > + libxl__domain_build_state *state, > const libxl_domain_build_info *info) > { > int res; > @@ -268,8 +269,9 @@ static int make_chosen_node(libxl__gc *gc, void *fdt, > bool ramdisk, > res = fdt_begin_node(fdt, "chosen"); > if (res) return res; > > - if (info->cmdline) { > - res = fdt_property_string(fdt, "bootargs", info->cmdline); > + if (state->pv_cmdline) { > + LOG(DEBUG, "/chosen/bootargs = %s", state->pv_cmdline); > + res = fdt_property_string(fdt, "bootargs", state->pv_cmdline); > if (res) return res; > } > > @@ -831,7 +833,7 @@ next_resize: > FDT( fdt_begin_node(fdt, "") ); > > FDT( make_root_properties(gc, vers, fdt) ); > - FDT( make_chosen_node(gc, fdt, !!dom->ramdisk_blob, info) ); > + FDT( make_chosen_node(gc, fdt, !!dom->ramdisk_blob, state, info) ); > FDT( make_cpus_node(gc, fdt, info->max_vcpus, ainfo) ); > FDT( make_psci_node(gc, fdt) ); > > -- > 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |