Re: C200, 712/80: strange sysfs issues with Linux 4.18.0-1-parisc
On 28.11.18 16:26, Frank Scheiner wrote:
I'm experiencing some strange issues on both a C200 and a 712/80 with
the current 32 bit SP kernel (4.18.0-2.parisc (4.18.10-2)). This does
not happen when using the 64 bit MP kernel of the same version on a
rp3440 for example.
For every module loaded I get a message similar to the following example:
[...]
[ 47.799100] sysfs: cannot create duplicate filename '/module/nfs/sections/.text'
[ 47.887396] CPU: 0 PID: 98 Comm: modprobe Not tainted 4.18.0-2-parisc #1 Debian 4.18.10-2
[ 47.984894] Backtrace:
[ 48.013164] [<1017ce2c>] show_stack+0x3c/0x50
[ 48.066177] [<107a7210>] dump_stack+0x28/0x38
[ 48.119192] [<103f900c>] sysfs_warn_dup+0x88/0xac
[ 48.176329] [<103f8b1c>] sysfs_add_file_mode_ns+0x164/0x1d0
[ 48.243832] [<103f9e70>] internal_create_group+0x11c/0x304
[ 48.310277] [<103fa0a0>] sysfs_create_group+0x48/0x60
[ 48.371571] [<1022abe8>] load_module.constprop.35+0x1f9c/0x23b8
[ 48.443200] [<1022b278>] sys_finit_module+0xd0/0x11c
[ 48.503468] [<101831dc>] syscall_exit+0x0/0x14
I think it happens because I disabled building the kernel with the "-ffunction-sections" compiler option.
The relevant patch was included in kernel 4.18:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=24b6c22504a27210a8377e54d24d425ae414f2c1
On kernel 4.17 I see:
./4.17.0-3-parisc-smp/kernel/drivers/net/ethernet/intel/e1000/e1000.ko: file format elf32-hppa-linux
Sections:
Idx Name Size VMA LMA File off Algn
0 .note.gnu.build-id 00000024 00000000 00000000 00000034 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
1 .text 00000000 00000000 00000000 00000058 2**0
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .text.e1000_alloc_dummy_rx_buffers 0000002c 00000000 00000000 00000058 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
3 .text.e1000_fix_features 00000074 00000000 00000000 00000084 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
4 .text.unlikely.e1000_regdump 0000049c 00000000 00000000 000000f8 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
5 .text.e1000_setup_rctl 00000144 00000000 00000000 00000594 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
6 .text.e1000_configure_rx 000002a0 00000000 00000000 000006d8 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
On kernel 4.18 I get:
./4.18.0-3-parisc-smp/kernel/drivers/net/ethernet/intel/e1000/e1000.ko: file format elf32-hppa-linux
Sections:
Idx Name Size VMA LMA File off Algn
0 .note.gnu.build-id 00000024 00000000 00000000 00000034 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
1 .text 0000a550 00000000 00000000 00000058 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
2 .text.unlikely 0000078c 00000000 00000000 0000a5a8 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
3 .init.text 000000cc 00000000 00000000 0000ad34 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
4 .exit.text 00000030 00000000 00000000 0000ae00 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
5 .text 00007848 00000000 00000000 0000ae30 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
6 .text 00004298 00000000 00000000 00012678 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
7 .text 00000c8c 00000000 00000000 00016910 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
8 .text 00000000 00000000 00000000 0001759c 2**0
CONTENTS, ALLOC, LOAD, READONLY, CODE
As can be seen, we now get multiple sections all named ".text" which is what triggers the kernel warning.
It seems we need to revert the patch, or find a way that the compiler doesn't produce multiple .text sections...?
Helge
Reply to: