Bug 203969 - ODEBUG: memorize full stack traces
Summary: ODEBUG: memorize full stack traces
Status: NEW
Alias: None
Product: Memory Management
Classification: Unclassified
Component: Sanitizers (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: MM/Sanitizers virtual assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-24 10:52 UTC by Dmitry Vyukov
Modified: 2019-06-24 10:52 UTC (History)
1 user (show)

See Also:
Kernel Version: ALL
Tree: Mainline
Regression: No


Attachments

Description Dmitry Vyukov 2019-06-24 10:52:51 UTC
This is related to CONFIG_DEBUG_OBJECTS but may be relevant for other debug configs as well. We should use lib/stackdepot.c (CONFIG_STACKDEPOT) in more debugging facilities to memorize full stack traces. stackdepot maps a full stack trace to an u32 (i.e. smaller than memorizing a single PC).

In particular come up in the context of:
https://syzkaller.appspot.com/bug?extid=c4521ac872a4ccc3afec
https://groups.google.com/forum/#!msg/syzkaller-bugs/0T-seeO7cwc/X82YaRNWBAAJ

which contains just:

------------[ cut here ]------------ 
ODEBUG: free active (active state 0) object type: timer_list hint: 
delayed_work_timer_fn+0x0/0x90 arch/x86/include/asm/paravirt.h:767 

and then Thomas says:

"One of the cleaned up devices has left an active timer which belongs to a 
delayed work. That's all I can decode out of that splat. :("

Presumably having a full stack for the timer allocation would make this actionable.

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