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

Re: [Xen-devel] [REBASE] xen: patches (against Linux kernel) for supporting efi

On 5/23/13, Jan Beulich <JBeulich@xxxxxxxx> wrote:
>>>> On 23.05.13 at 13:05, Eric Shelton <eshelton@xxxxxxxxx> wrote:
>> This does not appear to be entirely correct, although it appears you
>> are describing the intended design.  For one, if you look at
>> efi_config_init() in efi.c, a hypercall is used to obtain the address
>> of the config table.  However, the table entries have different sizes
>> (see efi_config_table_64_t and efi_config_table_32_t).  This affects
>> (1) how much memory is mapped for the config table, and (2) accessing
>> the table entries at the correct addresses.  Thus, dom0 has to know
>> whether EFI is 32 or 64 bit for at least this aspect, at least under
>> how XEN_FW_EFI_CONFIG_TABLE is presently implemented.  However, as
>> currently implemented, it appears there is a "bogus" hypervisor
>> interface that overlooks this "obvious" issue.  This might be
>> corrected by having the hypervisor mediate access to the config table
>> rather than depending on dom0 to directly map and access the config
>> table.
> Dealing with this in the hypervisor is pointless - we don't want to
> make a 32-bit clone of the table (the more that there's no
> guarantee we wouldn't truncate addresses). Instead, the Dom0
> code simply should use efi_config_table_64_t instead of
> efi_config_table_t.
> Jan

I see, and I should have caught it from your first comment (although
my understanding is that EFI ver 1.xx works in addition to UEFI).  It
sounds like the patch as presented, minus any comments suggesting the
need for determining if there is a 32-bit EFI, is good on this point,
since it always sets the EFI_64BIT bit.

Just curious: why does Xen only work on 64-bit EFI?  Is there an
architectural issue, or is 64-bit x86 so overwhelmingly prevalent that
there are essentially no Xen users running on 32-bit EFI systems?  It
looks like the Linux kernel bothers to support both 32 and 64 bit EFI,
but does not support EFI runtime where there is a 32/64 bit mix of
BIOS & OS (which appears to not be an issue for 64-bit Xen & a 32-bit


Xen-devel mailing list



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