On 21.11.2023 18:23, Andrew Cooper wrote:
> On 21/11/2023 8:21 am, Jan Beulich wrote:
>> On 20.11.2023 23:49, Andrew Cooper wrote:
>>> --- a/xen/arch/x86/setup.c
>>> +++ b/xen/arch/x86/setup.c
>>> @@ -837,9 +837,10 @@ static bool __init loader_is_grub2(const char 
>>> *loader_name)
>>>      return (p != NULL) && (p[5] != '0');
>>>  }
>>>  
>>> -static char * __init cmdline_cook(char *p, const char *loader_name)
>>> +static const char *__init cmdline_cook(const char *p, const char 
>>> *loader_name)
>>>  {
>>> -    p = p ? : "";
>>> +    if ( !p )
>>> +        return "";
>> This change is now needed only for create_dom0(), whereas the call site
>> change to __start_xen() is redundant with the change here. Did you
>> consider doing a similar transformation in create_dom0(), thus
>> eliminating the need for this check altogether? Alternatively I'd like
>> to ask that ...
> 
> It occurs to me that __va(0) != 0, so this path isn't actually taken,
> even when there is a bad mbi-> pointer.

But it is taken when the (remaining) caller passes in NULL explicitly (from
the conditional operator ahead of the function invocation). But anyway, I'll
go look at v2.

Jan

Reply via email to