Hi,
I usually have no problem compiling vanilla or Letux kernel, but Letux 4.9-rc4 produces a lot of this at boot on the EVM : ... [ 15.922851] nvmem_core: no symbol version for memcpy [ 15.931809] nvmem_core: Unknown symbol memcpy (err -22) [ 15.931993] snd_pcm_dmaengine: no symbol version for _set_bit [ 15.948771] snd_pcm_dmaengine: Unknown symbol _set_bit (err -22) [ 15.964411] snd_pcm_dmaengine: no symbol version for __aeabi_uidiv [ 15.977449] palmas_gpadc: no symbol version for __aeabi_idiv [ 15.983640] snd_pcm_dmaengine: Unknown symbol __aeabi_uidiv (err -22) [ 16.003734] palmas_gpadc: Unknown symbol __aeabi_idiv (err -22) ...
and most modules can't load. Gcc version 5.4.0 . Latest perfectly working kernels I tested were both vanilla and Letux 4.8.0.
A full boot log is attached.
LS
Am 10.11.2016 um 11:08 schrieb Linux-SWAT openpandora@free.fr:
Hi,
I usually have no problem compiling vanilla or Letux kernel, but Letux 4.9-rc4 produces a lot of this at boot on the EVM : ... [ 15.922851] nvmem_core: no symbol version for memcpy [ 15.931809] nvmem_core: Unknown symbol memcpy (err -22) [ 15.931993] snd_pcm_dmaengine: no symbol version for _set_bit [ 15.948771] snd_pcm_dmaengine: Unknown symbol _set_bit (err -22) [ 15.964411] snd_pcm_dmaengine: no symbol version for __aeabi_uidiv [ 15.977449] palmas_gpadc: no symbol version for __aeabi_idiv [ 15.983640] snd_pcm_dmaengine: Unknown symbol __aeabi_uidiv (err -22) [ 16.003734] palmas_gpadc: Unknown symbol __aeabi_idiv (err -22) ...
and most modules can't load. Gcc version 5.4.0 . Latest perfectly working kernels I tested were both vanilla and Letux 4.8.0.
To me it looks as if these are compiler-builtin functions which are for some unknown reason not built into the kernel modules but referenced explicitly as external functions. So they are expected to be an exported part of the uImage.
Does gcc 5.4 have a new compiler option required to inline such compiler builtins? Or does the build process not include the libgcc properly?
Maybe one of the fellow kernel developers knows something.
BR, Nikolaus
Am 11.11.2016 um 11:49 schrieb H. Nikolaus Schaller hns@goldelico.com:
Am 10.11.2016 um 11:08 schrieb Linux-SWAT openpandora@free.fr:
Hi,
I usually have no problem compiling vanilla or Letux kernel, but Letux 4.9-rc4 produces a lot of this at boot on the EVM : ... [ 15.922851] nvmem_core: no symbol version for memcpy [ 15.931809] nvmem_core: Unknown symbol memcpy (err -22) [ 15.931993] snd_pcm_dmaengine: no symbol version for _set_bit [ 15.948771] snd_pcm_dmaengine: Unknown symbol _set_bit (err -22) [ 15.964411] snd_pcm_dmaengine: no symbol version for __aeabi_uidiv [ 15.977449] palmas_gpadc: no symbol version for __aeabi_idiv [ 15.983640] snd_pcm_dmaengine: Unknown symbol __aeabi_uidiv (err -22) [ 16.003734] palmas_gpadc: Unknown symbol __aeabi_idiv (err -22) ...
and most modules can't load. Gcc version 5.4.0 .
I should have added that it works for me with a gcc 4.9.
Question: where did you get the compiler from? What is your build host?
Maybe the compiler setup has a bug and/or something changed in global Linux 4.9 Makefiles.
Latest perfectly working kernels I tested were both vanilla and Letux 4.8.0.
To me it looks as if these are compiler-builtin functions which are for some unknown reason not built into the kernel modules but referenced explicitly as external functions. So they are expected to be an exported part of the uImage.
Does gcc 5.4 have a new compiler option required to inline such compiler builtins? Or does the build process not include the libgcc properly?
Maybe one of the fellow kernel developers knows something.
Le 2016-11-11 11:52, H. Nikolaus Schaller a écrit :
Am 11.11.2016 um 11:49 schrieb H. Nikolaus Schaller hns@goldelico.com:
Am 10.11.2016 um 11:08 schrieb Linux-SWAT openpandora@free.fr:
Hi,
I usually have no problem compiling vanilla or Letux kernel, but Letux 4.9-rc4 produces a lot of this at boot on the EVM : ... [ 15.922851] nvmem_core: no symbol version for memcpy [ 15.931809] nvmem_core: Unknown symbol memcpy (err -22) [ 15.931993] snd_pcm_dmaengine: no symbol version for _set_bit [ 15.948771] snd_pcm_dmaengine: Unknown symbol _set_bit (err -22) [ 15.964411] snd_pcm_dmaengine: no symbol version for __aeabi_uidiv [ 15.977449] palmas_gpadc: no symbol version for __aeabi_idiv [ 15.983640] snd_pcm_dmaengine: Unknown symbol __aeabi_uidiv (err -22) [ 16.003734] palmas_gpadc: Unknown symbol __aeabi_idiv (err -22) ...
and most modules can't load. Gcc version 5.4.0 .
I should have added that it works for me with a gcc 4.9.
Question: where did you get the compiler from? What is your build host?
Maybe the compiler setup has a bug and/or something changed in global Linux 4.9 Makefiles.
I'm on a standard Slackware ARM -current, armhf ARMv7-a.
Latest perfectly working kernels I tested were both vanilla and Letux 4.8.0.
To me it looks as if these are compiler-builtin functions which are for some unknown reason not built into the kernel modules but referenced explicitly as external functions. So they are expected to be an exported part of the uImage.
Does gcc 5.4 have a new compiler option required to inline such compiler builtins? Or does the build process not include the libgcc properly?
Maybe one of the fellow kernel developers knows something.
On 11/11/2016 01:47 PM, Linux-SWAT wrote:
Le 2016-11-11 11:52, H. Nikolaus Schaller a écrit :
Am 11.11.2016 um 11:49 schrieb H. Nikolaus Schaller hns@goldelico.com:
Am 10.11.2016 um 11:08 schrieb Linux-SWAT openpandora@free.fr:
Hi,
I usually have no problem compiling vanilla or Letux kernel, but Letux 4.9-rc4 produces a lot of this at boot on the EVM :
I've tried it here, and don't see those problems. I'm also using gcc 4.9, so i guess the compiler is the problem.
What i have been getting however is that it throws out
ts3a227e_interrupt ts3a227e_new_jack_state: plugged 0 mic_pres 0
about 100 times/second, making everything incredibly slow (with it going over the serial port). It only does it on the prototype, it works fine on the evm.
Hi,
Am 11.11.2016 um 20:02 schrieb aTc atc@k-n-p.org:
On 11/11/2016 01:47 PM, Linux-SWAT wrote:
Le 2016-11-11 11:52, H. Nikolaus Schaller a écrit :
Am 11.11.2016 um 11:49 schrieb H. Nikolaus Schaller hns@goldelico.com:
Am 10.11.2016 um 11:08 schrieb Linux-SWAT openpandora@free.fr:
Hi,
I usually have no problem compiling vanilla or Letux kernel, but Letux 4.9-rc4 produces a lot of this at boot on the EVM :
I've tried it here, and don't see those problems. I'm also using gcc 4.9, so i guess the compiler is the problem.
What i have been getting however is that it throws out
ts3a227e_interrupt ts3a227e_new_jack_state: plugged 0 mic_pres 0
about 100 times/second, making everything incredibly slow (with it going over the serial port). It only does it on the prototype, it works fine on the evm.
Ah, I see.
Hm. That is really interesting since the ts3a227e_interrupt is not triggered on my ts3a227 prototype for the new hardware release.
The pyra prototypes have a ts3a225 (like the EVM).
Maybe the ts3a227e driver is not checking that the chip is really installed and responding on i2c! Or maybe it is talking to the ts3a225 chip which is there and installs some interrupt handler.
So for the moment it could be sufficient to remove the snd-soc-ts3a227e.ko
Something else makes me wonder. The standard device tree file has no entry to load the ts3a227 at all.
Did you use the V5.1 device tree? That one is only for the new hardware.
BR and thanks, Nikolaus
And while retrying a compilation, I noticed this :
WARNING: "memcpy" [sound/core/snd-rawmidi.ko] has no CRC! WARNING: "__aeabi_uidiv" [sound/core/snd-pcm-dmaengine.ko] has no CRC! WARNING: "_set_bit" [sound/core/snd-pcm-dmaengine.ko] has no CRC! WARNING: "__get_user_4" [sound/core/snd-hwdep.ko] has no CRC! WARNING: "arm_copy_from_user" [sound/core/snd-hwdep.ko] has no CRC! WARNING: "arm_copy_to_user" [sound/core/snd-hwdep.ko] has no CRC! WARNING: "__memzero" [sound/core/snd-hwdep.ko] has no CRC! WARNING: "__put_user_4" [sound/core/snd-hwdep.ko] has no CRC! WARNING: "__aeabi_uidiv" [sound/core/snd-hrtimer.ko] has no CRC! WARNING: "__aeabi_uidivmod" [sound/core/seq/snd-seq.ko] has no CRC! WARNING: "_test_and_clear_bit" [sound/core/seq/snd-seq.ko] has no CRC! WARNING: "arm_copy_from_user" [sound/core/seq/snd-seq.ko] has no CRC! WARNING: "arm_copy_to_user" [sound/core/seq/snd-seq.ko] has no CRC! WARNING: "__aeabi_uidiv" [sound/core/seq/snd-seq.ko] has no CRC!
Compiling an older kernel is ok.
To be more precise, it starts with :
DTC arch/arm/boot/dts/dra72-evm.dtb DTC arch/arm/boot/dts/dra72-evm-revc.dtb Building modules, stage 2. MODPOST 639 modules WARNING: "__memzero" [sound/usb/snd-usbmidi-lib.ko] has no CRC! WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC! WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC! ... ... And ends at : WARNING: "__memzero" [crypto/cmac.ko] has no CRC! WARNING: "memcpy" [crypto/ccm.ko] has no CRC! WARNING: "__memzero" [crypto/ccm.ko] has no CRC! CC crypto/arc4.mod.o LD [M] crypto/arc4.ko CC crypto/authenc.mod.o LD [M] crypto/authenc.ko CC crypto/authencesn.mod.o
Hi,
Am 13.11.2016 um 01:19 schrieb Linux-SWAT openpandora@free.fr:
To be more precise, it starts with :
DTC arch/arm/boot/dts/dra72-evm.dtb DTC arch/arm/boot/dts/dra72-evm-revc.dtb Building modules, stage 2. MODPOST 639 modules WARNING: "__memzero" [sound/usb/snd-usbmidi-lib.ko] has no CRC! WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC! WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC! ... ... And ends at : WARNING: "__memzero" [crypto/cmac.ko] has no CRC! WARNING: "memcpy" [crypto/ccm.ko] has no CRC! WARNING: "__memzero" [crypto/ccm.ko] has no CRC! CC crypto/arc4.mod.o LD [M] crypto/arc4.ko CC crypto/authenc.mod.o LD [M] crypto/authenc.ko CC crypto/authencesn.mod.o
looks like this issue:
http://www.spinics.net/lists/arm-kernel/msg525575.html
https://lkml.org/lkml/2016/10/19/221 https://lkml.org/lkml/2016/10/17/356 http://lists.opensuse.org/opensuse-kernel/2016-10/msg00009.html
So it is indeed a change in linux core code that you come across. But it might show itself only for certain (newer?) compilers which is the reason why I don't see this.
Could you try with gcc-4.9?
What I have not yet found about is the status of the discussion and if and when a patch will come from upstream.
I have checked arch/arm/include/asm/asm-prototypes.h in linux-next but it does not exist. So I think there is upstream patch yet.
What you could try is to take the patch from patchwork.kernel.org and apply:
https://patchwork.kernel.org/patch/9392289/
If that works, I can include it in the hacks branch of letux.
BR, Nikolaus
Le 2016-11-13 07:54, H. Nikolaus Schaller a écrit :
Hi,
Am 13.11.2016 um 01:19 schrieb Linux-SWAT openpandora@free.fr:
To be more precise, it starts with :
DTC arch/arm/boot/dts/dra72-evm.dtb DTC arch/arm/boot/dts/dra72-evm-revc.dtb Building modules, stage 2. MODPOST 639 modules WARNING: "__memzero" [sound/usb/snd-usbmidi-lib.ko] has no CRC! WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC! WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC! ... ... And ends at : WARNING: "__memzero" [crypto/cmac.ko] has no CRC! WARNING: "memcpy" [crypto/ccm.ko] has no CRC! WARNING: "__memzero" [crypto/ccm.ko] has no CRC! CC crypto/arc4.mod.o LD [M] crypto/arc4.ko CC crypto/authenc.mod.o LD [M] crypto/authenc.ko CC crypto/authencesn.mod.o
looks like this issue:
http://www.spinics.net/lists/arm-kernel/msg525575.html
https://lkml.org/lkml/2016/10/19/221 https://lkml.org/lkml/2016/10/17/356 http://lists.opensuse.org/opensuse-kernel/2016-10/msg00009.html
So it is indeed a change in linux core code that you come across. But it might show itself only for certain (newer?) compilers which is the reason why I don't see this.
Could you try with gcc-4.9?
I'll check that.
What I have not yet found about is the status of the discussion and if and when a patch will come from upstream.
I have checked arch/arm/include/asm/asm-prototypes.h in linux-next but it does not exist. So I think there is upstream patch yet.
What you could try is to take the patch from patchwork.kernel.org and apply:
https://patchwork.kernel.org/patch/9392289/
If that works, I can include it in the hacks branch of letux.
Unfortunately, it doesn't work. I have the same warnings at compilation and boot time, and only these modules : # lsmod Module Size Used by ehci_omap 3224 0 dwc3_omap 4912 0 gpio_twl6040 1747 0
BR, Nikolaus
Am 18.11.2016 um 16:38 schrieb Linux-SWAT openpandora@free.fr:
Could you try with gcc-4.9?
I failed to compile a 4.9 gcc.
Oops. Then it looks as if something is more severely broken on your system.
Or could you try to set up a Debian in some VM and use some gcc-4.9 binary image?
BR, Nikolaus
Can I do that with Pyra OS ?
Le 2016-11-18 16:49, H. Nikolaus Schaller a écrit :
Am 18.11.2016 um 16:38 schrieb Linux-SWAT openpandora@free.fr:
Could you try with gcc-4.9?
I failed to compile a 4.9 gcc.
Oops. Then it looks as if something is more severely broken on your system.
Or could you try to set up a Debian in some VM and use some gcc-4.9 binary image?
BR, Nikolaus
Am 18.11.2016 um 17:20 schrieb Linux-SWAT openpandora@free.fr:
Can I do that with Pyra OS ?
Yes. Even without a VM.
You should be able to 'apt-get install git gcc-4.9' (or any other). Then clone the git repo and make the kernel.
I am not sure how fast it is running on a (big enough) SD card, but you could also try a SATA disk.
I was able to compile a fully working Letux 4.9-rc7 today with the exact same setup, I have no clue about what happened before.