[Bug runtime/10189] STP_START gets lost in a warning flood
wenji dot huang at oracle dot com
sourceware-bugzilla@sourceware.org
Tue Nov 17 08:06:00 GMT 2009
------- Additional Comments From wenji dot huang at oracle dot com 2009-11-17 08:06 -------
Current stap will keep allocating buffer for _stp_warn in probe until
out of memory. As a result, _stp_ctl_send(STP_START,...) will be failed
due to exhausted memory. So the child process couldn't catch the signal
and remain waiting.
To increase STP_DEFAULT_BUFFERS is not good way, there always be a limit
for it. Maybe it's better to make _stp_warn utilize _stp_print instead of
_stp_ctl_write.
diff --git a/runtime/io.c b/runtime/io.c
index 0136aae..10b6c8a 100644
--- a/runtime/io.c
+++ b/runtime/io.c
@@ -55,7 +55,7 @@ static void _stp_vlog (enum code type, const char *func, int
line, const char *f
else if (type == ERROR) printk (KERN_ERR "%s", buf);
else printk (KERN_INFO "%s", buf);
#else
- if (type != DBUG)
+ if (type != DBUG && type != WARN)
_stp_ctl_write(STP_OOB_DATA, buf, start + num + 1);
else {
_stp_print(buf);
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10189
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the Systemtap
mailing list