Hello, by manual inspection I found a section mismatch in drivers/hwtracing/coresight/coresight-etm4x-core.c where etm4_platform_driver (which lives in ".data") contains a reference to etm4_remove_platform_dev() (which lives in ".exit.text"). However building with CONFIG_DEBUG_SECTION_MISMATCH=y + CONFIG_CORESIGHT_SOURCE_ETM4X=y doesn't warn about that one. $ objdump -Dr drivers/hwtracing/coresight/coresight-etm4x-core.o | grep -A7 etm4_platform_driver 0000000000000158 <etm4_platform_driver>: ... 158: R_AARCH64_ABS64 .text+0x2524 160: R_AARCH64_ABS64 .exit.text+0x124 188: R_AARCH64_ABS64 .rodata.str1.8+0x2e0 1a8: 00000001 udf #1 ... 1b0: R_AARCH64_ABS64 .rodata+0x2ae8 A similar issue in the same file is etm4x_amba_driver referencing etm4_remove_amba(). I guess the problem is that the information about the reference is only stored in the relocation entry?! I shortly looked at modpost.c, but I don't know enough about elf and that code to fix that. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |
Attachment:
signature.asc
Description: PGP signature