[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen: Allow a default compiled-in command line using Kconfig
It seems that I forgot to cc the corresponding Kconfig maintainers. What's worse, I missed some important details in the patch: 1. the CMDLINE_OVERRRIDE config entry 2. handle dom0 options(the part after " -- ") in CONFIG_CMDLINE. sorry for that. I'll resend v2 of the patch later. 2017-03-06 10:38 GMT+08:00 Sky Liu <blackskygg@xxxxxxxxx>: > Added two new config entries in common/Kconfig: CMDLINE_BOOL and CMDLINE. > These two entries enable an embedded command line > to be compiled in the hypervisor. > If CMDLINE_BOOL is set to Y, both arm and x86 startup routines > will call cmdline_parse() first on CMDLINE, > then on the line passed by the bootloader. > This allows downstreams to set their defaults > without modifying the source code all over the place. > Also probably useful for the embedded space. > > See Also: > https://xenproject.atlassian.net/projects/XEN/issues/XEN-41?filter=allopenissues > > Signed-off-by: Zhongze Liu <blackskygg@xxxxxxxxx> > --- > xen/arch/arm/setup.c | 5 +++++ > xen/arch/x86/setup.c | 5 +++++ > xen/common/Kconfig | 27 +++++++++++++++++++++++++++ > 3 files changed, 37 insertions(+) > > diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c > index 92a2de6b70..55860a1299 100644 > --- a/xen/arch/arm/setup.c > +++ b/xen/arch/arm/setup.c > @@ -729,6 +729,11 @@ void __init start_xen(unsigned long boot_phys_offset, > + (fdt_paddr & ((1 << SECOND_SHIFT) - 1)); > fdt_size = boot_fdt_info(device_tree_flattened, fdt_paddr); > > +#ifdef CONFIG_CMDLINE > + printk("Compiled-in command line: %s\n", CONFIG_CMDLINE); > + cmdline_parse(cmdline); > +#endif > + > cmdline = boot_fdt_cmdline(device_tree_flattened); > printk("Command line: %s\n", cmdline); > cmdline_parse(cmdline); > diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c > index dab67d5491..2b961f95cf 100644 > --- a/xen/arch/x86/setup.c > +++ b/xen/arch/x86/setup.c > @@ -690,6 +690,11 @@ void __init noreturn __start_xen(unsigned long mbi_p) > kextra += 3; > while ( kextra[1] == ' ' ) kextra++; > } > + > +#ifdef CONFIG_CMDLINE > + printk("Compiled-in command line: %s\n", CONFIG_CMDLINE); > + cmdline_parse(CONFIG_CMDLINE); > +#endif > cmdline_parse(cmdline); > > /* Must be after command line argument parsing and before > diff --git a/xen/common/Kconfig b/xen/common/Kconfig > index f2ecbc43d6..1afcd8142c 100644 > --- a/xen/common/Kconfig > +++ b/xen/common/Kconfig > @@ -237,4 +237,31 @@ config FAST_SYMBOL_LOOKUP > The only user of this is Live patching. > > If unsure, say Y. > + > +config CMDLINE_BOOL > + bool "Built-in hypervisor command line" > + default n > + ---help--- > + Allow for specifying boot arguments to the hypervisor at > + build time. On some systems (e.g. embedded ones), it is > + necessary or convenient to provide some or all of the > + hypervisor boot arguments with the hypervisor itself (that is, > + to not rely on the boot loader to provide them.) > + > + To compile command line arguments into the hypervisor, > + set this option to 'Y', then fill in the > + boot arguments in CONFIG_CMDLINE. > + > +config CMDLINE > + string "Built-in hypervisor command string" > + depends on CMDLINE_BOOL > + default "" > + ---help--- > + Enter arguments here that should be compiled into the hypervisor > + image and used at boot time. If the boot loader provides a > + command line at boot time, it is appended to this string to > + form the full hypervisor command line, when the system boots. > + > + However, you can use the CONFIG_CMDLINE_OVERRIDE option to > + change this behavior. > endmenu > -- > 2.12.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |