[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1366928604.9976.3.camel@x230>
Date: Thu, 25 Apr 2013 22:23:24 +0000
From: Matthew Garrett <matthew.garrett@...ula.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
CC: "H. Peter Anvin" <hpa@...ux.intel.com>,
Borislav Petkov <bp@...e.de>, "H. Peter Anvin" <hpa@...or.com>,
Ingo Molnar <mingo@...e.hu>, Josh Boyer <jwboyer@...hat.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Matt Fleming <matt.fleming@...el.com>,
Paul Bolle <pebolle@...cali.nl>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [GIT PULL] x86 fixes for 3.9
On Thu, 2013-04-25 at 15:20 -0700, Linus Torvalds wrote:
> On Thu, Apr 25, 2013 at 2:44 PM, H. Peter Anvin <hpa@...ux.intel.com> wrote:
> >
> > - if (!sys_table->runtime->query_variable_info)
> > + if (sys_table->runtime->hdr.revision < EFI_2_00_SYSTEM_TABLE_REVISION)
> > return EFI_UNSUPPORTED;
>
> Is a EFI 2.00 system table *guaranteed* to have that
> "query_variable_info" function? The above adds the version check, but
> removes the check for a NULL pointer.
As far as the spec's concerned, yes. As far as reality's concerned - if
anything doesn't provide it, we're already crashing when
efi_virt_query_variable_info() gets called. Nobody's complained so far.
> And why the hell don't we have a real structure that has been filled
> out properly, and instead apparently just do this "point to random
> memory that doesn't necessarily have the full structure?
This is early boot code, we're not in the kernel proper yet. All we have
is the structure that's handed to us by the firmware, and the size of
that structure varies depending on its version.
--
Matthew Garrett | mjg59@...f.ucam.org
Powered by blists - more mailing lists