On Tue, Jan 23, 2018 at 10:03 AM, Corbin Bird <corbinb...@charter.net> wrote:
>
>
> On 01/23/2018 01:42 AM, Alexander Kapshuk wrote:
>> On Tue, Jan 23, 2018 at 4:34 AM, Corbin Bird <corbinb...@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.kaps...@gmail.com> wrote:
>>>>> On Mon, Jan 22, 2018 at 5:51 PM, Corbin Bird <corbinb...@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.

Reply via email to