LKML Archive on
help / color / mirror / Atom feed
From: Hans de Goede <>
To: Ard Biesheuvel <>
Cc: Thomas Gleixner <>,
	Ingo Molnar <>, "H . Peter Anvin" <>,
	the arch/x86 maintainers <>,,
	Linux Kernel Mailing List <>
Subject: Re: [PATCH v2] efi: Ignore unrealistically large option roms
Date: Sat, 28 Apr 2018 22:11:47 +0200	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <>


On 28-04-18 08:40, Ard Biesheuvel wrote:
> Hi Hans,
> On 27 April 2018 at 23:35, Hans de Goede <> wrote:
>> setup_efi_pci() tries to save a copy of each PCI option ROM as this may
>> be necessary for the device driver for the PCI device to have access too.
>> On some systems the efi_pci_io_protocol_64's romimage and romsize fields
>> contain invalid data, which looks a bit like pointers pointing back into
>> other EFI code or data. Interpreting these pointers as romsize leads to
>> a very large value and if we then try to alloc this amount of memory to
>> save a copy the alloc call fails.
>> This leads to a "Failed to alloc mem for rom" error being printed on the
>> EFI console for each PCI device.
>> This commit avoids the printing of these errors, by checking romsize
>> before doing the alloc and if it is larger then 256M silently ignore the
>> ROM fields instead of trying to alloc mem and fail.
> The UEFI spec limits the size of option ROMs to 16 MiB, so I'd prefer
> we use that as the upper bound instead.
> With that changed,
> Reviewed-by: Ard Biesheuvel <>

Thanks for the review, fixed for v3 which I'm about to send.

> or I can take it via the EFI tree if desired.

I've no preference for how this goes upstream. x86 folks, please let
us know if you will take this, or if you would prefer for this to
go upstream through the EFI tree.



  reply	other threads:[~2018-04-28 20:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-27 21:35 Hans de Goede
2018-04-28  6:40 ` Ard Biesheuvel
2018-04-28 20:11   ` Hans de Goede [this message]
2018-05-01 13:52   ` David Laight
2018-05-01 13:57     ` 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:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \ \ \ \ \ \
    --subject='Re: [PATCH v2] efi: Ignore unrealistically large option roms' \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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