[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Patches for stable



On 05/04/18 20:33, Boris Ostrovsky wrote:
> On 04/05/2018 01:11 PM, Juergen Gross wrote:
>> On 05/04/18 16:56, George Dunlap wrote:
>>> On Thu, Apr 5, 2018 at 3:09 PM, Juergen Gross <jgross@xxxxxxxx> wrote:
>>>> On 05/04/18 15:42, George Dunlap wrote:
>>>>> On Thu, Apr 5, 2018 at 2:06 PM, Juergen Gross <jgross@xxxxxxxx> wrote:
>>>>>> On 05/04/18 15:00, Boris Ostrovsky wrote:
>>>>>>> On 04/05/2018 08:19 AM, Juergen Gross wrote:
>>>>>>>> On 05/04/18 12:06, George Dunlap wrote:
>>>>>>>>
>>>>>>>>> Aren't there flags in the binary somewhere that could tell the
>>>>>>>>> toolstack / Xen whether the kernel in question needs the RSDP table in
>>>>>>>>> lowmem, or whether it can be put higher?
>>>>>>>> Not really. Analyzing the binary whether it accesses the rsdp_addr in
>>>>>>>> the start_info isn't the way to go, IMO.
>>>>>>>>
>>>>>>>> I've sent a patch to xen-devel adding a quirk flag to the domain's
>>>>>>>> config to enable the admin special casing such an "old" kernel.
>>>>>>> Can we backport latest struct hvm_start_info changes (which bumped
>>>>>>> interface version) to 4.11 and pass RSDP only for versions >=1?
>>>>>> And this would help how?
>>>>>>
>>>>>> RSDP address is passed today, the kernel just doesn't read it. And
>>>>>> how should Xen know which interface version the kernel is supporting?
>>>>>> And Xen needs to know that in advance in order to place the RSDP in
>>>>>> low memory in case the kernel isn't reading the RSDP address from
>>>>>> start_info.
>>>>> But the kernel image has ELF notes, right?  You can put one that
>>>>> indicates that this binary *does* know how to read the RSDP from the
>>>>> start_info, and if you don't find that, put it in lowmem.
>>>> Sow you would hurt BSD which does read the RSDP address correctly but
>>>> (today) has no such ELF note.
> 
> 
> This can be predicated on
>     ELFNOTE(Xen, XEN_ELFNOTE_GUEST_OS,       .asciz "linux")
> 
> BSD will behave as it does now. For linux we could add feature flag (or
> errata flag). Unfortunately I don't see a way to extract major.minor
> from the headers, otherwise we could use that.

What's wrong with the config flag?

Adding a mandatory ELF-Note which says "yes, I really comply to the
interface" seems to be weird.

Juergen

> 
> -boris
> 
> 
>>>>
>>>> I think extending the PVH interface in such a way is no good idea.
>>> Option 1: Put the RSDP in lowmem unless we know the guest will use the
>>> address in start_info
>>> Pro: Existing Linux instances boot
>>> Con: Existing BSD instances whose memory is an exact multiple of 1 GiB
>>> will have slightly slower TLB miss times.
>> ... whose memory is >=1GiB ...
>>
>>> Option 2: Put the RSDP in highmem regardless
>>> Pro: Existing BSD instances whose memory is an exact multiple of 1GiB
>> ... whose memory is >=1GiB ...
>>
>>> will have slightly faster TLB miss times
>>> Con: Existing Linux instances don't boot at all
>> Option 3: add a config item to domain config for selecting the RSDP
>>           placement, defaulting to highmem (my patch)
>> Pro: Existing BSD and new Linux instances whose memory is >=1GiB will
>>      have slightly faster TLB miss times
>> Pro: Existing Linux instances can be made bootable by adding a new
>>      item to their domain config
>>
>>
> 
> 


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.