linux-efi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
  • * Re: [PATCH] x86/efi-bgrt: remove the check of the version field
           [not found] <20160809052546.31462-1-icenowy@aosc.xyz>
           [not found] ` <20160809052546.31462-1-icenowy-ymACFijhrKM@public.gmane.org>
    @ 2016-08-15 12:56 ` Matt Fleming
      2016-08-15 16:09   ` Josh Triplett
           [not found]   ` <20160815125643.GG30909-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
      1 sibling, 2 replies; 8+ messages in thread
    From: Matt Fleming @ 2016-08-15 12:56 UTC (permalink / raw)
      To: Icenowy Zheng
      Cc: Thomas Gleixner, Ingo Molnar, H . Peter Anvin, x86, linux-efi,
    	linux-kernel, Josh Triplett, Dave Young, Josh Boyer,
    	Andy Lutomirski
    
    On Tue, 09 Aug, at 01:25:46PM, Icenowy Zheng wrote:
    > Some broken firmwares have a wrongly filled version field in BGRT table.
    > (See http://wiki.osdev.org/Broken_UEFI_implementations )
    > 
    > As we know, these firmwares can also provide correct BGRT image, although
    > the table is wrong.
    > 
    > After removing the check of the version field, the kernel can now extract
    > the image correctly, and the information is also correct.
    > 
    > Tested on a Thinkpad E531 (68854UC).
    > 
    > Signed-off-by: Icenowy Zheng <icenowy@aosc.xyz>
    > ---
    >  arch/x86/platform/efi/efi-bgrt.c | 5 -----
    >  1 file changed, 5 deletions(-)
    > 
    > diff --git a/arch/x86/platform/efi/efi-bgrt.c b/arch/x86/platform/efi/efi-bgrt.c
    > index 6a2f569..f492ea0 100644
    > --- a/arch/x86/platform/efi/efi-bgrt.c
    > +++ b/arch/x86/platform/efi/efi-bgrt.c
    > @@ -47,11 +47,6 @@ void __init efi_bgrt_init(void)
    >  		       bgrt_tab->header.length, sizeof(*bgrt_tab));
    >  		return;
    >  	}
    > -	if (bgrt_tab->version != 1) {
    > -		pr_notice("Ignoring BGRT: invalid version %u (expected 1)\n",
    > -		       bgrt_tab->version);
    > -		return;
    > -	}
    >  	if (bgrt_tab->status & 0xfe) {
    >  		pr_notice("Ignoring BGRT: reserved status bits are non-zero %u\n",
    >  		       bgrt_tab->status);
    
    This would be less scary if we checked for known broken and known good
    version values instead of removing the check altogether, i.e. 0 and 1.
    
    The whole point of the version field is that it tells us about the
    layout of the BGRT table, so it's not exactly a useless check.
    
    ^ permalink raw reply	[flat|nested] 8+ messages in thread

  • end of thread, other threads:[~2016-08-24  7:30 UTC | newest]
    
    Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
    -- links below jump to the message on this page --
         [not found] <20160809052546.31462-1-icenowy@aosc.xyz>
         [not found] ` <20160809052546.31462-1-icenowy-ymACFijhrKM@public.gmane.org>
    2016-08-10 12:52   ` [PATCH] x86/efi-bgrt: remove the check of the version field Ingo Molnar
         [not found]     ` <120791470839405@web16h.yandex.ru>
         [not found]       ` <120791470839405-TUpq1W2QCG9xpj1cXAZ9Bg@public.gmane.org>
    2016-08-11  8:48         ` Ingo Molnar
    2016-08-15 12:56 ` Matt Fleming
    2016-08-15 16:09   ` Josh Triplett
         [not found]   ` <20160815125643.GG30909-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
    2016-08-17  5:44     ` Dave Young
    2016-08-18 20:41       ` Matt Fleming
         [not found]         ` <20160818204130.GQ30909-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
    2016-08-22  7:28           ` Dave Young
         [not found]             ` <388401471855799@web30j.yandex.ru>
         [not found]               ` <388401471855799-X2xH9E7M2qxxpj1cXAZ9Bg@public.gmane.org>
    2016-08-24  7:30                 ` Dave Young
    

    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).