Bug 2301454 - Latest rawhide update seems to break _wrap_malloc
Summary: Latest rawhide update seems to break _wrap_malloc
Keywords:
Status: MODIFIED
Alias: None
Product: Fedora
Classification: Fedora
Component: binutils
Version: 42
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Nick Clifton
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 2304271
TreeView+ depends on / blocked
 
Reported: 2024-07-30 06:32 UTC by Nathan Scott
Modified: 2025-02-26 13:10 UTC (History)
8 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Nathan Scott 2024-07-30 06:32:35 UTC
Over the weekend just past the upstream PCP CI build on rawhide started failing.  Chatting to Florian he suggested its most likely to be related to binutils, so lets start here.

The link failure is in code that has not changed for a few years - https://github.com/performancecopilot/pcp/tree/14033a5492e8e671b00170a6d5d3235df3b10da9/qa/perfevent - when linking the 'perfevent_test' binary the following link error results:

/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `retrieve_numainfo':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/architecture.c:171:(.text+0x8e5): undefined reference to `__wrap_malloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/architecture.c:33:(.text+0x9db): undefined reference to `__wrap_malloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/architecture.c:165:(.text+0xa5e): undefined reference to `__wrap_malloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/architecture.c:33:(.text+0xa77): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `retrieve_cpuinfo':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/architecture.c:33:(.text+0xb7c): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/architecture.c:33: more undefined references to `__wrap_malloc' follow
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `parse_sysfs_perf_event_scale':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:315:(.text+0x199d): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:328:(.text+0x1a51): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:254:(.text+0x1aba): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:261:(.text+0x1afa): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `parse_sysfs_perf_event_scale':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:209:(.text+0x1bd2): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:277: more undefined references to `__wrap_calloc' follow
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_get':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:1145:(.text+0x3f2f): undefined reference to `__wrap_malloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:1052:(.text+0x446f): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:1070:(.text+0x4534): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:1095:(.text+0x45b1): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_get':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:1163:(.text+0x478e): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_setup_dynamic_events.isra.0':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:763:(.text+0x4abf): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_setup_dynamic_events.isra.0':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/parse_events.c:983:(.text+0x4ded): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `yyestensure_buffer_stack':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/configparser.yytest.c:3270:(.text+0x4fab): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `yyest_create_buffer.constprop.0':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/configparser.yytest.c:3270:(.text+0x4ff9): undefined reference to `__wrap_malloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/configparser.yytest.c:3270:(.text+0x5012): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `parse_configfile':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/configparser.l:820:(.text+0x5089): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `parse_configfile':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/configparser.yytest.c:3270:(.text+0x50be): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `parse_configfile':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/configparser.l:252:(.text+0x57fd): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/configparser.l:291:(.text+0x58d2): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/configparser.l:206:(.text+0x63cc): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/configparser.l:142:(.text+0x655d): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/configparser.l:160:(.text+0x6618): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:1233: more undefined references to `__wrap_calloc' follow
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_event_create':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/rapl-interface.c:207:(.text+0x70c6): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_event_create':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:580:(.text+0x7203): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:580:(.text+0x76c6): undefined reference to `__wrap_malloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o: in function `perf_event_create':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:458:(.text+0x7aa4): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:368:(.text+0x7b16): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cc8UOYqI.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:373:(.text+0x7b48): undefined reference to `__wrap_calloc'
collect2: error: ld returned 1 exit status
make[3]: *** [GNUmakefile:75: perfevent_test] Error 1
make[3]: *** Waiting for unfinished jobs....
/usr/bin/ld: /tmp/cczqJCKA.ltrans0.ltrans.o: in function `yyestensure_buffer_stack':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/configparser.yytest.c:3270:(.text+0x1943): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cczqJCKA.ltrans0.ltrans.o: in function `parse_sysfs_perf_event_scale':
/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:315:(.text+0x1a2f): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:328:(.text+0x1b11): undefined reference to `__wrap_calloc'
/usr/bin/ld: /home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:254:(.text+0x1ba1): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cczqJCKA.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:261:(.text+0x1be9): undefined reference to `__wrap_calloc'
/usr/bin/ld: /tmp/cczqJCKA.ltrans0.ltrans.o:/home/pcpbuild/pcp/pcp-6.3.0/pcp-6.3.0-build/pcp-6.3.0/qa/perfevent/../../src/pmdas/perfevent/perfinterface.c:209: more undefined references to `__wrap_calloc' follow
collect2: error: ld returned 1 exit status
make[3]: *** [GNUmakefile:72: perfevent_coverage] Error 1


Upstream PCP code can be git pulled from here:
https://github.com/performancecopilot/pcp/

and build steps described in INSTALL.md (building from source).  Note this failure is in the regression tests, source is below ./qa in the top level.

Reproducible: Always

Comment 1 Nick Clifton 2024-07-31 18:14:16 UTC
This looks to have been caused by upstream commit eb7892c4019bd5d00175c0eb80eb0c5a47a42ca1 which was supposed to fix PR 31956.  I have asked the author of that patch to look into this issue.

In the meantime I have applied a local patch to revert the commit for rawhide.

Thus fixed/worked-around in binutils-2.42.90-2.fc41.

Comment 2 Aoife Moloney 2025-02-26 13:10:30 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 42 development cycle.
Changing version to 42.


Note You need to log in before you can comment on or make changes to this bug.