This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug runtime/2922] New: BUG: sleeping function called from invalid context at kernel/mutex.c:86
- From: "wcohen at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 13 Jul 2006 15:58:29 -0000
- Subject: [Bug runtime/2922] New: BUG: sleeping function called from invalid context at kernel/mutex.c:86
- Reply-to: sourceware-bugzilla at sourceware dot org
When try the following simple probe with the current systemtap snapshot
(20060713) on 2.6.17-1.2366.fc6 on x86_64 machine (need to use work around
mentioned in Red Hat bugzilla #197220):
stap -vv -k -e 'probe begin { log ("hello world") }'
Get the following report in /var/log/messages:
Jul 13 11:27:02 dhcp59-158 kernel: BUG: sleeping function called from invalid
context at kernel/mutex.c:86
Jul 13 11:27:02 dhcp59-158 kernel: in_atomic():0, irqs_disabled():1
Jul 13 11:27:02 dhcp59-158 kernel:
Jul 13 11:27:02 dhcp59-158 kernel: Call Trace:
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff8026c869>] dump_stack+0x12/0x17
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff80264c86>] mutex_lock+0x15/0x23
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff803fdf49>] cpufreq_get+0x36/0x93
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff885c164b>]
:stap_2379:__stp_init_time+0x63/0x122
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff80291396>] on_each_cpu+0x19/0x22
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff885c0ccf>]
:stap_2379:_stp_init_time+0x19/0x30
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff885c1ade>]
:stap_2379:_stp_handle_start+0x9/0x49
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff885c1b9a>]
:stap_2379:_stp_proc_write_cmd+0x7c/0xc2
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff802168e4>] vfs_write+0xce/0x174
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff8021717e>] sys_write+0x45/0x6e
Jul 13 11:27:02 dhcp59-158 kernel: [<ffffffff8025eace>] system_call+0x7e/0x83
Code in src/runtime/time.c is causing the problem:
int
_stp_init_time(void)
{
int ret = 0;
ret = on_each_cpu(__stp_init_time, NULL, 0, 1);
#ifdef CONFIG_CPU_FREQ
if (ret == 0)
ret = cpufreq_register_notifier(&__stp_time_notifier,
CPUFREQ_TRANSITION_NOTIFIER);
#endif
return ret;
}
--
Summary: BUG: sleeping function called from invalid context at
kernel/mutex.c:86
Product: systemtap
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: runtime
AssignedTo: systemtap at sources dot redhat dot com
ReportedBy: wcohen at redhat dot com
GCC target triplet: x86_64
http://sourceware.org/bugzilla/show_bug.cgi?id=2922
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.