[DTrace-devel] [PATCH 4/4] options: discontinue -xversion=V as a valid option
Eugene Loh
eugene.loh at oracle.com
Thu Dec 18 20:22:47 UTC 2025
Okay, but there must surely be test-suite changes. At the very least:
* test/unittest/version/err.1.1.d The err.* tests should not simply
fail; they should fail for the correct reason.
* test/unittest/version/tst.1.0.d
Maybe nothing else???
On 12/17/25 00:10, Kris Van Hees wrote:
> DTrace allowed setting a previous version to operate in compatibility
> mode. Unfortunately, it was not fully implemented. Translators are
> not really versioned, and if a translator uses an identifier that does
> not exist in the version specified in -xversion=V, data structures end
> up corrupted.
>
> Since the usefulness of -xversion=V seems to be less than the effort
> needed to rectify the implementation, we are no longer supporting this
> option.
>
> Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
> libdtrace/dt_options.c | 14 ++------------
> 1 file changed, 2 insertions(+), 12 deletions(-)
>
> diff --git a/libdtrace/dt_options.c b/libdtrace/dt_options.c
> index 97516517..0a35e852 100644
> --- a/libdtrace/dt_options.c
> +++ b/libdtrace/dt_options.c
> @@ -24,6 +24,7 @@
> #include <dt_pcap.h>
> #include <dt_string.h>
> #include <libproc.h>
> +#include <port.h>
>
> static int
> dt_opt_agg(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
> @@ -676,18 +677,7 @@ dt_opt_invcflags(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
> static int
> dt_opt_version(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
> {
> - dt_version_t v;
> -
> - if (arg == NULL)
> - return dt_set_errno(dtp, EDT_BADOPTVAL);
> -
> - if (dt_version_str2num(arg, &v) == -1)
> - return dt_set_errno(dtp, EDT_VERSINVAL);
> -
> - if (!dt_version_defined(v))
> - return dt_set_errno(dtp, EDT_VERSUNDEF);
> -
> - return dt_reduce(dtp, v);
> + return dt_set_errno(dtp, ENOTSUPP);
> }
>
> static int
More information about the DTrace-devel
mailing list