dtrace sdt problem: my fault or a generic problem (SYSINIT not working as expected for modules)?

Andriy Gapon avg at freebsd.org
Fri Mar 25 11:09:04 UTC 2011


on 25/03/2011 11:52 Alexander Leidinger said the following:
> As I read it, it looks a little bit like the SYSINIT of the SDT probes didn't
> work as expected for my new probes (does this work in modules? fxr.watson.org
> AFAICS only lists SDT probes in kernel-code, not in module-code), a hit with the
> clue-bat is welcome.

My reading of the code is that all modules with SDT proivders/probes should be
loaded before sdt module itself.
SYSINIT in your module(s) works as expect, but dtrace_register() is not called
on your SDT provider.  See sys/cddl/dev/sdt/sdt.c for details: sdt_modevent ->
sdt_load -> sdt_provider_listall(sdt_provider_reg_callback) -> dtrace_register.

I am not saying that this behavior is correct/desired, just that this is what we
have now.

-- 
Andriy Gapon


More information about the freebsd-hackers mailing list