2015-08-03 02:03:31

by fupan

[permalink] [raw]
Subject: [PATCH V2] efi: fix 32bit kernel boot failed problem using efi

From: fli <[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-03 11:39:58

by Matt Fleming

[permalink] [raw]
Subject: Re: [PATCH V2] efi: fix 32bit kernel boot failed problem using efi

On Mon, 03 Aug, at 10:02:49AM, [email protected] wrote:
> From: fli <[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-03 16:15:12

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH V2] efi: fix 32bit kernel boot failed problem using efi

On Mon, Aug 03, 2015 at 10:02:49AM +0800, [email protected] wrote:
> From: fli <[email protected]>

This needs to match the signed-off-by line, otherwise I can't take it :(

Please fix up and resend.

And what -stable tree is this for?

thanks,

greg k-h

2015-08-03 22:15:53

by Ben Hutchings

[permalink] [raw]
Subject: Re: [PATCH V2] efi: fix 32bit kernel boot failed problem using efi

On Mon, 2015-08-03 at 09:15 -0700, Greg KH wrote:
> On Mon, Aug 03, 2015 at 10:02:49AM +0800, [email protected] wrot
> e:
> > From: fli <[email protected]>
>
> This needs to match the signed-off-by line, otherwise I can't take it
> :(
>
> Please fix up and resend.
>
> And what -stable tree is this for?

The bug was introduced in 35d5134b7d5a on the 3.10 branch, but the same
bug in the backport seems to have been introduced on the 3.14 branch
and two others you don't maintain:

v3.10.39: 35d5134b7d5a x86/efi: Correct EFI boot stub use of code32_start
v3.12.20: 065487a10a22 x86/efi: Correct EFI boot stub use of code32_start
v3.14.3: 45ada9fae6d8 x86/efi: Correct EFI boot stub use of code32_start
v3.11.10.11: f32e88d764e3 x86/efi: Correct EFI boot stub use of code32_start

Ben.

--
Ben Hutchings
Unix is many things to many people,
but it's never been everything to anybody.


Attachments:
signature.asc (811.00 B)
This is a digitally signed message part