FS#76170 - [trace-cmd] kernelshark does not start (symbol lookup error in /usr/lib/libtracecmd.so.1)

Attached to Project: Community Packages
Opened by Claudio Cabral (claudiocabral) - Tuesday, 11 October 2022, 10:52 GMT
Last edited by David Runge (dvzrv) - Wednesday, 16 November 2022, 23:21 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To David Runge (dvzrv)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
kernelshark does not start because of a symbol lookup error in libtracecmd.so.1:
kernelshark: symbol lookup error: /usr/lib/libtracecmd.so.1: undefined symbol: tracecmd_get_file_state

Reverting to trace-cmd to version 3.1.1-1 fixes the issue

Additional info:
* package version(s)
kernelshark 2.1.1-1
trace-cmd 3.1.2-1

Steps to reproduce:
launch kernelshark from the command line to observe the error
This task depends upon

Closed by  David Runge (dvzrv)
Wednesday, 16 November 2022, 23:21 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed with trace-cmd 3.1.4-1 and kernelshark 2.1.1-2
Comment by David Runge (dvzrv) - Wednesday, 12 October 2022, 15:59 GMT
@claudiocabral: Thanks for the ticket.

Will look into it. As there has been no soname change, I assume that upstream just broke this...
Comment by David Runge (dvzrv) - Wednesday, 12 October 2022, 16:08 GMT
Hm, nice. trace-cmd test suite for 3.1.4 segfaults and kernelshark build neither against 3.1.2 nor against 3.1.4.
Quality!
Comment by Claudio Cabral (claudiocabral) - Wednesday, 12 October 2022, 16:30 GMT
yeah, feels like trace-cmd & co are a bit underused;
this bug has been going on for a couple of months, I confess I was too lazy to report it earlier
thinking "surely someone else uses kernelshark and arch linux"
Comment by Chih-Hsuan Yen (yan12125) - Sunday, 16 October 2022, 10:38 GMT
> trace-cmd test suite for 3.1.4 segfaults

The test suite now requires root as it uses /sys/kernel/tracing.

> kernelshark build neither against 3.1.2 nor against 3.1.4

If trace-cmd 3.1.4 is built with !lto, kernelshark can be rebuilt. I don't understand it, though.
Comment by Chih-Hsuan Yen (yan12125) - Sunday, 16 October 2022, 10:43 GMT
By the way, to record events in kernelshark with non-root, I need to add polkit to makedepends.