2018-04-19 03:00:31

by Fengguang Wu

[permalink] [raw]
Subject: [gcov_module_notifier] WARNING: CPU: 0 PID: 155 at mm/slab_common.c:996 kmalloc_slab+0x1f/0x79

Hello,

FYI this happens in mainline kernel 4.17.0-rc1.
It at least dates back to v4.5 .

It occurs in 6 out of 6 boots.

[ 11.775922] parport_pc parport_pc.632: Unable to set coherent dma mask: disabling DMA
[ 11.805691] pcspkr pcspkr: no of_node; not parsing pinctrl DT
[ 11.806290] input: PC Speaker as /devices/platform/pcspkr/input/input4
[ 11.806974] evbug: Connected device: input4 (PC Speaker at isa0061/input0)
[ 11.809749] Error: Driver 'pcspkr' is already registered, aborting...
[ 11.810296] WARNING: CPU: 0 PID: 155 at mm/slab_common.c:996 kmalloc_slab+0x1f/0x79:
kmalloc_slab at mm/slab_common.c:996
[ 11.811011] Modules linked in: snd_pcsp(-) pcspkr serio_raw parport_pc parport
[ 11.811563] CPU: 0 PID: 155 Comm: udevd Not tainted 4.17.0-rc1 #31
[ 11.812022] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[ 11.812640] RIP: 0010:kmalloc_slab+0x1f/0x79:
kmalloc_slab at mm/slab_common.c:996
[ 11.812964] RSP: 0018:ffff88001ebebbd8 EFLAGS: 00010202
[ 11.813345] RAX: 0000000000000000 RBX: 000000040890b4b8 RCX: 0000000000000005
[ 11.813861] RDX: ffffffff81122d56 RSI: 00000000014000c0 RDI: 000000040890b4b8
[ 11.814373] RBP: 00000000014000c0 R08: 0000000000000002 R09: 0000000000000004
[ 11.814888] R10: ffff88001ebebb28 R11: 00000000000000a8 R12: 0000000000000000
[ 11.815548] R13: ffffffff81122d56 R14: 0000000000000000 R15: 0000000000000000
[ 11.816189] FS: 00007f44b3dd1780(0000) GS:ffffffff824b5000(0000) knlGS:0000000000000000
[ 11.816786] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 11.817199] CR2: 0000000000645f30 CR3: 000000001ebdb000 CR4: 00000000000006f0
[ 11.817714] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 11.818231] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 11.818772] Call Trace:
[ 11.818961] __kmalloc_track_caller+0x19/0x1fe:
__do_kmalloc at mm/slab.c:3713
(inlined by) __kmalloc_track_caller at mm/slab.c:3733
[ 11.819286] kmemdup+0x25/0x46:
kmemdup at mm/util.c:118
[ 11.819525] gcov_info_dup+0xbe/0x157:
gcov_info_dup at kernel/gcov/gcc_3_4.c:261
[ 11.819796] gcov_event+0x45f/0x558:
save_info at kernel/gcov/fs.c:694
(inlined by) remove_info at kernel/gcov/fs.c:718
(inlined by) gcov_event at kernel/gcov/fs.c:751
[ 11.820054] ? 0xffffffffa000f000
[ 11.820300] gcov_module_notifier+0xe2/0x127:
gcov_module_notifier at kernel/gcov/base.c:150
[ 11.820618] notifier_call_chain+0x39/0x76:
notifier_call_chain at kernel/notifier.c:95 (discriminator 1)
[ 11.820919] __blocking_notifier_call_chain+0x5e/0x83:
__blocking_notifier_call_chain at kernel/notifier.c:319
[ 11.821296] blocking_notifier_call_chain+0x12/0x1a:
blocking_notifier_call_chain at kernel/notifier.c:328
[ 11.821664] do_init_module+0x279/0x581:
do_init_module at kernel/module.c:3533
[ 11.821946] load_module+0x1a06/0x1cee:
load_module at kernel/module.c:3782
[ 11.822224] ? vfs_read+0x171/0x18b:
fsnotify_access at include/linux/fsnotify.h:189
(inlined by) vfs_read at fs/read_write.c:454
[ 11.822486] ? __se_sys_finit_module+0xbe/0xeb:
__do_sys_finit_module at kernel/module.c:3876
(inlined by) __se_sys_finit_module at kernel/module.c:3852
[ 11.822809] __se_sys_finit_module+0xbe/0xeb:
__do_sys_finit_module at kernel/module.c:3876
(inlined by) __se_sys_finit_module at kernel/module.c:3852
[ 11.823120] __x64_sys_finit_module+0x18/0x20:
__x64_sys_finit_module at kernel/module.c:3852
[ 11.823437] do_syscall_64+0x7b/0x24d:
do_syscall_64 at arch/x86/entry/common.c:287
[ 11.823713] entry_SYSCALL_64_after_hwframe+0x49/0xbe:
entry_SYSCALL_64_after_hwframe at arch/x86/entry/entry_64.S:240
[ 11.824079] RIP: 0033:0x7f44b34a64a9
[ 11.824342] RSP: 002b:00007ffd27ed3408 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ 11.824886] RAX: ffffffffffffffda RBX: 0000000000648a80 RCX: 00007f44b34a64a9
[ 11.825396] RDX: 0000000000000000 RSI: 00007f44b37720aa RDI: 0000000000000008
[ 11.825909] RBP: 00007f44b37720aa R08: 0000000000000000 R09: 0000000000648a80
[ 11.826419] R10: 0000000000000008 R11: 0000000000000246 R12: 0000000000000000
[ 11.826935] R13: 0000000000020000 R14: 0000000000000000 R15: 0000000000648a80
[ 11.827449] Code: 02 83 3d 49 60 a0 02 02 0f 97 c0 c3 48 81 ff 00 00 40 00 76 27 48 ff 05 4d 64 a0 02 31 c0 0f ba e6 09 72 60 48 ff 05 46 64 a0 02 <0f> 0b 48 ff 05 45 64 a0 02 48 ff 05 46 64 a0 02 c3 48 81 ff c0
[ 11.828930] irq event stamp: 10052
[ 11.829185] hardirqs last enabled at (10051): [<ffffffff811a79a3>] __kmalloc_track_caller+0x194/0x1fe:
slab_alloc at mm/slab.c:3385
(inlined by) __do_kmalloc at mm/slab.c:3716
(inlined by) __kmalloc_track_caller at mm/slab.c:3733
[ 11.829854] hardirqs last disabled at (10052): [<ffffffff81a00ecc>] error_entry+0x6c/0xc0:
error_entry at arch/x86/entry/entry_64.S:1263
[ 11.830443] softirqs last enabled at (10042): [<ffffffff81c00269>] __do_softirq+0x269/0x2bf
[ 11.831049] softirqs last disabled at (10035): [<ffffffff81097cfe>] irq_exit+0x89/0xb4:
invoke_softirq at kernel/softirq.c:365
(inlined by) irq_exit at kernel/softirq.c:405
[ 11.831623] ---[ end trace 10681f94cd4e4c04 ]---
[ 11.831996] gcov: could not save data for '/kbuild/obj/smoke/x86_64-randconfig-ws0-04162304/sound/drivers/pcsp/pcsp_input.gcda' (out of memory)

Attached the full dmesg, kconfig and reproduce scripts.

Thanks,
Fengguang


Attachments:
(No filename) (5.54 kB)
dmesg-vm-lkp-hsw01-yocto-x86_64-28:20180417011623:x86_64-randconfig-ws0-04162304:4.17.0-rc1:31 (46.41 kB)
.config (106.61 kB)
job-script (3.99 kB)
reproduce-vm-lkp-hsw01-yocto-x86_64-28:20180417011623:x86_64-randconfig-ws0-04162304:4.17.0-rc1:31 (2.13 kB)
Download all attachments

2018-04-20 11:09:22

by Peter Oberparleiter

[permalink] [raw]
Subject: Re: [gcov_module_notifier] WARNING: CPU: 0 PID: 155 at mm/slab_common.c:996 kmalloc_slab+0x1f/0x79

On 19.04.2018 04:58, Fengguang Wu wrote:
> FYI this happens in mainline kernel 4.17.0-rc1.
> It at least dates back to v4.5 .

This is likely the result of compiling the kernel with GCC 7 while
specifying that gcov-kernel should expect GCC <= 3.4 format data:

dmesg:
> (gcc version 7.3.0 (Debian 7.3.0-1)) #31 Mon Apr 16 23:17:50 CST 2018

.config:
> # CONFIG_GCOV_FORMAT_AUTODETECT is not set
> CONFIG_GCOV_FORMAT_3_4=y
> # CONFIG_GCOV_FORMAT_4_7 is not set

As such, it is an expected test failure. Assuming that this is a
randconfig test, my recommendation would be to blacklist
"CONFIG_GCOV_FORMAT_3_4=y" when using GCC >3.4.

--
Peter Oberparleiter
Linux on Z Development - IBM Germany


2018-04-20 12:40:17

by Fengguang Wu

[permalink] [raw]
Subject: Re: [gcov_module_notifier] WARNING: CPU: 0 PID: 155 at mm/slab_common.c:996 kmalloc_slab+0x1f/0x79

Hi Peter,

On Fri, Apr 20, 2018 at 01:08:07PM +0200, Peter Oberparleiter wrote:
>On 19.04.2018 04:58, Fengguang Wu wrote:
>> FYI this happens in mainline kernel 4.17.0-rc1.
>> It at least dates back to v4.5 .
>
>This is likely the result of compiling the kernel with GCC 7 while
>specifying that gcov-kernel should expect GCC <= 3.4 format data:
>
>dmesg:
>> (gcc version 7.3.0 (Debian 7.3.0-1)) #31 Mon Apr 16 23:17:50 CST 2018
>
>.config:
>> # CONFIG_GCOV_FORMAT_AUTODETECT is not set
>> CONFIG_GCOV_FORMAT_3_4=y
>> # CONFIG_GCOV_FORMAT_4_7 is not set
>
>As such, it is an expected test failure. Assuming that this is a
>randconfig test, my recommendation would be to blacklist
>"CONFIG_GCOV_FORMAT_3_4=y" when using GCC >3.4.

Ah OK, thanks! It looks easy to fix for us. Interestingly there's
the default GCOV_FORMAT_AUTODETECT option, however the randconfig
test obviously (blindly) will try other options if ever they are
selectable.

Thanks,
Fengguang