[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] EFI: add efi=mapbs option and parse efi= early

  • To: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • From: Jan Beulich <JBeulich@xxxxxxxx>
  • Date: Thu, 8 Aug 2019 12:37:40 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vHeDzcc0PnE0SgCRGQ6PROIVjIm8OLKEselFHb18VWw=; b=H8nUXkSci1hewU88YZgPxFFZRM9Tky7h0sl0/1AX+I1yGIn8g7ey9i1Y1jpED7zd8p33/+hHb6ydacfASAlmh5RUlcepiVdMxvOcsx1F9P8LKz/TAUENRvQykPgKvJHdvVleH4nricBJpgiWVgsl8BUaTmjWPtY8wAjPHITjWHUcBF70OC3AmVLW2F5P7YfkZtEkQYJwu201FRErKr0dGBnx+WeCclw60C0cd06xndR/VMgrgUboe3tFerIyr1r+Rm1nnsko01DH4oGsYg0f/ktOa9HckYB61z4q5qJ2S14CyF4cuEcgiYNg0oNGy/UvTxOUH78hC37QIbGqYMpeTQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dup0oI6fIF3Lmg0pAnZLgh1xPv9Kg60Gri2b5Xer4BpPzZ821HacGe3hfOzSpX0baH+AZyXm/8E8OeopI5jEdlR2nA3n791gCpmMBbXl2D5Z3Juz3k9HPdyvXHtx/iAgTEQLEBzEUD9zAImfAImxgabx7zKWzX7yYJy73Pc80g8aVrRj/9ARAcgICqVZpXkdxAxvuqDFQWhWxyIQ1qm/QA5wuqxSGuK1ajrHtuqY91yuZEsTyUUi2qC2UfNyJWfJYmx1OGbmKBSfr0CkUsRiQUzA31Nz7tx8iUybWzWYKzDSOKjNpTDm4K8C2kp665QQkxUNi2coG0c4G/eCgqHkAg==
  • Authentication-results: spf=none (sender IP is ) smtp.mailfrom=JBeulich@xxxxxxxx;
  • Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, WeiLiu <wl@xxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, George Dunlap <George.Dunlap@xxxxxxxxxxxxx>, Tim Deegan <tim@xxxxxxx>, Ian Jackson <ian.jackson@xxxxxxxxxxxxx>, Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>, Julien Grall <julien.grall@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Delivery-date: Thu, 08 Aug 2019 12:39:58 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHVTYDiJDDJv46naU6f+B83HbCEaabw/9UdgAAxRgA=
  • Thread-topic: [PATCH] EFI: add efi=mapbs option and parse efi= early

On 08.08.2019 11:40, Andrew Cooper wrote:
> On 08/08/2019 01:31, Marek Marczykowski-Górecki wrote:
>> When booting Xen via xen.efi, there is /mapbs option to workaround
>> certain platform issues (added in f36886bdf4 "EFI/early: add /mapbs to
>> map EfiBootServices{Code,Data}"). Add support for efi=mapbs on Xen
>> cmdline for the same effect and parse it very early in the
>> multiboot2+EFI boot path.
>> Normally cmdline is parsed after relocating MB2 structure, which happens
>> too late. To have efi= parsed early enough, save cmdline pointer in
>> head.S and pass it as yet another argument to efi_multiboot2(). This
>> way we avoid introducing yet another MB2 structure parser.
>> To keep consistency, handle efi= parameter early in xen.efi too, both in
>> xen.efi command line and cfg file.
>> Signed-off-by: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>
> I'm very sorry to do this to you, but I'm going to object to the patch
> (in principle.  I think the command line option itself is fine but...)
> What does Linux do differently here?
> It is actively damaging to the Xen community to users to force users
> tweak command lines in order to boot/recover their system, and it looks
> especially embarrassing when other OSes cope automatically.  We have
> compatibility for all kinds of other firmware screw-ups, except EFI it
> seems, and this needs to change.
> So while I have no objection to the option per say, I don't think this
> patch is reasonable as a "fix" to the problem as far as end users are
> concerned.

And your suggestion then is to always map (and not use) all boot
services memory, contrary to all intentions of the EFI spec?

As to your more general rant: I think it is wrong to have more
than very simple and low overhead workarounds enabled "just in
case". The vast majority of the workarounds we have in place
are keyed to specific versions of something, or e.g. DMI
properties of systems. I certainly wouldn't mind DMI based
enabling of workarounds like the one here, but I'm going to
continue to push back on attempts to cripple the EFI code just
because _some_ systems don't have a sensible EFI implementation.

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.