]> 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)
commit64d0d249f909cefc7e141c34f0c7e9880cbcd32f
tree698006d43536d30809f6637153a5d1e993f9f510
parent3badfd7df8950b6d19de525a84d5620f8dd61fcd
Revert "efi/x86: efistub: Move shared dependencies to <asm/efi.h>"

This reverts commit d47d9fe2b51d ("efi/x86: efistub: Move shared
dependencies to <asm/efi.h>") as well as the x86 parts of commit
5a2c62035cf3 ("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 e17d4b043868 ("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
0253c7e71a63.

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