lkml.org 
[lkml]   [2022]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v3] x86/boot: skip realmode init code when running as Xen PV guest
From
On 24.11.22 14:28, Borislav Petkov wrote:
> On Wed, Nov 23, 2022 at 12:45:23PM +0100, Juergen Gross wrote:
>> When running as a Xen PV guest there is no need for setting up the
>> realmode trampoline, as realmode isn't supported in this environment.
>>
>> Trying to setup the trampoline has been proven to be problematic in
>> some cases, especially when trying to debug early boot problems with
>> Xen requiring to keep the EFI boot-services memory mapped (some
>> firmware variants seem to claim basically all memory below 1M for boot
>> services).
>>
>> Introduce new x86_platform_ops operations for that purpose, which can
>> be set to a nop by the Xen PV specific kernel boot code.
>>
>> Fixes: 084ee1c641a0 ("x86, realmode: Relocator for realmode code")
>
> This text and Fixes: tag sounds like this needs to go to Linus and
> stable now?

Looking at the date when 084ee1c641a0 went in I don't think it _needs_
to go in now, but I wouldn't complain ...

>
>> diff --git a/arch/x86/realmode/init.c b/arch/x86/realmode/init.c
>> index 41d7669a97ad..247aca9f8ed1 100644
>> --- a/arch/x86/realmode/init.c
>> +++ b/arch/x86/realmode/init.c
>> @@ -200,14 +200,18 @@ static void __init set_real_mode_permissions(void)
>> set_memory_x((unsigned long) text_start, text_size >> PAGE_SHIFT);
>> }
>>
>> -static int __init init_real_mode(void)
>> +void __init init_real_mode(void)
>> {
>> if (!real_mode_header)
>> panic("Real mode trampoline was not allocated");
>>
>> setup_real_mode();
>> set_real_mode_permissions();
>> +}
>>
>> +static int __init call_init_real_mode(void)
>> +{
>> + x86_platform.realmode_init();
>> return 0;
>> }
>> -early_initcall(init_real_mode);
>> +early_initcall(call_init_real_mode);
>
> I'll name that one "do_init_real_mode" as "call init" sounds weird.

Fine with me.

>
> Otherwise, it is as straightforward as it gets.

Thanks,


Juergen

[unhandled content-type:application/pgp-keys][unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2022-11-24 14:31    [W:0.104 / U:0.436 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site