Bug 454711

Summary: Callgrind: threads.c:273 (vgCallgrind_post_signal): Assertion '*(vgCallgrind_current_fn_stack.top) == 0' failed.
Product: [Developer tools] valgrind Reporter: android+kde
Component: callgrindAssignee: Josef Weidendorfer <josef.weidendorfer>
Status: RESOLVED WAITINGFORINFO    
Severity: major CC: pjfloyd
Priority: NOR    
Version First Reported In: 3.19.0   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description android+kde 2022-06-01 17:48:11 UTC
SUMMARY
Trying to run callgrind on an application, and valgrind/callgrind dies after a bit, leaving a callgrind.out.1 of size 0. Note this has been reproduced for my case on 3.18.1 and 3.19.0  . Note this is a heavily loaded system, and in this case it is running on ubuntu 22.04 docker image. Note I couldn't figure out how to build callgrind with symbols, but if you let me know i can rerun.

STEPS TO REPRODUCE
1. valgrind --tool=callgrind  ./app.out


OBSERVED RESULT
[36mvc_1         |[0m _dl_find_object
[36mvc_1         |[0m BB# 5330704013
[36mvc_1         |[0m 
[36mvc_1         |[0m Callgrind: threads.c:273 (vgCallgrind_post_signal): Assertion '*(vgCallgrind_current_fn_stack.top) == 0' failed.
[36mvc_1         |[0m 
[36mvc_1         |[0m host stacktrace:
[36mvc_1         |[0m ==1==    at 0x580213DA: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x58021507: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x580216AB: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x5801EBC5: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x5800473D: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x58004BDB: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x58002C42: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x10036FC52B: ???
[36mvc_1         |[0m ==1==    by 0x100F323F1F: ???
[36mvc_1         |[0m ==1==    by 0x581D3FB5: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x100F323F07: ???
[36mvc_1         |[0m ==1==    by 0x100F323F1F: ???
[36mvc_1         |[0m ==1==    by 0x74: ???
[36mvc_1         |[0m ==1==    by 0x201: ???
[36mvc_1         |[0m ==1==    by 0x790DBCF: ???
[36mvc_1         |[0m ==1==    by 0x581F1142: ??? (in /usr/libexec/valgrind/callgrind-amd64-linux)
[36mvc_1         |[0m ==1==    by 0x113AB: ???
[36mvc_1         |[0m 
[36mvc_1         |[0m sched status:
[36mvc_1         |[0m   running_tid=117
[36mvc_1         |[0m
Comment 1 Paul Floyd 2022-06-02 16:27:52 UTC
Can you reduce this to a small example?

Otherwise can you tell us more about the guest application?

Without more information it's not likely that anyone will be able to reproduce the problem.
Comment 2 Paul Floyd 2022-09-26 08:38:58 UTC
No answer, closing this as WAITINGFORINFO.
Comment 3 Paul Floyd 2022-09-26 08:41:53 UTC
Also, just in case. Does you application run clean with memcheck? It could be that your app is corrupting the stack.