* [gentoo-user] kernel 4.9.77 error segfault in compile.
@ 2018-01-22 15:51 Corbin Bird
2018-01-22 17:11 ` Alexander Kapshuk
2018-01-24 5:06 ` Adam Carter
0 siblings, 2 replies; 16+ messages in thread
From: Corbin Bird @ 2018-01-22 15:51 UTC (permalink / raw
To: gentoo-user
Anyone else getting this error? ( kernel 4.9.77 )
> CC fs/ext4/mballoc.o
> CC fs/ext4/block_validity.o
> CC fs/ext4/move_extent.o
> CC fs/ext4/mmp.o
> CC fs/ext4/indirect.o
> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
> find jump dest instruction at .text+0x56c
> CC fs/ext4/extents_status.o
> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
> check "fs/ext4/extents_status.o"
> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
> Error 139
> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
> make: *** [Makefile:995: fs] Error 2
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-22 15:51 [gentoo-user] kernel 4.9.77 error segfault in compile Corbin Bird
@ 2018-01-22 17:11 ` Alexander Kapshuk
2018-01-22 17:56 ` Rich Freeman
2018-01-24 5:06 ` Adam Carter
1 sibling, 1 reply; 16+ messages in thread
From: Alexander Kapshuk @ 2018-01-22 17:11 UTC (permalink / raw
To: Gentoo mailing list
On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinbird@charter.net> wrote:
> Anyone else getting this error? ( kernel 4.9.77 )
>
>> CC fs/ext4/mballoc.o
>> CC fs/ext4/block_validity.o
>> CC fs/ext4/move_extent.o
>> CC fs/ext4/mmp.o
>> CC fs/ext4/indirect.o
>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>> find jump dest instruction at .text+0x56c
>> CC fs/ext4/extents_status.o
>> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
>> check "fs/ext4/extents_status.o"
>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>> Error 139
>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>> make: *** [Makefile:995: fs] Error 2
>
> Corbin
>
>
Based on the output you supplied, objtool isn't happy with
fs/ext4/indirect.o and fs/ext4/extents_status.o.
Did you do 'make clean' prior to building the kernel?
If you did, it might be worth doing a 'make mrproper' before
rebuilding the kernel.
Don't forget to back up your .config before running mrproper.
Let us know how you go.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-22 17:11 ` Alexander Kapshuk
@ 2018-01-22 17:56 ` Rich Freeman
2018-01-23 2:34 ` Corbin Bird
0 siblings, 1 reply; 16+ messages in thread
From: Rich Freeman @ 2018-01-22 17:56 UTC (permalink / raw
To: gentoo-user
On Mon, Jan 22, 2018 at 12:11 PM, Alexander Kapshuk
<alexander.kapshuk@gmail.com> wrote:
> On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinbird@charter.net> wrote:
>> Anyone else getting this error? ( kernel 4.9.77 )
>>
>>> CC fs/ext4/mballoc.o
>>> CC fs/ext4/block_validity.o
>>> CC fs/ext4/move_extent.o
>>> CC fs/ext4/mmp.o
>>> CC fs/ext4/indirect.o
>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>> find jump dest instruction at .text+0x56c
>>> CC fs/ext4/extents_status.o
>>> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
>>> check "fs/ext4/extents_status.o"
>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>> Error 139
>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>> make: *** [Makefile:995: fs] Error 2
>>
>> Corbin
>>
>>
>
> Based on the output you supplied, objtool isn't happy with
> fs/ext4/indirect.o and fs/ext4/extents_status.o.
> Did you do 'make clean' prior to building the kernel?
> If you did, it might be worth doing a 'make mrproper' before
> rebuilding the kernel.
> Don't forget to back up your .config before running mrproper.
>
While this is going to cause a bit more building, I personally tend to
redirect kernel build output. I add O=/var/tmp/linux to all my make
commands, which leaves /usr/src untouched and builds faster besides
(tmpfs).
The main downsides to this are:
1. Make can't re-use objects from previous builds, so rebuilds will
go slower. Though, IMO this is worthwhile if re-using those objects
causes issues (which I assume is due to imperfect makefiles).
2. When building packages that install kernel modules the prepared
sources won't exist. This requires going back and re-preparing them
(make O=/var/tmp/linux modules_prepare). For packages like zfs-kmod
that use Module.symvers this is even more painful as you can only get
that by rebuilding the whole thing.
--
Rich
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-22 17:56 ` Rich Freeman
@ 2018-01-23 2:34 ` Corbin Bird
2018-01-23 7:42 ` Alexander Kapshuk
2018-01-23 17:30 ` Rich Freeman
0 siblings, 2 replies; 16+ messages in thread
From: Corbin Bird @ 2018-01-23 2:34 UTC (permalink / raw
To: gentoo-user
On 01/22/2018 11:56 AM, Rich Freeman wrote:
> On Mon, Jan 22, 2018 at 12:11 PM, Alexander Kapshuk
> <alexander.kapshuk@gmail.com> wrote:
>> On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinbird@charter.net> wrote:
>>> Anyone else getting this error? ( kernel 4.9.77 )
>>>
>>>> CC fs/ext4/mballoc.o
>>>> CC fs/ext4/block_validity.o
>>>> CC fs/ext4/move_extent.o
>>>> CC fs/ext4/mmp.o
>>>> CC fs/ext4/indirect.o
>>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>>> find jump dest instruction at .text+0x56c
>>>> CC fs/ext4/extents_status.o
>>>> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
>>>> check "fs/ext4/extents_status.o"
>>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>>> Error 139
>>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>>> make: *** [Makefile:995: fs] Error 2
>>> Corbin
>>>
>>>
>> Based on the output you supplied, objtool isn't happy with
>> fs/ext4/indirect.o and fs/ext4/extents_status.o.
>> Did you do 'make clean' prior to building the kernel?
>> If you did, it might be worth doing a 'make mrproper' before
>> rebuilding the kernel.
>> Don't forget to back up your .config before running mrproper.
>>
> While this is going to cause a bit more building, I personally tend to
> redirect kernel build output. I add O=/var/tmp/linux to all my make
> commands, which leaves /usr/src untouched and builds faster besides
> (tmpfs).
>
> The main downsides to this are:
> 1. Make can't re-use objects from previous builds, so rebuilds will
> go slower. Though, IMO this is worthwhile if re-using those objects
> causes issues (which I assume is due to imperfect makefiles).
> 2. When building packages that install kernel modules the prepared
> sources won't exist. This requires going back and re-preparing them
> (make O=/var/tmp/linux modules_prepare). For packages like zfs-kmod
> that use Module.symvers this is even more painful as you can only get
> that by rebuilding the whole thing.
>
Tried both approaches ... the results :
> make distclean
> make mrproper
> --> copy over .config
> make modules_prepare
> make && make modules_install
>
> CC fs/ext4/block_validity.o
> CC fs/ext4/move_extent.o
> CC fs/ext4/mmp.o
> CC fs/ext4/indirect.o
> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
> find jump dest instruction at .text+0x56c
> CC fs/ext4/extents_status.o
> /bin/sh: line 1: 24095 Segmentation fault ./tools/objtool/objtool
> check "fs/ext4/extents_status.o"
> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
> Error 139
> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
> make: *** [Makefile:995: fs] Error 2
>
>
Try 2 :
>
> make distclean
> make mrproper
> --> copy over .config
> make O=/var/tmp/linux modules_prepare
> make O=/var/tmp/linux && make O=/var/tmp/linux modules_install
>
> CC fs/ext4/move_extent.o
> CC fs/ext4/mmp.o
> CC fs/ext4/indirect.o
> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
> find jump dest instruction at .text+0x56c
> CC fs/ext4/extents_status.o
> /bin/sh: line 1: 21028 Segmentation fault ./tools/objtool/objtool
> check "fs/ext4/extents_status.o"
> make[3]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:294:
> fs/ext4/extents_status.o] Error 139
> make[2]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:544:
> fs/ext4] Error 2
> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:995: fs] Error 2
> make[1]: Leaving directory '/var/tmp/linux'
> make: *** [Makefile:150: sub-make] Error 2
Try 2 gave an error warning about needing an 'make mrproper' ... the error :
>
> CHK include/config/kernel.release
> UPD include/config/kernel.release
> Using /usr/src/linux-4.9.77-gentoo as source for kernel
> /usr/src/linux-4.9.77-gentoo is not clean, please run 'make mrproper'
> in the '/usr/src/linux-4.9.77-gentoo' directory.
> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:1021: prepare3]
> Error 1
> make[1]: Leaving directory '/var/tmp/linux'
> make: *** [Makefile:150: sub-make] Error 2
So ... I followed directions :
> Darkstar /usr/src/linux # cd /usr/src/linux-4.9.77-gentoo
> Darkstar /usr/src/linux-4.9.77-gentoo # make mrproper
> CLEAN scripts/basic
> CLEAN scripts/kconfig
> CLEAN .config
Still get the same error ...
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 2:34 ` Corbin Bird
@ 2018-01-23 7:42 ` Alexander Kapshuk
2018-01-23 8:03 ` Corbin Bird
2018-01-23 17:30 ` Rich Freeman
1 sibling, 1 reply; 16+ messages in thread
From: Alexander Kapshuk @ 2018-01-23 7:42 UTC (permalink / raw
To: Gentoo mailing list
On Tue, Jan 23, 2018 at 4:34 AM, Corbin Bird <corbinbird@charter.net> wrote:
> On 01/22/2018 11:56 AM, Rich Freeman wrote:
>> On Mon, Jan 22, 2018 at 12:11 PM, Alexander Kapshuk
>> <alexander.kapshuk@gmail.com> wrote:
>>> On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinbird@charter.net> wrote:
>>>> Anyone else getting this error? ( kernel 4.9.77 )
>>>>
>>>>> CC fs/ext4/mballoc.o
>>>>> CC fs/ext4/block_validity.o
>>>>> CC fs/ext4/move_extent.o
>>>>> CC fs/ext4/mmp.o
>>>>> CC fs/ext4/indirect.o
>>>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>>>> find jump dest instruction at .text+0x56c
>>>>> CC fs/ext4/extents_status.o
>>>>> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
>>>>> check "fs/ext4/extents_status.o"
>>>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>>>> Error 139
>>>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>>>> make: *** [Makefile:995: fs] Error 2
>>>> Corbin
>>>>
>>>>
>>> Based on the output you supplied, objtool isn't happy with
>>> fs/ext4/indirect.o and fs/ext4/extents_status.o.
>>> Did you do 'make clean' prior to building the kernel?
>>> If you did, it might be worth doing a 'make mrproper' before
>>> rebuilding the kernel.
>>> Don't forget to back up your .config before running mrproper.
>>>
>> While this is going to cause a bit more building, I personally tend to
>> redirect kernel build output. I add O=/var/tmp/linux to all my make
>> commands, which leaves /usr/src untouched and builds faster besides
>> (tmpfs).
>>
>> The main downsides to this are:
>> 1. Make can't re-use objects from previous builds, so rebuilds will
>> go slower. Though, IMO this is worthwhile if re-using those objects
>> causes issues (which I assume is due to imperfect makefiles).
>> 2. When building packages that install kernel modules the prepared
>> sources won't exist. This requires going back and re-preparing them
>> (make O=/var/tmp/linux modules_prepare). For packages like zfs-kmod
>> that use Module.symvers this is even more painful as you can only get
>> that by rebuilding the whole thing.
>>
>
> Tried both approaches ... the results :
>> make distclean
>> make mrproper
>> --> copy over .config
>> make modules_prepare
>> make && make modules_install
>>
>> CC fs/ext4/block_validity.o
>> CC fs/ext4/move_extent.o
>> CC fs/ext4/mmp.o
>> CC fs/ext4/indirect.o
>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>> find jump dest instruction at .text+0x56c
>> CC fs/ext4/extents_status.o
>> /bin/sh: line 1: 24095 Segmentation fault ./tools/objtool/objtool
>> check "fs/ext4/extents_status.o"
>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>> Error 139
>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>> make: *** [Makefile:995: fs] Error 2
>>
>>
> Try 2 :
>>
>> make distclean
>> make mrproper
>> --> copy over .config
>> make O=/var/tmp/linux modules_prepare
>> make O=/var/tmp/linux && make O=/var/tmp/linux modules_install
>>
>> CC fs/ext4/move_extent.o
>> CC fs/ext4/mmp.o
>> CC fs/ext4/indirect.o
>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>> find jump dest instruction at .text+0x56c
>> CC fs/ext4/extents_status.o
>> /bin/sh: line 1: 21028 Segmentation fault ./tools/objtool/objtool
>> check "fs/ext4/extents_status.o"
>> make[3]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:294:
>> fs/ext4/extents_status.o] Error 139
>> make[2]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:544:
>> fs/ext4] Error 2
>> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:995: fs] Error 2
>> make[1]: Leaving directory '/var/tmp/linux'
>> make: *** [Makefile:150: sub-make] Error 2
> Try 2 gave an error warning about needing an 'make mrproper' ... the error :
>>
>> CHK include/config/kernel.release
>> UPD include/config/kernel.release
>> Using /usr/src/linux-4.9.77-gentoo as source for kernel
>> /usr/src/linux-4.9.77-gentoo is not clean, please run 'make mrproper'
>> in the '/usr/src/linux-4.9.77-gentoo' directory.
>> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:1021: prepare3]
>> Error 1
>> make[1]: Leaving directory '/var/tmp/linux'
>> make: *** [Makefile:150: sub-make] Error 2
> So ... I followed directions :
>> Darkstar /usr/src/linux # cd /usr/src/linux-4.9.77-gentoo
>> Darkstar /usr/src/linux-4.9.77-gentoo # make mrproper
>> CLEAN scripts/basic
>> CLEAN scripts/kconfig
>> CLEAN .config
>
> Still get the same error ...
>
> Corbin
>
Is this a distribution supplied kernel or vanilla or one with your own
customisations/modifications?
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 7:42 ` Alexander Kapshuk
@ 2018-01-23 8:03 ` Corbin Bird
2018-01-23 8:19 ` Alexander Kapshuk
0 siblings, 1 reply; 16+ messages in thread
From: Corbin Bird @ 2018-01-23 8:03 UTC (permalink / raw
To: gentoo-user
On 01/23/2018 01:42 AM, Alexander Kapshuk wrote:
> On Tue, Jan 23, 2018 at 4:34 AM, Corbin Bird <corbinbird@charter.net> wrote:
>> On 01/22/2018 11:56 AM, Rich Freeman wrote:
>>> On Mon, Jan 22, 2018 at 12:11 PM, Alexander Kapshuk
>>> <alexander.kapshuk@gmail.com> wrote:
>>>> On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinbird@charter.net> wrote:
>>>>> Anyone else getting this error? ( kernel 4.9.77 )
>>>>>
>>>>>> CC fs/ext4/mballoc.o
>>>>>> CC fs/ext4/block_validity.o
>>>>>> CC fs/ext4/move_extent.o
>>>>>> CC fs/ext4/mmp.o
>>>>>> CC fs/ext4/indirect.o
>>>>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>>>>> find jump dest instruction at .text+0x56c
>>>>>> CC fs/ext4/extents_status.o
>>>>>> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
>>>>>> check "fs/ext4/extents_status.o"
>>>>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>>>>> Error 139
>>>>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>>>>> make: *** [Makefile:995: fs] Error 2
>>>>> Corbin
>>>>>
>>>>>
>>>> Based on the output you supplied, objtool isn't happy with
>>>> fs/ext4/indirect.o and fs/ext4/extents_status.o.
>>>> Did you do 'make clean' prior to building the kernel?
>>>> If you did, it might be worth doing a 'make mrproper' before
>>>> rebuilding the kernel.
>>>> Don't forget to back up your .config before running mrproper.
>>>>
>>> While this is going to cause a bit more building, I personally tend to
>>> redirect kernel build output. I add O=/var/tmp/linux to all my make
>>> commands, which leaves /usr/src untouched and builds faster besides
>>> (tmpfs).
>>>
>>> The main downsides to this are:
>>> 1. Make can't re-use objects from previous builds, so rebuilds will
>>> go slower. Though, IMO this is worthwhile if re-using those objects
>>> causes issues (which I assume is due to imperfect makefiles).
>>> 2. When building packages that install kernel modules the prepared
>>> sources won't exist. This requires going back and re-preparing them
>>> (make O=/var/tmp/linux modules_prepare). For packages like zfs-kmod
>>> that use Module.symvers this is even more painful as you can only get
>>> that by rebuilding the whole thing.
>>>
>> Tried both approaches ... the results :
>>> make distclean
>>> make mrproper
>>> --> copy over .config
>>> make modules_prepare
>>> make && make modules_install
>>>
>>> CC fs/ext4/block_validity.o
>>> CC fs/ext4/move_extent.o
>>> CC fs/ext4/mmp.o
>>> CC fs/ext4/indirect.o
>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>> find jump dest instruction at .text+0x56c
>>> CC fs/ext4/extents_status.o
>>> /bin/sh: line 1: 24095 Segmentation fault ./tools/objtool/objtool
>>> check "fs/ext4/extents_status.o"
>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>> Error 139
>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>> make: *** [Makefile:995: fs] Error 2
>>>
>>>
>> Try 2 :
>>> make distclean
>>> make mrproper
>>> --> copy over .config
>>> make O=/var/tmp/linux modules_prepare
>>> make O=/var/tmp/linux && make O=/var/tmp/linux modules_install
>>>
>>> CC fs/ext4/move_extent.o
>>> CC fs/ext4/mmp.o
>>> CC fs/ext4/indirect.o
>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>> find jump dest instruction at .text+0x56c
>>> CC fs/ext4/extents_status.o
>>> /bin/sh: line 1: 21028 Segmentation fault ./tools/objtool/objtool
>>> check "fs/ext4/extents_status.o"
>>> make[3]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:294:
>>> fs/ext4/extents_status.o] Error 139
>>> make[2]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:544:
>>> fs/ext4] Error 2
>>> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:995: fs] Error 2
>>> make[1]: Leaving directory '/var/tmp/linux'
>>> make: *** [Makefile:150: sub-make] Error 2
>> Try 2 gave an error warning about needing an 'make mrproper' ... the error :
>>> CHK include/config/kernel.release
>>> UPD include/config/kernel.release
>>> Using /usr/src/linux-4.9.77-gentoo as source for kernel
>>> /usr/src/linux-4.9.77-gentoo is not clean, please run 'make mrproper'
>>> in the '/usr/src/linux-4.9.77-gentoo' directory.
>>> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:1021: prepare3]
>>> Error 1
>>> make[1]: Leaving directory '/var/tmp/linux'
>>> make: *** [Makefile:150: sub-make] Error 2
>> So ... I followed directions :
>>> Darkstar /usr/src/linux # cd /usr/src/linux-4.9.77-gentoo
>>> Darkstar /usr/src/linux-4.9.77-gentoo # make mrproper
>>> CLEAN scripts/basic
>>> CLEAN scripts/kconfig
>>> CLEAN .config
>> Still get the same error ...
>>
>> Corbin
>>
> Is this a distribution supplied kernel or vanilla or one with your own
> customisations/modifications?
>
Using 'sys-kernel/gentoo-sources-4.9.77' with USE flags : modules
symlink experimental.
Both gcc && binutils have been upgraded to the latest stable / no signs
of them giving trouble.
Beginning to think that something corrupted during the emerge process ...
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 8:03 ` Corbin Bird
@ 2018-01-23 8:19 ` Alexander Kapshuk
2018-01-23 17:28 ` Corbin Bird
0 siblings, 1 reply; 16+ messages in thread
From: Alexander Kapshuk @ 2018-01-23 8:19 UTC (permalink / raw
To: Gentoo mailing list
On Tue, Jan 23, 2018 at 10:03 AM, Corbin Bird <corbinbird@charter.net> wrote:
>
>
> On 01/23/2018 01:42 AM, Alexander Kapshuk wrote:
>> On Tue, Jan 23, 2018 at 4:34 AM, Corbin Bird <corbinbird@charter.net> wrote:
>>> On 01/22/2018 11:56 AM, Rich Freeman wrote:
>>>> On Mon, Jan 22, 2018 at 12:11 PM, Alexander Kapshuk
>>>> <alexander.kapshuk@gmail.com> wrote:
>>>>> On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinbird@charter.net> wrote:
>>>>>> Anyone else getting this error? ( kernel 4.9.77 )
>>>>>>
>>>>>>> CC fs/ext4/mballoc.o
>>>>>>> CC fs/ext4/block_validity.o
>>>>>>> CC fs/ext4/move_extent.o
>>>>>>> CC fs/ext4/mmp.o
>>>>>>> CC fs/ext4/indirect.o
>>>>>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>>>>>> find jump dest instruction at .text+0x56c
>>>>>>> CC fs/ext4/extents_status.o
>>>>>>> /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
>>>>>>> check "fs/ext4/extents_status.o"
>>>>>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>>>>>> Error 139
>>>>>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>>>>>> make: *** [Makefile:995: fs] Error 2
>>>>>> Corbin
>>>>>>
>>>>>>
>>>>> Based on the output you supplied, objtool isn't happy with
>>>>> fs/ext4/indirect.o and fs/ext4/extents_status.o.
>>>>> Did you do 'make clean' prior to building the kernel?
>>>>> If you did, it might be worth doing a 'make mrproper' before
>>>>> rebuilding the kernel.
>>>>> Don't forget to back up your .config before running mrproper.
>>>>>
>>>> While this is going to cause a bit more building, I personally tend to
>>>> redirect kernel build output. I add O=/var/tmp/linux to all my make
>>>> commands, which leaves /usr/src untouched and builds faster besides
>>>> (tmpfs).
>>>>
>>>> The main downsides to this are:
>>>> 1. Make can't re-use objects from previous builds, so rebuilds will
>>>> go slower. Though, IMO this is worthwhile if re-using those objects
>>>> causes issues (which I assume is due to imperfect makefiles).
>>>> 2. When building packages that install kernel modules the prepared
>>>> sources won't exist. This requires going back and re-preparing them
>>>> (make O=/var/tmp/linux modules_prepare). For packages like zfs-kmod
>>>> that use Module.symvers this is even more painful as you can only get
>>>> that by rebuilding the whole thing.
>>>>
>>> Tried both approaches ... the results :
>>>> make distclean
>>>> make mrproper
>>>> --> copy over .config
>>>> make modules_prepare
>>>> make && make modules_install
>>>>
>>>> CC fs/ext4/block_validity.o
>>>> CC fs/ext4/move_extent.o
>>>> CC fs/ext4/mmp.o
>>>> CC fs/ext4/indirect.o
>>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>>> find jump dest instruction at .text+0x56c
>>>> CC fs/ext4/extents_status.o
>>>> /bin/sh: line 1: 24095 Segmentation fault ./tools/objtool/objtool
>>>> check "fs/ext4/extents_status.o"
>>>> make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
>>>> Error 139
>>>> make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
>>>> make: *** [Makefile:995: fs] Error 2
>>>>
>>>>
>>> Try 2 :
>>>> make distclean
>>>> make mrproper
>>>> --> copy over .config
>>>> make O=/var/tmp/linux modules_prepare
>>>> make O=/var/tmp/linux && make O=/var/tmp/linux modules_install
>>>>
>>>> CC fs/ext4/move_extent.o
>>>> CC fs/ext4/mmp.o
>>>> CC fs/ext4/indirect.o
>>>> fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
>>>> find jump dest instruction at .text+0x56c
>>>> CC fs/ext4/extents_status.o
>>>> /bin/sh: line 1: 21028 Segmentation fault ./tools/objtool/objtool
>>>> check "fs/ext4/extents_status.o"
>>>> make[3]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:294:
>>>> fs/ext4/extents_status.o] Error 139
>>>> make[2]: *** [/usr/src/linux-4.9.77-gentoo/scripts/Makefile.build:544:
>>>> fs/ext4] Error 2
>>>> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:995: fs] Error 2
>>>> make[1]: Leaving directory '/var/tmp/linux'
>>>> make: *** [Makefile:150: sub-make] Error 2
>>> Try 2 gave an error warning about needing an 'make mrproper' ... the error :
>>>> CHK include/config/kernel.release
>>>> UPD include/config/kernel.release
>>>> Using /usr/src/linux-4.9.77-gentoo as source for kernel
>>>> /usr/src/linux-4.9.77-gentoo is not clean, please run 'make mrproper'
>>>> in the '/usr/src/linux-4.9.77-gentoo' directory.
>>>> make[1]: *** [/usr/src/linux-4.9.77-gentoo/Makefile:1021: prepare3]
>>>> Error 1
>>>> make[1]: Leaving directory '/var/tmp/linux'
>>>> make: *** [Makefile:150: sub-make] Error 2
>>> So ... I followed directions :
>>>> Darkstar /usr/src/linux # cd /usr/src/linux-4.9.77-gentoo
>>>> Darkstar /usr/src/linux-4.9.77-gentoo # make mrproper
>>>> CLEAN scripts/basic
>>>> CLEAN scripts/kconfig
>>>> CLEAN .config
>>> Still get the same error ...
>>>
>>> Corbin
>>>
>> Is this a distribution supplied kernel or vanilla or one with your own
>> customisations/modifications?
>>
>
> Using 'sys-kernel/gentoo-sources-4.9.77' with USE flags : modules
> symlink experimental.
> Both gcc && binutils have been upgraded to the latest stable / no signs
> of them giving trouble.
>
> Beginning to think that something corrupted during the emerge process ...
>
> Corbin
>
>
The 4.9.77 announcement upstream did introduce a number of objtool
changes. See below.
https://lkml.org/lkml/2018/1/17/198
Josh Poimboeuf (4):
objtool, modules: Discard objtool annotation sections for modules
objtool: Detect jumps to retpoline thunks
objtool: Allow alternatives to be ignored
objtool: Fix retpoline support for pre-ORC objtool
I can't seem to remember seeing reports of the issue you're having on
the LMKL, since 4.9.77 was announced.
As you said, try re-emerging the gentoo kernel, make mrproper, no need
for distclean, which does run mrproper as part of its operation, and
see if that helps.
Alternatively, you could try building the upstream version of 4.9.77,
and see if that works. Let me know if you need instructions on how to
proceed with that.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 8:19 ` Alexander Kapshuk
@ 2018-01-23 17:28 ` Corbin Bird
2018-01-23 17:35 ` Rich Freeman
0 siblings, 1 reply; 16+ messages in thread
From: Corbin Bird @ 2018-01-23 17:28 UTC (permalink / raw
To: gentoo-user
> The 4.9.77 announcement upstream did introduce a number of objtool
> changes. See below.
> https://lkml.org/lkml/2018/1/17/198
> Josh Poimboeuf (4):
> objtool, modules: Discard objtool annotation sections for modules
> objtool: Detect jumps to retpoline thunks
> objtool: Allow alternatives to be ignored
> objtool: Fix retpoline support for pre-ORC objtool
>
> I can't seem to remember seeing reports of the issue you're having on
> the LMKL, since 4.9.77 was announced.
> As you said, try re-emerging the gentoo kernel, make mrproper, no need
> for distclean, which does run mrproper as part of its operation, and
> see if that helps.
> Alternatively, you could try building the upstream version of 4.9.77,
> and see if that works. Let me know if you need instructions on how to
> proceed with that.
>
FYI :
Just tried a different compile.
Switched off expert and flipped the CPU to "Generic x86_64" ( no other
changes ).
It compiled. ??????
So ... what you choose for CPU in the kernel determines if the
ext2/ext3/ext4 fs driver will compile.
Been using Gentoo / "sys-kernel/gentoo-sources" w/experimental for 3+
years now.
First time the CPU choice has caused a problem.
Suspect that a mismatch of the "Spectre / Meltdown" patches that have
somehow gotten into the ext4 fs driver and the code for specific CPUs.
Wonderful ... just finished a complete reload of Gentoo. Now have to
redo it again ...
... the mistake? I used ext2/ext3 for the fs.
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 2:34 ` Corbin Bird
2018-01-23 7:42 ` Alexander Kapshuk
@ 2018-01-23 17:30 ` Rich Freeman
1 sibling, 0 replies; 16+ messages in thread
From: Rich Freeman @ 2018-01-23 17:30 UTC (permalink / raw
To: gentoo-user
On Mon, Jan 22, 2018 at 9:34 PM, Corbin Bird <corbinbird@charter.net> wrote:
> On 01/22/2018 11:56 AM, Rich Freeman wrote:
>
> Tried both approaches ... the results :
>>
>> make distclean
>> make mrproper
>> --> copy over .config
>> make O=/var/tmp/linux modules_prepare
>> make O=/var/tmp/linux && make O=/var/tmp/linux modules_install
Two comments:
1. You don't need to run modules_prepare, unless you're just building
modules and not the rest of the kernel.
2. .config goes in /var/tmp/linux, not in /usr/src/linux.
It probably wouldn't hurt to wipe your sources and re-download them
instead of just running make mrproper (which won't fix modifications
made to source files). If you're using git sources you could just do
a hard git reset, which would fix any files in the repo.
I'll comment on your later reply...
--
Rich
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 17:28 ` Corbin Bird
@ 2018-01-23 17:35 ` Rich Freeman
2018-01-23 17:59 ` Wol's lists
2018-01-24 1:55 ` Corbin Bird
0 siblings, 2 replies; 16+ messages in thread
From: Rich Freeman @ 2018-01-23 17:35 UTC (permalink / raw
To: gentoo-user
On Tue, Jan 23, 2018 at 12:28 PM, Corbin Bird <corbinbird@charter.net> wrote:
>
>
> FYI :
> Just tried a different compile.
> Switched off expert and flipped the CPU to "Generic x86_64" ( no other
> changes ).
>
> It compiled. ??????
>
> So ... what you choose for CPU in the kernel determines if the
> ext2/ext3/ext4 fs driver will compile.
>
> Been using Gentoo / "sys-kernel/gentoo-sources" w/experimental for 3+
> years now.
> First time the CPU choice has caused a problem.
>
> Suspect that a mismatch of the "Spectre / Meltdown" patches that have
> somehow gotten into the ext4 fs driver and the code for specific CPUs.
>
> Wonderful ... just finished a complete reload of Gentoo. Now have to
> redo it again ...
> ... the mistake? I used ext2/ext3 for the fs.
>
Abandoning ext4 over retpolines/etc seems a bit drastic. My guess is
that there is a bug in the latest kernel that will get fixed, or maybe
a bug in gcc (which needs to be patched for spectre anyway).
These Spectre changes are being merged and it has been a real mess.
The vulnerability is relatively serious so there is a lot of pressure
to do something, but the changes aren't trivial so they could contain
bugs or expose compiler bugs.
FWIW upstream 4.9.77 builds just fine for me,
If you want to mess with building alternate kernels to debug this here
are some instructions I created for this:
As a test you might consider the following:
mkdir /someplace
cd /someplace
git clone -b linux-4.9.y
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
.
mkdir /var/tmp/linux
cp /path/to/config /var/tmp/linux/.config
make O=/var/tmp/linux oldconfig
make O=/var/tmp/linux -j#
That will build the latest stable upstream kernel.
Depending on what you find you can do:
git checkout v4.9.76
rm -r /var/tmp/linux
mkdir /var/tmp/linux
cp /path/to/config /var/tmp/linux/.config
make O=/var/tmp/linux oldconfig
make O=/var/tmp/linux -j#
That will see if 4.9.76 fails. You could also substitute any version
you want (including a 4.14 kernel, or an earlier 4.9 kernel). This
will give you a sense of whether your toolchain is just entirely
broken, or if there is an issue with the objtool changes.
Note that you can build away as much as you want without having to
install any of this - so it won't affect your system at all. In fact,
the instructions above will work just fine if you run them as
non-root, as long as you clone the git sources and put the temp
directory someplace your non-root user has access to.
--
Rich
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 17:35 ` Rich Freeman
@ 2018-01-23 17:59 ` Wol's lists
2018-01-23 19:14 ` Corbin Bird
2018-01-24 1:55 ` Corbin Bird
1 sibling, 1 reply; 16+ messages in thread
From: Wol's lists @ 2018-01-23 17:59 UTC (permalink / raw
To: gentoo-user
On 23/01/18 17:35, Rich Freeman wrote:
>> Wonderful ... just finished a complete reload of Gentoo. Now have to
>> redo it again ...
>> ... the mistake? I used ext2/ext3 for the fs.
>>
> Abandoning ext4 over retpolines/etc seems a bit drastic. My guess is
> that there is a bug in the latest kernel that will get fixed, or maybe
> a bug in gcc (which needs to be patched for spectre anyway).
Did you use the ext2/ext3 driver? I believe it's been abandoned?
The ext4 driver is compatible with 2/3 file systems, so as I understand
it all development effort goes into the ext4 driver, and any problems
with the older drivers is likely to be met with "upgrade your driver".
So if you were using that driver, it could be suffering bit-rot.
Cheers,
Wol
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 17:59 ` Wol's lists
@ 2018-01-23 19:14 ` Corbin Bird
0 siblings, 0 replies; 16+ messages in thread
From: Corbin Bird @ 2018-01-23 19:14 UTC (permalink / raw
To: gentoo-user
On 01/23/2018 11:59 AM, Wol's lists wrote:
> On 23/01/18 17:35, Rich Freeman wrote:
>>> Wonderful ... just finished a complete reload of Gentoo. Now have to
>>> redo it again ...
>>> ... the mistake? I used ext2/ext3 for the fs.
>>>
>> Abandoning ext4 over retpolines/etc seems a bit drastic. My guess is
>> that there is a bug in the latest kernel that will get fixed, or maybe
>> a bug in gcc (which needs to be patched for spectre anyway).
>
> Did you use the ext2/ext3 driver? I believe it's been abandoned?
>
> The ext4 driver is compatible with 2/3 file systems, so as I
> understand it all development effort goes into the ext4 driver, and
> any problems with the older drivers is likely to be met with "upgrade
> your driver".
>
> So if you were using that driver, it could be suffering bit-rot.
>
> Cheers,
> Wol
>
Sometime back the kernel devs decided to 'remove' the ext2 / ext3 fs
drivers.
The ext2 / ext3 fs drivers are NOT available.
Any choice of ext2 / ext3 forces the use of the ext4 fs driver.
If I could use the real ext2 / ext3 fs drivers ...
... I would in the blink of an eye.
ext2 / ext3 are the definition of 'stable' file systems.
ext4 .... unstable, still in development, prone to breakage.
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-23 17:35 ` Rich Freeman
2018-01-23 17:59 ` Wol's lists
@ 2018-01-24 1:55 ` Corbin Bird
2018-01-24 2:17 ` Rich Freeman
1 sibling, 1 reply; 16+ messages in thread
From: Corbin Bird @ 2018-01-24 1:55 UTC (permalink / raw
To: gentoo-user
On 01/23/2018 11:35 AM, Rich Freeman wrote:
> Abandoning ext4 over retpolines/etc seems a bit drastic. My guess is
> that there is a bug in the latest kernel that will get fixed, or maybe
> a bug in gcc (which needs to be patched for spectre anyway).
>
> These Spectre changes are being merged and it has been a real mess.
> The vulnerability is relatively serious so there is a lot of pressure
> to do something, but the changes aren't trivial so they could contain
> bugs or expose compiler bugs.
>
> FWIW upstream 4.9.77 builds just fine for me,
>
> If you want to mess with building alternate kernels to debug this here
> are some instructions I created for this:
>
> As a test you might consider the following:
>
> mkdir /someplace
> cd /someplace
> git clone -b linux-4.9.y
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
> .
> mkdir /var/tmp/linux
> cp /path/to/config /var/tmp/linux/.config
> make O=/var/tmp/linux oldconfig
> make O=/var/tmp/linux -j#
>
> That will build the latest stable upstream kernel.
>
> Depending on what you find you can do:
> git checkout v4.9.76
> rm -r /var/tmp/linux
> mkdir /var/tmp/linux
> cp /path/to/config /var/tmp/linux/.config
> make O=/var/tmp/linux oldconfig
> make O=/var/tmp/linux -j#
>
> That will see if 4.9.76 fails. You could also substitute any version
> you want (including a 4.14 kernel, or an earlier 4.9 kernel). This
> will give you a sense of whether your toolchain is just entirely
> broken, or if there is an issue with the objtool changes.
>
> Note that you can build away as much as you want without having to
> install any of this - so it won't affect your system at all. In fact,
> the instructions above will work just fine if you run them as
> non-root, as long as you clone the git sources and put the temp
> directory someplace your non-root user has access to.
>
Tried this ... and here are the steps followed and results :
Note :
CPU defined as K8, NO vendor support for Intel or Centaur, AMD only.
gcc && binutils are both current stable, both r1's. Tested and working.
Both Disabled in 'menuconfig' :
> [ ] Avoid speculative indirect branches in kernel
> [ ] Remove the kernel mapping in user mode
The steps followed :
-----
mkdir /opt/compile
cd /opt/compile
git clone -b linux-4.9.y
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
renamed 'linux-stable' to 'linux-4.9.77'
ln -s /opt/compile/linux-4.9.77 linux
cd /opt/compile/linux
make menuconfig
mkdir /var/tmp/linux
cp /opt/compile/linux/.config /var/tmp/linux/.config
make O=/var/tmp/linux oldconfig
make O=/var/tmp/linux -j9
-----
The results ( first pass ) :
> HOSTCC arch/x86/tools/relocs_64.o
> HOSTCC arch/x86/tools/relocs_common.o
> Using /opt/compile/linux-4.9.77 as source for kernel
> /opt/compile/linux-4.9.77 is not clean, please run 'make mrproper'
> in the '/opt/compile/linux-4.9.77' directory.
> make[1]: *** [/opt/compile/linux-4.9.77/Makefile:1021: prepare3] Error 1
> make[1]: *** Waiting for unfinished jobs....
> HOSTLD arch/x86/tools/relocs
> make[1]: Leaving directory '/var/tmp/linux'
> make: *** [Makefile:150: sub-make] Error 2
So ... I ran 'make mrproper' in '/opt/compile/linux-4.9.77/'
The result :
> HOSTCC arch/x86/tools/relocs_64.o
> HOSTCC arch/x86/tools/relocs_common.o
> Using /opt/compile/linux-4.9.77 as source for kernel
> /opt/compile/linux-4.9.77 is not clean, please run 'make mrproper'
> in the '/opt/compile/linux-4.9.77' directory.
> make[1]: *** [/opt/compile/linux-4.9.77/Makefile:1021: prepare3] Error 1
> make[1]: *** Waiting for unfinished jobs....
> HOSTLD arch/x86/tools/relocs
> make[1]: Leaving directory '/var/tmp/linux'
> make: *** [Makefile:150: sub-make] Error 2
Something is not right ....
HOSTCC arch/x86/tools/relocs_64.o
HOSTCC arch/x86/tools/relocs_common.o
HOSTLD arch/x86/tools/relocs
Is this the 'Spectre/Meltdown' patches again?!?
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-24 1:55 ` Corbin Bird
@ 2018-01-24 2:17 ` Rich Freeman
0 siblings, 0 replies; 16+ messages in thread
From: Rich Freeman @ 2018-01-24 2:17 UTC (permalink / raw
To: gentoo-user
On Tue, Jan 23, 2018 at 8:55 PM, Corbin Bird <corbinbird@charter.net> wrote:
>
> So ... I ran 'make mrproper' in '/opt/compile/linux-4.9.77/'
If you're doing this right make mrproper won't do anything, since
you're not writing to the source tree anyway.
What happens when you build v4.9.76? I would be useful to confirm
that it is in fact the .77 patches that cause the issue. The next
step would be to maybe revert commit
3d16a1315add12386894e7dc7bc86454e4f4b79d. If that doesn't do it I'd
just start bisecting between the two releases.
--
Rich
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-22 15:51 [gentoo-user] kernel 4.9.77 error segfault in compile Corbin Bird
2018-01-22 17:11 ` Alexander Kapshuk
@ 2018-01-24 5:06 ` Adam Carter
2018-01-24 19:56 ` Corbin Bird
1 sibling, 1 reply; 16+ messages in thread
From: Adam Carter @ 2018-01-24 5:06 UTC (permalink / raw
To: gentoo-user
[-- Attachment #1: Type: text/plain, Size: 1647 bytes --]
On Tue, Jan 23, 2018 at 2:51 AM, Corbin Bird <corbinbird@charter.net> wrote:
> Anyone else getting this error? ( kernel 4.9.77 )
>
> > CC fs/ext4/mballoc.o
> > CC fs/ext4/block_validity.o
> > CC fs/ext4/move_extent.o
> > CC fs/ext4/mmp.o
> > CC fs/ext4/indirect.o
> > fs/ext4/indirect.o: warning: objtool: ext4_clear_blocks()+0x242: can't
> > find jump dest instruction at .text+0x56c
> > CC fs/ext4/extents_status.o
> > /bin/sh: line 1: 31735 Segmentation fault ./tools/objtool/objtool
> > check "fs/ext4/extents_status.o"
> > make[2]: *** [scripts/Makefile.build:294: fs/ext4/extents_status.o]
> > Error 139
> > make[1]: *** [scripts/Makefile.build:544: fs/ext4] Error 2
> > make: *** [Makefile:995: fs] Error 2
>
>
FYI, this is from 4.14.15's ChangeLog, doesn't appear to be in 4.9.78
though.
commit f41b2d7ee791e845147a3e3cafb25493dca6870a
Author: Josh Poimboeuf <jpoimboe@redhat.com>
Date: Mon Jan 15 08:17:07 2018 -0600
objtool: Fix seg fault with gold linker
commit 2a0098d70640dda192a79966c14d449e7a34d675 upstream.
Objtool segfaults when the gold linker is used with
CONFIG_MODVERSIONS=y and CONFIG_UNWINDER_ORC=y.
With CONFIG_MODVERSIONS=y, the .o file gets passed to the linker before
being passed to objtool. The gold linker seems to strip unused ELF
symbols by default, which confuses objtool and causes the seg fault when
it's trying to generate ORC metadata.
Objtool should really be running immediately after GCC anyway, without a
linker call in between. Change the makefile ordering so that objtool is
called before the linker.
[-- Attachment #2: Type: text/html, Size: 2401 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [gentoo-user] kernel 4.9.77 error segfault in compile.
2018-01-24 5:06 ` Adam Carter
@ 2018-01-24 19:56 ` Corbin Bird
0 siblings, 0 replies; 16+ messages in thread
From: Corbin Bird @ 2018-01-24 19:56 UTC (permalink / raw
To: gentoo-user
On 01/23/2018 11:06 PM, Adam Carter wrote:
>
> FYI, this is from 4.14.15's ChangeLog, doesn't appear to be in 4.9.78
> though.
>
> commit f41b2d7ee791e845147a3e3cafb25493dca6870a
> Author: Josh Poimboeuf <jpoimboe@redhat.com <mailto:jpoimboe@redhat.com>>
> Date: Mon Jan 15 08:17:07 2018 -0600
>
> objtool: Fix seg fault with gold linker
>
> commit 2a0098d70640dda192a79966c14d449e7a34d675 upstream.
>
> Objtool segfaults when the gold linker is used with
> CONFIG_MODVERSIONS=y and CONFIG_UNWINDER_ORC=y.
>
> With CONFIG_MODVERSIONS=y, the .o file gets passed to the linker before
> being passed to objtool. The gold linker seems to strip unused ELF
> symbols by default, which confuses objtool and causes the seg fault when
> it's trying to generate ORC metadata.
>
> Objtool should really be running immediately after GCC anyway, without a
> linker call in between. Change the makefile ordering so that objtool is
> called before the linker.
.
FYI :
Found the culprit ... ( very late last night )
.
sys-kernel/gentoo-sources has a USE Flag of 'experimental'
The experimental patch enables additional choices for CPU.
The last kernel version with no problem was 4.9.76-r1
The choice that worked before was : AMD Piledriver
That induces the error now.
.
When I compiled with CPU set to :
K-8 --> no problem
Generic x86_64 --> no problem
.
That was the only change made in 'menuconfig' before every test compile.
.
Now I know why all the warnings from the 'objtool', during compile, also
disappeared.
( With CPU set to either : K-8, Generic x86_64 )
> Objtool should really be running immediately after GCC anyway, without a
> linker call in between. Change the makefile ordering so that objtool is
> called before the linker.
Thinking the 'experimental patch' may be needing some attention.
.
So ... now I am looking at filling a bug report ( if appropriate ) on
Gentoo's bug tracker.
.
Thanks to every one who chipped in with suggestions.
.
Corbin
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2018-01-24 19:56 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-22 15:51 [gentoo-user] kernel 4.9.77 error segfault in compile Corbin Bird
2018-01-22 17:11 ` Alexander Kapshuk
2018-01-22 17:56 ` Rich Freeman
2018-01-23 2:34 ` Corbin Bird
2018-01-23 7:42 ` Alexander Kapshuk
2018-01-23 8:03 ` Corbin Bird
2018-01-23 8:19 ` Alexander Kapshuk
2018-01-23 17:28 ` Corbin Bird
2018-01-23 17:35 ` Rich Freeman
2018-01-23 17:59 ` Wol's lists
2018-01-23 19:14 ` Corbin Bird
2018-01-24 1:55 ` Corbin Bird
2018-01-24 2:17 ` Rich Freeman
2018-01-23 17:30 ` Rich Freeman
2018-01-24 5:06 ` Adam Carter
2018-01-24 19:56 ` Corbin Bird
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox