From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-efi@vger.kernel.org, Thomas Gleixner <tglx@linutronix.de>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 12/17] efi: fix efi_pci_io_protocol32 prototype for mixed mode
Date: Mon, 14 May 2018 09:02:34 +0200 [thread overview]
Message-ID: <CAKv+Gu8QVR_BFLMKttqfmCMqXU13grwr846oftFysB8B0CJCZw@mail.gmail.com> (raw)
In-Reply-To: <20180514065744.GD16596@gmail.com>
On 14 May 2018 at 08:57, Ingo Molnar <mingo@kernel.org> wrote:
>
> * Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote:
>
>> Mixed mode allows a kernel built for x86_64 to interact with 32-bit
>> EFI firmware, but requires us to define all struct definitions carefully
>> when it comes to pointer sizes. efi_pci_io_protocol32 currently uses a
>> void* for the 'romimage' field, which will be interpreted as a 64-bit
>> field on such kernels, potentially resulting in bogus memory references
>> and subsequent crashes.
>
> Yeah, so the first confusion I ran into is:
>
> s/efi_pci_io_protocol32
> /efi_pci_io_protocol_32
>
> Once I found it in the code I made this change:
>
> s/efi: fix efi_pci_io_protocol32 prototype for mixed mode
> /efi: Fix 'struct efi_pci_io_protocol32' definition for mixed mode
>
> Because we normally use the 'prototype' name for function declarations, not for
> data type definitions. Adding 'struct' and putting it between quotes makes it
> obvious at a glance that we are talking about a structure definition here.
>
OK.
> BTW., since it's marked -stable, due to:
>
> > potentially resulting in bogus memory references
> > and subsequent crashes.
>
> I'm moving it to efi/urgent: the principle here is that if a patch is urgent
> enough for -stable then it should generally not wait for the next merge window.
>
The issue was found by inspection rather than a crash report, so I was
in doubt about this.
> Also, because this actually fixes a crash, I extended the title to spell this out
> more clearly:
>
> Subject: efi: Avoid potential crashes, fix the 'struct efi_pci_io_protocol_32' definition for mixed mode
>
> ... which also makes it easier for maintainers of older stable kernels to decide
> whether to backport the patch or not.
>
OK.
> Anyway, the patch is looking good otherwise, no need to resend.
>
> Thanks,
>
> Ingo
next prev parent reply other threads:[~2018-05-14 7:02 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-04 5:59 [GIT PULL 00/17] EFI updates for v4.18 Ard Biesheuvel
2018-05-04 5:59 ` [PATCH 01/17] x86/xen/efi: Initialize UEFI secure boot state during dom0 boot Ard Biesheuvel
2018-05-14 7:43 ` [tip:efi/core] " tip-bot for Daniel Kiper
2018-05-04 5:59 ` [PATCH 02/17] efi/cper: Remove the INDENT_SP silliness Ard Biesheuvel
2018-05-14 7:44 ` [tip:efi/core] " tip-bot for Borislav Petkov
2018-05-04 5:59 ` [PATCH 03/17] efi: Fix IA32/X64 Processor Error Record definition Ard Biesheuvel
2018-05-14 7:44 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 04/17] efi: Decode IA32/X64 Processor Error Section Ard Biesheuvel
2018-05-14 7:45 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 05/17] efi: Decode IA32/X64 Processor Error Info Structure Ard Biesheuvel
2018-05-14 7:45 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 06/17] efi: Decode UEFI-defined IA32/X64 Error Structure GUIDs Ard Biesheuvel
2018-05-14 7:46 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 07/17] efi: Decode IA32/X64 Cache, TLB, and Bus Check structures Ard Biesheuvel
2018-05-14 7:46 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 08/17] efi: Decode additional IA32/X64 Bus Check fields Ard Biesheuvel
2018-05-14 7:47 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 09/17] efi: Decode IA32/X64 MS Check structure Ard Biesheuvel
2018-05-14 7:47 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 10/17] efi: Decode IA32/X64 Context Info structure Ard Biesheuvel
2018-05-14 7:48 ` [tip:efi/core] " tip-bot for Yazen Ghannam
2018-05-04 5:59 ` [PATCH 11/17] efi/libstub/tpm: Make function efi_retrieve_tpm2_eventlog_1_2() static Ard Biesheuvel
2018-05-14 7:48 ` [tip:efi/core] " tip-bot for Wei Yongjun
2018-05-04 5:59 ` [PATCH 12/17] efi: fix efi_pci_io_protocol32 prototype for mixed mode Ard Biesheuvel
2018-05-14 6:57 ` Ingo Molnar
2018-05-14 7:02 ` Ard Biesheuvel [this message]
2018-05-14 7:42 ` [tip:efi/core] efi: Avoid potential crashes, fix the 'struct efi_pci_io_protocol_32' definition " tip-bot for Ard Biesheuvel
2018-05-04 5:59 ` [PATCH 13/17] efi: align efi_pci_io_protocol typedefs to type naming convention Ard Biesheuvel
2018-05-14 7:49 ` [tip:efi/core] efi: Align " tip-bot for Ard Biesheuvel
2018-05-04 6:00 ` [PATCH 14/17] efi/x86: fold __setup_efi_pci32 and __setup_efi_pci64 into one Ard Biesheuvel
2018-05-14 7:49 ` [tip:efi/core] efi/x86: Fold __setup_efi_pci32() and __setup_efi_pci64() into one function tip-bot for Ard Biesheuvel
2018-05-04 6:00 ` [PATCH 15/17] efi/x86: Ignore unrealistically large option roms Ard Biesheuvel
2018-05-14 6:40 ` Ingo Molnar
2018-05-14 6:43 ` [PATCH] efi/x86: Clean up the eboot code a bit Ingo Molnar
2018-05-14 6:47 ` Ard Biesheuvel
2018-05-14 6:58 ` Ingo Molnar
2018-05-14 6:59 ` Ard Biesheuvel
2018-05-14 7:50 ` [tip:efi/core] efi/x86: Ignore unrealistically large option ROMs tip-bot for Hans de Goede
2018-05-15 9:18 ` Ard Biesheuvel
2018-06-21 15:13 ` Ingo Molnar
2018-05-04 6:00 ` [PATCH 16/17] efi/capsule-loader: Don't output reset log when reset flags are not set Ard Biesheuvel
2018-05-14 7:50 ` [tip:efi/core] " tip-bot for Shunyong Yang
2018-05-04 6:00 ` [PATCH 17/17] efi/libstub/arm64: handle randomized TEXT_OFFSET Ard Biesheuvel
2018-05-14 6:47 ` Ingo Molnar
2018-05-14 6:48 ` Ard Biesheuvel
2018-05-14 7:00 ` Ingo Molnar
2018-05-14 7:01 ` Ard Biesheuvel
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=CAKv+Gu8QVR_BFLMKttqfmCMqXU13grwr846oftFysB8B0CJCZw@mail.gmail.com \
--to=ard.biesheuvel@linaro.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=tglx@linutronix.de \
/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).