From: Eric Shelton <eshelton@pobox.com>
To: Jan Beulich <JBeulich@suse.com>
Cc: Tang Liang <liang.tang@oracle.com>,
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
xen-devel <xen-devel@lists.xen.org>
Subject: Re: [REBASE] xen: patches (against Linux kernel) for supporting efi
Date: Thu, 23 May 2013 07:05:29 -0400 [thread overview]
Message-ID: <CAPQw5rnpwETH3K2fH_jkpqR4Uh8zFUbaES=mNe40D-O9qmokkA@mail.gmail.com> (raw)
In-Reply-To: <519E094402000078000D86A3@nat28.tlf.novell.com>
On Thu, May 23, 2013 at 6:19 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>> On 23.05.13 at 12:04, Eric Shelton <eshelton@pobox.com> wrote:
>> 1) The attached code only works on 64-bit systems, due to setting the
>> EFI_64BIT in xen_efi_probe(). It looks like a new hypercall is needed
>> or an existing hypercall needs to be added to check whether the EFI
>> BIOS is 32- or 64-bit (see comment in code).
>
> This is bogus: For one, Xen only works on 64-bit UEFI. And then,
> with the actual runtime calls being done by Xen (after translating
> arguments as necessary), a 32-bit kernel can call them as much as
> a 64-bit one. An obvious benefit of the intermediate hypercall layer.
>
> Jan
>
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.
Eric
next prev parent reply other threads:[~2013-05-23 11:05 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-23 10:04 [REBASE] xen: patches (against Linux kernel) for supporting efi Eric Shelton
2013-05-23 10:19 ` Jan Beulich
2013-05-23 11:05 ` Eric Shelton [this message]
2013-05-23 11:18 ` Jan Beulich
2013-05-23 14:11 ` Eric Shelton
2013-05-23 14:45 ` Jan Beulich
2013-05-24 14:24 ` Konrad Rzeszutek Wilk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAPQw5rnpwETH3K2fH_jkpqR4Uh8zFUbaES=mNe40D-O9qmokkA@mail.gmail.com' \
--to=eshelton@pobox.com \
--cc=JBeulich@suse.com \
--cc=konrad.wilk@oracle.com \
--cc=liang.tang@oracle.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).