]> git.baikalelectronics.ru Git - kernel.git/commit
Revert "efi/x86: efistub: Move shared dependencies to <asm/efi.h>"
authorMatt Fleming <matt.fleming@intel.com>
Tue, 23 Sep 2014 09:37:43 +0000 (10:37 +0100)
committerMatt Fleming <matt.fleming@intel.com>
Tue, 23 Sep 2014 21:01:55 +0000 (22:01 +0100)
commit4cd503ac41570274c79b2d00b8f7f0cc98ba93d0
tree698006d43536d30809f6637153a5d1e993f9f510
parent087104afa24db2c9d7dfa0960bd721757a294ef2
Revert "efi/x86: efistub: Move shared dependencies to <asm/efi.h>"

This reverts commit 88c9a090a848 ("efi/x86: efistub: Move shared
dependencies to <asm/efi.h>") as well as the x86 parts of commit
a2c6ab70f079 ("efi: efistub: Convert into static library").

The road leading to these two reverts is long and winding.

The above two commits were merged during the v3.17 merge window and
turned the common EFI boot stub code into a static library. This
necessitated making some symbols global in the x86 boot stub which
introduced new entries into the early boot GOT.

The problem was that we weren't fixing up the newly created GOT entries
before invoking the EFI boot stub, which sometimes resulted in hangs or
resets. This failure was reported by Maarten on his Macbook pro.

The proposed fix was commit 5ca9645fab2b ("x86/efi: Fixup GOT in all
boot code paths"). However, that caused issues for Linus when booting
his Sony Vaio Pro 11. It was subsequently reverted in commit
22daa24fb4ad.

So that leaves us back with Maarten's Macbook pro not booting.

At this stage in the release cycle the least risky option is to revert
the x86 EFI boot stub to the pre-merge window code structure where we
explicitly #include efi-stub-helper.c instead of linking with the static
library. The arm64 code remains unaffected.

We can take another swing at the x86 parts for v3.18.

Conflicts:
arch/x86/include/asm/efi.h

Tested-by: Josh Boyer <jwboyer@fedoraproject.org>
Tested-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Tested-by: Leif Lindholm <leif.lindholm@linaro.org> [arm64]
Tested-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>,
Cc: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
arch/x86/boot/compressed/Makefile
arch/x86/boot/compressed/eboot.c
arch/x86/boot/compressed/eboot.h
arch/x86/include/asm/efi.h
drivers/firmware/efi/Makefile