http://bugzilla.opensuse.org/show_bug.cgi?id=1008186 Bug ID: 1008186 Summary: depmod abort with v4.9-rc1..rc3 aarch64 and armv7hl configs Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: All OS: SUSE Other Status: NEW Severity: Normal Priority: P5 - None Component: Kernel Assignee: kernel-maintainers@forge.provo.novell.com Reporter: afaerber@suse.com QA Contact: qa-bugs@suse.de CC: jengelh@inai.de, matwey.kornilov@gmail.com, mbrugger@suse.com, mmarek@suse.com, yousaf.kaukab@suse.com Found By: --- Blocker: --- With v4.9-rc1, v4.9-rc2 and v4.9-rc3 CONFIG_QCOM_WCNSS_PIL=m leads to a cyclic module dependency "qcom_wcnss_iris -> qcom_wcnss -> qcom_wcnss_iris". This constellation causes depmod (make modules_install) to abort in a free() call, hinting at some form of memory corruption in kmod-23. The problem is that this abort happened before the above cycle could be printed and there was thus no hint in the package build log (or when run locally) of what cycle there actually was. https://lists.opensuse.org/opensuse-kernel/2016-11/msg00000.html depmod: ERROR: Found 8 modules in dependency cycles! depmod: ERROR: Cycle detected: remoteproc -> virtio depmod: ERROR: Cycle detected: remoteproc -> virtio_ring depmod: ERROR: Cycle detected: qcom_mdt_loader -> remoteproc *** Error in `/sbin/depmod': free(): invalid next size (fast): 0x000000000186d770 *** [...] (gdb) bt #0 0x0000007fb7e28c80 in raise () from /lib64/libc.so.6 #1 0x0000007fb7e2a04c in abort () from /lib64/libc.so.6 #2 0x0000007fb7e61888 in __libc_message () from /lib64/libc.so.6 #3 0x0000007fb7e67d9c in malloc_printerr () from /lib64/libc.so.6 #4 0x0000007fb7e68638 in _int_free () from /lib64/libc.so.6 #5 0x00000000004096ec in depmod_report_cycles (depmod=0x7fffffa970, edges=0xede, stack=0xf00, users=0x188b4f0, n_roots=43920, n_mods=127) at tools/depmod.c:1519 #6 depmod_calculate_dependencies (depmod=0x7fffffa970) at tools/depmod.c:1596 #7 depmod_load (depmod=0x7fffffa970) at tools/depmod.c:1623 #8 do_depmod (argc=<optimized out>, argv=<optimized out>) at tools/depmod.c:2598 #9 0x0000007fb7e16364 in __libc_start_main () from /lib64/libc.so.6 #10 0x0000000000402cd8 in _start () at ../sysdeps/aarch64/start.S:81 Backtrace stopped: previous frame identical to this frame (corrupt stack?) (gdb) Possibly related is that depmod, as seen above, is wrongly reporting regular dependency chains as cycles if it encounters some real cycle. Supposedly the false positives were fixed with an upstream patch back in boo#872715, so seems like a regression. With DBG() locally changed to ERR() for tracing: depmod: ERROR: Found 8 modules in dependency cycles! depmod: ERROR: Cycle report: Trying smem visited=0 users=1 depmod: ERROR: Cycle report: Trying hwspinlock_core visited=0 users=0 depmod: ERROR: Cycle report: Trying virtio visited=0 users=1 depmod: ERROR: Cycle report: Trying virtio_ring visited=0 users=1 depmod: ERROR: Cycle report: Trying remoteproc visited=0 users=2 depmod: ERROR: Cycle report: Trying virtio visited=1 users=0 depmod: ERROR: Cycle detected: remoteproc -> virtio depmod: ERROR: Cycle report: Trying virtio_ring visited=1 users=0 depmod: ERROR: Cycle detected: remoteproc -> virtio_ring depmod: ERROR: Cycle report: Trying qcom_mdt_loader visited=0 users=1 depmod: ERROR: Cycle report: Trying remoteproc visited=1 users=1 depmod: ERROR: Cycle detected: qcom_mdt_loader -> remoteproc *** Error in `/home/andreas/kmod-23/tools/depmod': free(): invalid next size (fast): 0x000000002b61c370 *** -- You are receiving this mail because: You are on the CC list for the bug.