Page MenuHomeFreeBSD

D13877.id37866.diff
No OneTemporary

D13877.id37866.diff

Index: cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c
===================================================================
--- cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c
+++ cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c
@@ -315,6 +315,12 @@
DT_VERS_1_5, &dt_idops_func, "string(int, void *)" },
{ "ipl", DT_IDENT_SCALAR, 0, DIF_VAR_IPL, DT_ATTR_STABCMN, DT_VERS_1_0,
&dt_idops_type, "uint_t" },
+#ifdef __FreeBSD__
+{ "jailname", DT_IDENT_SCALAR, 0, DIF_VAR_JAILNAME,
+ DT_ATTR_STABCMN, DT_VERS_1_13, &dt_idops_type, "string" },
+{ "jid", DT_IDENT_SCALAR, 0, DIF_VAR_JID, DT_ATTR_STABCMN, DT_VERS_1_13,
+ &dt_idops_type, "uint_t" },
+#endif
{ "json", DT_IDENT_FUNC, 0, DIF_SUBR_JSON, DT_ATTR_STABCMN, DT_VERS_1_11,
&dt_idops_func, "string(const char *, const char *)" },
{ "jstack", DT_IDENT_ACTFUNC, 0, DT_ACT_JSTACK, DT_ATTR_STABCMN, DT_VERS_1_0,
@@ -534,10 +540,8 @@
{ "walltimestamp", DT_IDENT_SCALAR, 0, DIF_VAR_WALLTIMESTAMP,
DT_ATTR_STABCMN, DT_VERS_1_0,
&dt_idops_type, "int64_t" },
-#ifdef illumos
{ "zonename", DT_IDENT_SCALAR, 0, DIF_VAR_ZONENAME,
DT_ATTR_STABCMN, DT_VERS_1_0, &dt_idops_type, "string" },
-#endif
#ifndef illumos
{ "cpu", DT_IDENT_SCALAR, 0, DIF_VAR_CPU,
Index: sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
===================================================================
--- sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
+++ sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
@@ -3689,6 +3689,20 @@
return (dtrace_dif_varstr(
(uintptr_t)curthread->t_procp->p_zone->zone_name,
state, mstate));
+#elif defined(__FreeBSD__)
+ case DIF_VAR_JAILNAME:
+ if (!dtrace_priv_kernel(state))
+ return (0);
+
+ return (dtrace_dif_varstr(
+ (uintptr_t)curthread->t_procp->p_ucred->cr_prison->pr_name,
+ state, mstate));
+
+ case DIF_VAR_JID:
+ if (!dtrace_priv_kernel(state))
+ return (0);
+
+ return ((uint64_t)curthread->t_procp->p_ucred->cr_prison->pr_id);
#else
return (0);
#endif
Index: sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h
===================================================================
--- sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h
+++ sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h
@@ -254,6 +254,8 @@
#define DIF_VAR_GID 0x011f /* process group ID */
#define DIF_VAR_ERRNO 0x0120 /* thread errno */
#define DIF_VAR_EXECARGS 0x0121 /* process arguments */
+#define DIF_VAR_JID 0x0122 /* process jail id */
+#define DIF_VAR_JAILNAME 0x0123 /* process jail name */
#ifndef illumos
#define DIF_VAR_CPU 0x0200

File Metadata

Mime Type
text/plain
Expires
Mon, Feb 9, 2:39 AM (12 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28527674
Default Alt Text
D13877.id37866.diff (2 KB)

Event Timeline