This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug uprobes/13404] DTRACE_PROBE for more that 10 arguments needed


http://sourceware.org/bugzilla/show_bug.cgi?id=13404

--- Comment #4 from Mark Wielaard <mjw at redhat dot com> 2011-11-11 15:04:19 UTC ---
I see a DTRACE11 define in erts/emulator/beam/dtrace-wrapper.h

#define DTRACE11(name, a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10) \
    erlang_##name((a0), (a1), (a2), (a3), (a4), (a5), (a6), (a7), (a8), (a9),
(a10))

Which is used in erts/emulator/drivers/common/efile_drv.c

            DTRACE11(efile_drv_entry, dt_priv->thread_num, dt_priv->tag++,
                     dt_utag, FILE_LSEEK,
                     NULL, NULL, dt_i1, dt_i2, dt_i3, 0, desc->port_str);

And then erts/emulator/beam/erlang_dtrace.d defines an erlang provider with:

    probe efile_drv__entry(int, int, char *, int, char *, char *,
                           int64_t, int64_t, int64_t, int64_t, char *);

I haven't tried to build it with systemtap-sdt installed to see how we expand
that. If someone has, it would be nice to figure out what it all expands to. I
assume indeed some DTRACE_PROBE11 macro will be generated.

If so, this should be easy. It only goes up to 11 here, but we could just
define some more just in case.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]