All of lore.kernel.org
 help / color / mirror / Atom feed
* Problems compiling with KCFLAGS="-frecord-gcc-switches"
@ 2017-09-29 20:00 Guenter Roeck
  2017-09-29 20:38 ` Guenter Roeck
  2017-09-29 20:46 ` Josh Poimboeuf
  0 siblings, 2 replies; 9+ messages in thread
From: Guenter Roeck @ 2017-09-29 20:00 UTC (permalink / raw)
  To: Josh Poimboeuf; +Cc: linux-kernel

Hi Josh,

when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
I get the folllowing build warning/error.

make allmodconfig
KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"

arch/x86/kvm/emulate.o: warning:
	objtool: .GCC.command.line+0x0: special: can't find new instruction

Building a full image aborts with:

WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
	from the (unknown reference) (unknown)
	to the variable .GCC.command.line:kvm_fastop_exception
FATAL: The relocation at __ex_table+0x4c references
section ".GCC.command.line" which is not executable, IOW
the kernel will fault if it ever tries to
jump to it.  Something is seriously wrong
and should be fixed.
make[2]: *** [arch/x86/kvm/kvm.o] Error 1

Any idea what might cause this problem ?

Thanks,
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-09-29 20:00 Problems compiling with KCFLAGS="-frecord-gcc-switches" Guenter Roeck
@ 2017-09-29 20:38 ` Guenter Roeck
  2017-09-29 20:58   ` Josh Poimboeuf
  2017-09-29 20:46 ` Josh Poimboeuf
  1 sibling, 1 reply; 9+ messages in thread
From: Guenter Roeck @ 2017-09-29 20:38 UTC (permalink / raw)
  To: Josh Poimboeuf; +Cc: linux-kernel

On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
> Hi Josh,
> 
> when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
> I get the folllowing build warning/error.
> 
> make allmodconfig
> KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
> ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
> 
> arch/x86/kvm/emulate.o: warning:
> 	objtool: .GCC.command.line+0x0: special: can't find new instruction
> 
> Building a full image aborts with:
> 
> WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
> 	from the (unknown reference) (unknown)
> 	to the variable .GCC.command.line:kvm_fastop_exception
> FATAL: The relocation at __ex_table+0x4c references
> section ".GCC.command.line" which is not executable, IOW
> the kernel will fault if it ever tries to
> jump to it.  Something is seriously wrong
> and should be fixed.
> make[2]: *** [arch/x86/kvm/kvm.o] Error 1
> 
> Any idea what might cause this problem ?
> 

Here is another interesting problem, seen when building arm64 allmodconfig
-CONFIG_CPU_BIG_ENDIAN +CONFIG_EFI.

kallsyms failure:
	relative symbol value 0xffffff9008073000 out of range in relative mode

This is due to symbols such as

000000000000000e n __efistub_$d

in the symbol table. Those are not filtered out by kallsyms, resulting in a
relative "base" address of 0x0e, and all other symbols are out of range.
Those symbols are only generated in efi/libstubs.

Any idea what might be going on there, and how to fix it ?
An easy fix would be something like

-       else if (stype == 'N')
+       else if (toupper(stype) == 'N')

in kallsyms, but that doesn't seem like a clean solution to me.

Thanks,
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-09-29 20:00 Problems compiling with KCFLAGS="-frecord-gcc-switches" Guenter Roeck
  2017-09-29 20:38 ` Guenter Roeck
@ 2017-09-29 20:46 ` Josh Poimboeuf
  2017-09-30  1:07   ` Guenter Roeck
  2017-10-03 17:54   ` Guenter Roeck
  1 sibling, 2 replies; 9+ messages in thread
From: Josh Poimboeuf @ 2017-09-29 20:46 UTC (permalink / raw)
  To: Guenter Roeck; +Cc: linux-kernel

On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
> Hi Josh,
> 
> when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
> I get the folllowing build warning/error.
> 
> make allmodconfig
> KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
> ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
> 
> arch/x86/kvm/emulate.o: warning:
> 	objtool: .GCC.command.line+0x0: special: can't find new instruction
> 
> Building a full image aborts with:
> 
> WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
> 	from the (unknown reference) (unknown)
> 	to the variable .GCC.command.line:kvm_fastop_exception
> FATAL: The relocation at __ex_table+0x4c references
> section ".GCC.command.line" which is not executable, IOW
> the kernel will fault if it ever tries to
> jump to it.  Something is seriously wrong
> and should be fixed.
> make[2]: *** [arch/x86/kvm/kvm.o] Error 1
> 
> Any idea what might cause this problem ?

I think this is a GCC bug with the -frecord-gcc-switches feature.  Due
to some ambiguity in some inline asm in emulate.c, it's placing some
kernel code in the .GCC.command.line section.

This seems to fix it:


diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
index a36254cbf776..d90cdc77e077 100644
--- a/arch/x86/kvm/emulate.c
+++ b/arch/x86/kvm/emulate.c
@@ -425,8 +425,10 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *));
 	#op " %al \n\t" \
 	FOP_RET
 
-asm(".global kvm_fastop_exception \n"
-    "kvm_fastop_exception: xor %esi, %esi; ret");
+asm(".pushsection .fixup, \"ax\"\n"
+    ".global kvm_fastop_exception \n"
+    "kvm_fastop_exception: xor %esi, %esi; ret\n"
+    ".popsection");
 
 FOP_START(setcc)
 FOP_SETCC(seto)

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-09-29 20:38 ` Guenter Roeck
@ 2017-09-29 20:58   ` Josh Poimboeuf
  2017-09-29 23:08     ` Guenter Roeck
  0 siblings, 1 reply; 9+ messages in thread
From: Josh Poimboeuf @ 2017-09-29 20:58 UTC (permalink / raw)
  To: Guenter Roeck; +Cc: linux-kernel

On Fri, Sep 29, 2017 at 01:38:43PM -0700, Guenter Roeck wrote:
> On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
> > Hi Josh,
> > 
> > when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
> > I get the folllowing build warning/error.
> > 
> > make allmodconfig
> > KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
> > ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
> > 
> > arch/x86/kvm/emulate.o: warning:
> > 	objtool: .GCC.command.line+0x0: special: can't find new instruction
> > 
> > Building a full image aborts with:
> > 
> > WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
> > 	from the (unknown reference) (unknown)
> > 	to the variable .GCC.command.line:kvm_fastop_exception
> > FATAL: The relocation at __ex_table+0x4c references
> > section ".GCC.command.line" which is not executable, IOW
> > the kernel will fault if it ever tries to
> > jump to it.  Something is seriously wrong
> > and should be fixed.
> > make[2]: *** [arch/x86/kvm/kvm.o] Error 1
> > 
> > Any idea what might cause this problem ?
> > 
> 
> Here is another interesting problem, seen when building arm64 allmodconfig
> -CONFIG_CPU_BIG_ENDIAN +CONFIG_EFI.
> 
> kallsyms failure:
> 	relative symbol value 0xffffff9008073000 out of range in relative mode
> 
> This is due to symbols such as
> 
> 000000000000000e n __efistub_$d
> 
> in the symbol table. Those are not filtered out by kallsyms, resulting in a
> relative "base" address of 0x0e, and all other symbols are out of range.
> Those symbols are only generated in efi/libstubs.
> 
> Any idea what might be going on there, and how to fix it ?
> An easy fix would be something like
> 
> -       else if (stype == 'N')
> +       else if (toupper(stype) == 'N')
> 
> in kallsyms, but that doesn't seem like a clean solution to me.

Not sure... What does 'n' mean?  I don't see it in the man page for nm.

-- 
Josh

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-09-29 20:58   ` Josh Poimboeuf
@ 2017-09-29 23:08     ` Guenter Roeck
  0 siblings, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2017-09-29 23:08 UTC (permalink / raw)
  To: Josh Poimboeuf; +Cc: linux-kernel

On 09/29/2017 01:58 PM, Josh Poimboeuf wrote:
> On Fri, Sep 29, 2017 at 01:38:43PM -0700, Guenter Roeck wrote:
>> On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
>>> Hi Josh,
>>>
>>> when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
>>> I get the folllowing build warning/error.
>>>
>>> make allmodconfig
>>> KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
>>> ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
>>>
>>> arch/x86/kvm/emulate.o: warning:
>>> 	objtool: .GCC.command.line+0x0: special: can't find new instruction
>>>
>>> Building a full image aborts with:
>>>
>>> WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
>>> 	from the (unknown reference) (unknown)
>>> 	to the variable .GCC.command.line:kvm_fastop_exception
>>> FATAL: The relocation at __ex_table+0x4c references
>>> section ".GCC.command.line" which is not executable, IOW
>>> the kernel will fault if it ever tries to
>>> jump to it.  Something is seriously wrong
>>> and should be fixed.
>>> make[2]: *** [arch/x86/kvm/kvm.o] Error 1
>>>
>>> Any idea what might cause this problem ?
>>>
>>
>> Here is another interesting problem, seen when building arm64 allmodconfig
>> -CONFIG_CPU_BIG_ENDIAN +CONFIG_EFI.
>>
>> kallsyms failure:
>> 	relative symbol value 0xffffff9008073000 out of range in relative mode
>>
>> This is due to symbols such as
>>
>> 000000000000000e n __efistub_$d
>>
>> in the symbol table. Those are not filtered out by kallsyms, resulting in a
>> relative "base" address of 0x0e, and all other symbols are out of range.
>> Those symbols are only generated in efi/libstubs.
>>
>> Any idea what might be going on there, and how to fix it ?
>> An easy fix would be something like
>>
>> -       else if (stype == 'N')
>> +       else if (toupper(stype) == 'N')
>>
>> in kallsyms, but that doesn't seem like a clean solution to me.
> 
> Not sure... What does 'n' mean?  I don't see it in the man page for nm.
> 

Good question. As far as I can see, gcc uses it to mark symbols associated
with -frecord-gcc-switches, presumably in the .GCC.command.line section.

Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-09-29 20:46 ` Josh Poimboeuf
@ 2017-09-30  1:07   ` Guenter Roeck
  2017-10-03 17:54   ` Guenter Roeck
  1 sibling, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2017-09-30  1:07 UTC (permalink / raw)
  To: Josh Poimboeuf; +Cc: linux-kernel

On 09/29/2017 01:46 PM, Josh Poimboeuf wrote:
> On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
>> Hi Josh,
>>
>> when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
>> I get the folllowing build warning/error.
>>
>> make allmodconfig
>> KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
>> ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
>>
>> arch/x86/kvm/emulate.o: warning:
>> 	objtool: .GCC.command.line+0x0: special: can't find new instruction
>>
>> Building a full image aborts with:
>>
>> WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
>> 	from the (unknown reference) (unknown)
>> 	to the variable .GCC.command.line:kvm_fastop_exception
>> FATAL: The relocation at __ex_table+0x4c references
>> section ".GCC.command.line" which is not executable, IOW
>> the kernel will fault if it ever tries to
>> jump to it.  Something is seriously wrong
>> and should be fixed.
>> make[2]: *** [arch/x86/kvm/kvm.o] Error 1
>>
>> Any idea what might cause this problem ?
> 
> I think this is a GCC bug with the -frecord-gcc-switches feature.  Due
> to some ambiguity in some inline asm in emulate.c, it's placing some
> kernel code in the .GCC.command.line section.
> 

Interesting. Makes me wonder if it is doing something similar in the efi code.

> This seems to fix it:
> 
> 
> diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
> index a36254cbf776..d90cdc77e077 100644
> --- a/arch/x86/kvm/emulate.c
> +++ b/arch/x86/kvm/emulate.c
> @@ -425,8 +425,10 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *));
>   	#op " %al \n\t" \
>   	FOP_RET
>   
> -asm(".global kvm_fastop_exception \n"
> -    "kvm_fastop_exception: xor %esi, %esi; ret");
> +asm(".pushsection .fixup, \"ax\"\n"
> +    ".global kvm_fastop_exception \n"
> +    "kvm_fastop_exception: xor %esi, %esi; ret\n"
> +    ".popsection");
>   
>   FOP_START(setcc)
>   FOP_SETCC(seto)
> 

Yes, that fixes the problem for me.

Do you want to send a real patch ? If yes, feel free to add

Tested-by: Guenter Roeck <linux@roeck-us.net>

Thanks,
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-09-29 20:46 ` Josh Poimboeuf
  2017-09-30  1:07   ` Guenter Roeck
@ 2017-10-03 17:54   ` Guenter Roeck
  2017-10-03 18:00     ` Josh Poimboeuf
  1 sibling, 1 reply; 9+ messages in thread
From: Guenter Roeck @ 2017-10-03 17:54 UTC (permalink / raw)
  To: Josh Poimboeuf; +Cc: linux-kernel

Hi Josh,

On Fri, Sep 29, 2017 at 03:46:09PM -0500, Josh Poimboeuf wrote:
> On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
> > Hi Josh,
> > 
> > when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
> > I get the folllowing build warning/error.
> > 
> > make allmodconfig
> > KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
> > ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
> > 
> > arch/x86/kvm/emulate.o: warning:
> > 	objtool: .GCC.command.line+0x0: special: can't find new instruction
> > 
> > Building a full image aborts with:
> > 
> > WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
> > 	from the (unknown reference) (unknown)
> > 	to the variable .GCC.command.line:kvm_fastop_exception
> > FATAL: The relocation at __ex_table+0x4c references
> > section ".GCC.command.line" which is not executable, IOW
> > the kernel will fault if it ever tries to
> > jump to it.  Something is seriously wrong
> > and should be fixed.
> > make[2]: *** [arch/x86/kvm/kvm.o] Error 1
> > 
> > Any idea what might cause this problem ?
> 
> I think this is a GCC bug with the -frecord-gcc-switches feature.  Due
> to some ambiguity in some inline asm in emulate.c, it's placing some
> kernel code in the .GCC.command.line section.
> 
> This seems to fix it:
> 
> 
> diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
> index a36254cbf776..d90cdc77e077 100644
> --- a/arch/x86/kvm/emulate.c
> +++ b/arch/x86/kvm/emulate.c
> @@ -425,8 +425,10 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *));
>  	#op " %al \n\t" \
>  	FOP_RET
>  
> -asm(".global kvm_fastop_exception \n"
> -    "kvm_fastop_exception: xor %esi, %esi; ret");
> +asm(".pushsection .fixup, \"ax\"\n"
> +    ".global kvm_fastop_exception \n"
> +    "kvm_fastop_exception: xor %esi, %esi; ret\n"
> +    ".popsection");
>  
>  FOP_START(setcc)
>  FOP_SETCC(seto)

Do you plan to submit a patch for this, or do you want me to do it ?

Thanks,
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-10-03 17:54   ` Guenter Roeck
@ 2017-10-03 18:00     ` Josh Poimboeuf
  2017-10-03 20:27       ` Guenter Roeck
  0 siblings, 1 reply; 9+ messages in thread
From: Josh Poimboeuf @ 2017-10-03 18:00 UTC (permalink / raw)
  To: Guenter Roeck; +Cc: linux-kernel

On Tue, Oct 03, 2017 at 10:54:57AM -0700, Guenter Roeck wrote:
> Hi Josh,
> 
> On Fri, Sep 29, 2017 at 03:46:09PM -0500, Josh Poimboeuf wrote:
> > On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
> > > Hi Josh,
> > > 
> > > when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
> > > I get the folllowing build warning/error.
> > > 
> > > make allmodconfig
> > > KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
> > > ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
> > > 
> > > arch/x86/kvm/emulate.o: warning:
> > > 	objtool: .GCC.command.line+0x0: special: can't find new instruction
> > > 
> > > Building a full image aborts with:
> > > 
> > > WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
> > > 	from the (unknown reference) (unknown)
> > > 	to the variable .GCC.command.line:kvm_fastop_exception
> > > FATAL: The relocation at __ex_table+0x4c references
> > > section ".GCC.command.line" which is not executable, IOW
> > > the kernel will fault if it ever tries to
> > > jump to it.  Something is seriously wrong
> > > and should be fixed.
> > > make[2]: *** [arch/x86/kvm/kvm.o] Error 1
> > > 
> > > Any idea what might cause this problem ?
> > 
> > I think this is a GCC bug with the -frecord-gcc-switches feature.  Due
> > to some ambiguity in some inline asm in emulate.c, it's placing some
> > kernel code in the .GCC.command.line section.
> > 
> > This seems to fix it:
> > 
> > 
> > diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
> > index a36254cbf776..d90cdc77e077 100644
> > --- a/arch/x86/kvm/emulate.c
> > +++ b/arch/x86/kvm/emulate.c
> > @@ -425,8 +425,10 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *));
> >  	#op " %al \n\t" \
> >  	FOP_RET
> >  
> > -asm(".global kvm_fastop_exception \n"
> > -    "kvm_fastop_exception: xor %esi, %esi; ret");
> > +asm(".pushsection .fixup, \"ax\"\n"
> > +    ".global kvm_fastop_exception \n"
> > +    "kvm_fastop_exception: xor %esi, %esi; ret\n"
> > +    ".popsection");
> >  
> >  FOP_START(setcc)
> >  FOP_SETCC(seto)
> 
> Do you plan to submit a patch for this, or do you want me to do it ?

Sorry, I've been juggling a bunch of other bugs.  I'll submit it soon.

-- 
Josh

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Problems compiling with KCFLAGS="-frecord-gcc-switches"
  2017-10-03 18:00     ` Josh Poimboeuf
@ 2017-10-03 20:27       ` Guenter Roeck
  0 siblings, 0 replies; 9+ messages in thread
From: Guenter Roeck @ 2017-10-03 20:27 UTC (permalink / raw)
  To: Josh Poimboeuf; +Cc: linux-kernel

On Tue, Oct 03, 2017 at 01:00:23PM -0500, Josh Poimboeuf wrote:
> On Tue, Oct 03, 2017 at 10:54:57AM -0700, Guenter Roeck wrote:
> > Hi Josh,
> > 
> > On Fri, Sep 29, 2017 at 03:46:09PM -0500, Josh Poimboeuf wrote:
> > > On Fri, Sep 29, 2017 at 01:00:56PM -0700, Guenter Roeck wrote:
> > > > Hi Josh,
> > > > 
> > > > when trying to compile an image with KCFLAGS="-frecord-gcc-switches",
> > > > I get the folllowing build warning/error.
> > > > 
> > > > make allmodconfig
> > > > KCFLAGS="-frecord-gcc-switches" make arch/x86/kvm/emulate.o
> > > > ./tools/objtool/objtool check --no-unreachable "arch/x86/kvm/emulate.o"
> > > > 
> > > > arch/x86/kvm/emulate.o: warning:
> > > > 	objtool: .GCC.command.line+0x0: special: can't find new instruction
> > > > 
> > > > Building a full image aborts with:
> > > > 
> > > > WARNING: arch/x86/kvm/kvm.o(__ex_table+0x4c): Section mismatch in reference
> > > > 	from the (unknown reference) (unknown)
> > > > 	to the variable .GCC.command.line:kvm_fastop_exception
> > > > FATAL: The relocation at __ex_table+0x4c references
> > > > section ".GCC.command.line" which is not executable, IOW
> > > > the kernel will fault if it ever tries to
> > > > jump to it.  Something is seriously wrong
> > > > and should be fixed.
> > > > make[2]: *** [arch/x86/kvm/kvm.o] Error 1
> > > > 
> > > > Any idea what might cause this problem ?
> > > 
> > > I think this is a GCC bug with the -frecord-gcc-switches feature.  Due
> > > to some ambiguity in some inline asm in emulate.c, it's placing some
> > > kernel code in the .GCC.command.line section.
> > > 
> > > This seems to fix it:
> > > 
> > > 
> > > diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c
> > > index a36254cbf776..d90cdc77e077 100644
> > > --- a/arch/x86/kvm/emulate.c
> > > +++ b/arch/x86/kvm/emulate.c
> > > @@ -425,8 +425,10 @@ static int fastop(struct x86_emulate_ctxt *ctxt, void (*fop)(struct fastop *));
> > >  	#op " %al \n\t" \
> > >  	FOP_RET
> > >  
> > > -asm(".global kvm_fastop_exception \n"
> > > -    "kvm_fastop_exception: xor %esi, %esi; ret");
> > > +asm(".pushsection .fixup, \"ax\"\n"
> > > +    ".global kvm_fastop_exception \n"
> > > +    "kvm_fastop_exception: xor %esi, %esi; ret\n"
> > > +    ".popsection");
> > >  
> > >  FOP_START(setcc)
> > >  FOP_SETCC(seto)
> > 
> > Do you plan to submit a patch for this, or do you want me to do it ?
> 
> Sorry, I've been juggling a bunch of other bugs.  I'll submit it soon.
> 
Welcome to the club ...

Thanks!
Guenter

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2017-10-03 20:27 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-29 20:00 Problems compiling with KCFLAGS="-frecord-gcc-switches" Guenter Roeck
2017-09-29 20:38 ` Guenter Roeck
2017-09-29 20:58   ` Josh Poimboeuf
2017-09-29 23:08     ` Guenter Roeck
2017-09-29 20:46 ` Josh Poimboeuf
2017-09-30  1:07   ` Guenter Roeck
2017-10-03 17:54   ` Guenter Roeck
2017-10-03 18:00     ` Josh Poimboeuf
2017-10-03 20:27       ` Guenter Roeck

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.