Messages in this thread | | | Date | Wed, 19 Aug 2009 15:05:17 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH] tracing: Create generic syscall TRACE_EVENTs |
| |
* Josh Stone <jistone@redhat.com> wrote:
> On 08/18/2009 06:32 PM, Li Zefan wrote: > > It would be much better to see a sample output of these TRACE_EVENTs, > > so we'll see the what's the output if a syscall has less than 6 args. > > > > And I guess it should be "(%lx, %lx, ..., %lx)"? Otherwise I think we'll > > see some negative values. > > Thanks, you're right -- the args should be unsigned long. Whether they > are hex or decimal doesn't matter to me, but I guess that does make > pointers easier to spot. > > Here's some output that I get on x86_64: > > > # tail trace > > tail-1106 [000] 113218.474657: syscall_enter: NR 2 (7f2d34dd38f0, 0, 7f2d35009010, 5, 4, ffffffffffffffb0) > > > > tail-1106 [000] 113218.474809: syscall_enter: NR 5 (3, 7f2d35009040, 7f2d35009040, 5, 4, ffffffffffffffb0) > > > > tail-1106 [000] 113218.474855: syscall_enter: NR 9 (0, 50d3ad0, 1, 2, 3, 0) > > > > tail-1106 [000] 113218.474946: syscall_enter: NR 3 (3, 7f2d2f9a0000, 5e22, 2, 3, 0) > > > > tail-1106 [000] 113218.475673: syscall_enter: NR 2 (7fff5e42a654, 0, 0, 7fff5e429600, 80, 3) > > It's very raw indeed, but that's what Ingo asked for. :) The > extra args show up as whatever happened to be in those registers.
If the syscalls are handled as a single tracepoint, then they cannot really have per syscall properties.
The per syscall tracepoints on the other hand give very finegrained information.
Note that via the use of filters one can limit the generic tracepoint to only output certain syscall NRs, and only with certain parameters.
Ingo
| |