Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Oct 2013 23:11:07 +0200
From:      Andriy Gapon <avg@FreeBSD.org>
To:        dtrace@FreeBSD.org
Cc:        freebsd-hackers@FreeBSD.org
Subject:   sdt "sname" removal
Message-ID:  <5270246B.6070105@FreeBSD.org>

next in thread | raw e-mail | index | archive | help

I never understood why FreeBSD SDT as opposed to upstream SDT requires the same
or almost the same probe name to be specified twice.  This seems to be silly and
a little bit error-prone.
In other words, I do not see any reason not to re-use the original upstream
trick where double underscore in a providers name in the C code gets converted
to a single dash in a DTrace provider name. [*]

So here is my take at that:
http://people.freebsd.org/~avg/sdt-sname-removal.diff

An inline preview of the change:
-SDT_PROBE_DEFINE1(priv, kernel, priv_check, priv_ok, priv-ok, "int");
-SDT_PROBE_DEFINE1(priv, kernel, priv_check, priv_err, priv-err, "int");
+SDT_PROBE_DEFINE1(priv, kernel, priv_check, priv__ok, "int");
+SDT_PROBE_DEFINE1(priv, kernel, priv_check, priv__err, "int");

It's possible that I missed some places where old style SDT_PROBE_DEFINE macros
are used or where an old probe name is used with SDT_PROBE_ARGTYPE or SDT_PROBE.

Please test, review, comment, etc.
Thank you!
-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5270246B.6070105>