On 30/01/2019 15:09, Juergen Gross wrote: > On 30/01/2019 11:06, Jan Beulich wrote: >>>>> On 30.01.19 at 11:01, <andrew.coop...@citrix.com> wrote: >>> On 30/01/2019 09:57, Jan Beulich wrote: >>>>>>> On 29.01.19 at 20:07, <andrew.coop...@citrix.com> wrote: >>>>> --- a/xen/arch/x86/pv/shim.c >>>>> +++ b/xen/arch/x86/pv/shim.c >>>>> @@ -40,7 +40,11 @@ >>>>> #undef virt_to_mfn >>>>> #define virt_to_mfn(va) _mfn(__virt_to_mfn(va)) >>>>> >>>>> -#ifndef CONFIG_PV_SHIM_EXCLUSIVE >>>>> +#ifdef CONFIG_PV_SHIM_EXCLUSIVE >>>>> +/* Tolerate "pv-shim" being passed to a CONFIG_PV_SHIM_EXCLUSIVE >>>>> hypervisor. */ >>>>> +static bool _discard; >>>>> +boolean_param("pv-shim", _discard); >>>>> +#else >>>>> bool pv_shim; >>>>> boolean_param("pv-shim", pv_shim); >>>>> #endif >>>> It would end up being less extra code if you did >>>> >>>> #ifdef CONFIG_PV_SHIM_EXCLUSIVE >>>> /* Tolerate "pv-shim" being passed to a CONFIG_PV_SHIM_EXCLUSIVE >>>> hypervisor. */ >>>> static bool __initdata pv_shim; >>>> #else >>>> bool pv_shim; >>>> #endif >>>> boolean_param("pv-shim", pv_shim); >>> >>> Sadly not. In the EXCLUSIVE case, pv_shim is defined to be 1, and then >>> you've got an object named with just a number. (I tried this approach >>> first.) >> >> Oh, that's unfortunate in this particular case. In which case I >> don't have any better suggestion either. One that you and others >> perhaps wouldn't like would be >> >> custom_param("pv-shim", NULL); >> >> with parse_params() suitably adjusted to avoid the call in that >> case. > > I'd rather add something like ignore_param("pv-shim") instead (with the > new type OPT_IGNORE).
BTW, in case this is the selected solution we might want to add ignore_param("placeholder"); as well. Some old grub scripts seem to add "placeholder" as the first boot parameter to mitigate a grub error (eating first parameter). Juergen _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel