Re: Tracing Syscalls under Fedora 9

2008-06-09 Thread David Smith
Martin Süßkraut wrote:
 Hi,
 
 has the tracing of system calls changed in utrace between Fedora 8 and 9?
 
 My module works fine under Fedora 8, but under Fedora 9 the callbacks
 report_syscall_entry and report_syscall_exit seam not to be invoked
 any more.

If it helps at all, systemtap is seeing the same thing - system call
callbacks that got called under F8 aren't getting called under F9.

-- 
David Smith
[EMAIL PROTECTED]
Red Hat
http://www.redhat.com
256.217.0141 (direct)
256.837.0057 (fax)




Re: Tracing Syscalls under Fedora 9

2008-06-09 Thread Renzo Davoli
 On Fri, Jun 06, 2008 at 04:38:34PM +0200, Martin Süßkraut wrote:
  has the tracing of system calls changed in utrace between Fedora 8 and 9?
 For some reason the only way to trace the syscall is to trace also 
 UTRACE_EVENT(SIGNAL_TERM)
 or CORE.
 
 I added an empty report_signal function and now it works.

Martin told me by an E-mail message that the change proposed above solved
his problem. This is for the people on the ML concerned with the same
trouble.

renzo



need quiesce help

2008-06-09 Thread David Smith
In systemtap (http://sourceware.org/systemtap/), we're using utrace to
be able to put systemtap probes in arbitrary threads.  Internally, there
are two fairly separate and distinct layers, each using utrace on the
same thread.

This has worked well.  However, I'm having trouble when each layer
requests UTRACE_ACTION_QUIESCE.

The upper layer does:

utrace_set_flags(tsk, engine, UTRACE_ACTION_QUIESCE|UTRACE_EVENT(QUIESCE));

Then, in the .report_quiesce handler, it does its processing and returns
UTRACE_ACTION_DETACH.  The upper layer is working correctly.

The lower layer does:

utrace_set_flags(tsk, engine,
UTRACE_ACTION_QUIESCE|UTRACE_EVENT(QUIESCE)|UTRACE_EVENT(DEATH));

After the lower layer's .report_quiesce handler is called, I'd like to
turn off quiesce handling for this engine and leave on
UTRACE_EVENT(DEATH) handling.  I've tried various combinations of return
values and calling utrace_set_flags() in the .report_quiesce handler,
but this handler always seems to get called twice (when the upper layer
also does a UTRACE_ACTION_QUIESCE).

So, what does the lower layer need to do to correctly turn off quiesce
handling for the engine in this case?  Note that both layer's engines
get installed on the thread in the same callback.

Thanks for the help.

-- 
David Smith
[EMAIL PROTECTED]
Red Hat
http://www.redhat.com
256.217.0141 (direct)
256.837.0057 (fax)