2015-08-04 01:52:20

by fupan

[permalink] [raw]
Subject: [PATCH V3 request from stable 3.10 to 3.14] efi: fix 32bit kernel boot failed problem using efi

From: Fupan Li <[email protected]>

Commit 35d5134b7d5a
("x86/efi: Correct EFI boot stub use of code32_start")
imported a bug, which will cause 32bit kernel boot failed
using efi method. It should use the label's address instead
of the value stored in the label to caculate the address of
code32_start.

Signed-off-by: Fupan Li <[email protected]>
---
arch/x86/boot/compressed/head_32.S | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/boot/compressed/head_32.S b/arch/x86/boot/compressed/head_32.S
index abb988a..3b28eff 100644
--- a/arch/x86/boot/compressed/head_32.S
+++ b/arch/x86/boot/compressed/head_32.S
@@ -54,7 +54,7 @@ ENTRY(efi_pe_entry)
call reloc
reloc:
popl %ecx
- subl reloc, %ecx
+ subl $reloc, %ecx
movl %ecx, BP_code32_start(%eax)

sub $0x4, %esp
--
1.9.1


2015-08-04 17:13:02

by Matt Fleming

[permalink] [raw]
Subject: Re: [PATCH V3 request from stable 3.10 to 3.14] efi: fix 32bit kernel boot failed problem using efi

On Tue, 04 Aug, at 09:51:21AM, [email protected] wrote:
> From: Fupan Li <[email protected]>
>
> Commit 35d5134b7d5a
> ("x86/efi: Correct EFI boot stub use of code32_start")
> imported a bug, which will cause 32bit kernel boot failed
> using efi method. It should use the label's address instead
> of the value stored in the label to caculate the address of
> code32_start.
>
> Signed-off-by: Fupan Li <[email protected]>
> ---
> arch/x86/boot/compressed/head_32.S | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Matt Fleming <[email protected]>

--
Matt Fleming, Intel Open Source Technology Center

2015-08-08 22:05:22

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Patch "efi: fix 32bit kernel boot failed problem using efi" has been added to the 3.10-stable tree


This is a note to let you know that I've just added the patch titled

efi: fix 32bit kernel boot failed problem using efi

to the 3.10-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
efi-fix-32bit-kernel-boot-failed-problem-using-efi.patch
and it can be found in the queue-3.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From [email protected] Sat Aug 8 15:03:02 2015
From: <[email protected]>
Date: Tue, 4 Aug 2015 09:51:21 +0800
Subject: efi: fix 32bit kernel boot failed problem using efi
To: <[email protected]>, <[email protected]>
Cc: <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>
Message-ID: <[email protected]>

From: Fupan Li <[email protected]>

Commit 35d5134b7d5a
("x86/efi: Correct EFI boot stub use of code32_start")
imported a bug, which will cause 32bit kernel boot failed
using efi method. It should use the label's address instead
of the value stored in the label to caculate the address of
code32_start.

Signed-off-by: Fupan Li <[email protected]>
Reviewed-by: Matt Fleming <[email protected]>
---
arch/x86/boot/compressed/head_32.S | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/x86/boot/compressed/head_32.S
+++ b/arch/x86/boot/compressed/head_32.S
@@ -54,7 +54,7 @@ ENTRY(efi_pe_entry)
call reloc
reloc:
popl %ecx
- subl reloc, %ecx
+ subl $reloc, %ecx
movl %ecx, BP_code32_start(%eax)

sub $0x4, %esp


Patches currently in stable-queue which might be from [email protected] are

queue-3.10/efi-fix-32bit-kernel-boot-failed-problem-using-efi.patch

2015-08-08 22:05:27

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Patch "efi: fix 32bit kernel boot failed problem using efi" has been added to the 3.14-stable tree


This is a note to let you know that I've just added the patch titled

efi: fix 32bit kernel boot failed problem using efi

to the 3.14-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
efi-fix-32bit-kernel-boot-failed-problem-using-efi.patch
and it can be found in the queue-3.14 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From [email protected] Sat Aug 8 15:03:02 2015
From: <[email protected]>
Date: Tue, 4 Aug 2015 09:51:21 +0800
Subject: efi: fix 32bit kernel boot failed problem using efi
To: <[email protected]>, <[email protected]>
Cc: <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>
Message-ID: <[email protected]>

From: Fupan Li <[email protected]>

Commit 35d5134b7d5a
("x86/efi: Correct EFI boot stub use of code32_start")
imported a bug, which will cause 32bit kernel boot failed
using efi method. It should use the label's address instead
of the value stored in the label to caculate the address of
code32_start.

Signed-off-by: Fupan Li <[email protected]>
Reviewed-by: Matt Fleming <[email protected]>
---
arch/x86/boot/compressed/head_32.S | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/x86/boot/compressed/head_32.S
+++ b/arch/x86/boot/compressed/head_32.S
@@ -54,7 +54,7 @@ ENTRY(efi_pe_entry)
call reloc
reloc:
popl %ecx
- subl reloc, %ecx
+ subl $reloc, %ecx
movl %ecx, BP_code32_start(%eax)

sub $0x4, %esp


Patches currently in stable-queue which might be from [email protected] are

queue-3.14/efi-fix-32bit-kernel-boot-failed-problem-using-efi.patch