CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sun Sep 6 21:49:32 UTC 2020 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_subr.c Log Message: Adjust string sizes To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.13 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.14 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.13 Mon May 28 17:05:05 2018 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Sun Sep 6 17:49:32 2020 @@ -956,7 +956,7 @@ int dtrace_uaddr2str(dtrace_hdl_t *dtp, pid_t pid, uint64_t addr, char *str, int nbytes) { - char name[PATH_MAX], objname[PATH_MAX], c[PATH_MAX * 2]; + char name[PATH_MAX / 2], objname[PATH_MAX], c[PATH_MAX * 2]; struct ps_prochandle *P = NULL; GElf_Sym sym; char *obj; @@ -977,8 +977,8 @@ dtrace_uaddr2str(dtrace_hdl_t *dtp, pid_ obj = dt_basename(objname); if (addr > sym.st_value) { - (void) snprintf(c, sizeof (c), "%s`%s+0x%llx", obj, - name, (u_longlong_t)(addr - sym.st_value)); + (void) snprintf(c, sizeof (c), "%s`%s+0x%jx", obj, + name, (uintmax_t)(addr - sym.st_value)); } else { (void) snprintf(c, sizeof (c), "%s`%s", obj, name); }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sun Sep 6 21:49:44 UTC 2020 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_options.c Log Message: Stop using alloca To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_options.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_options.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_options.c:1.8 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_options.c:1.9 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_options.c:1.8 Mon May 28 17:05:05 2018 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_options.c Sun Sep 6 17:49:44 2020 @@ -904,8 +904,9 @@ dt_options_load(dtrace_hdl_t *dtp) if (hdr.dofh_loadsz < sizeof (dof_hdr_t)) return (dt_set_errno(dtp, EINVAL)); - dof = alloca(hdr.dofh_loadsz); - bzero(dof, sizeof (dof_hdr_t)); + dof = calloc(hdr.dofh_loadsz, 1); + if (dof == NULL) + return (dt_set_errno(dtp, errno)); dof->dofh_loadsz = hdr.dofh_loadsz; for (i = 0; i < DTRACEOPT_MAX; i++) @@ -916,7 +917,10 @@ dt_options_load(dtrace_hdl_t *dtp) #else if (dt_ioctl(dtp, DTRACEIOC_DOFGET, ) == -1) #endif + { + free(dof); return (dt_set_errno(dtp, errno)); + } for (i = 0; i < dof->dofh_secnum; i++) { sec = (dof_sec_t *)(uintptr_t)((uintptr_t)dof + @@ -940,7 +944,7 @@ dt_options_load(dtrace_hdl_t *dtp) dtp->dt_options[opt->dofo_option] = opt->dofo_value; } - + free(dof); return (0); }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riastradh Date: Wed Feb 12 01:10:08 UTC 2020 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_impl.h dt_module.c dt_open.c Log Message: Use /dev/ksyms, not /netbsd, for the running kernel's symbols. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h cvs rdiff -u -r1.17 -r1.18 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c cvs rdiff -u -r1.16 -r1.17 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h:1.8 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h:1.9 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h:1.8 Mon May 28 21:05:05 2018 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h Wed Feb 12 01:10:08 2020 @@ -750,8 +750,6 @@ extern int yylex(void); #endif #ifdef __NetBSD__ -extern const char *dt_bootfile(char *, size_t); - #define longlong_t long long #define u_longlong_t unsigned long long #define __DECONST(a, b) __UNCONST(b) Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.17 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.18 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.17 Sat Jun 2 01:19:46 2018 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Wed Feb 12 01:10:08 2020 @@ -43,6 +43,7 @@ #endif #ifdef __NetBSD__ #include +#include #endif #include @@ -1185,9 +1186,7 @@ dt_module_update(dtrace_hdl_t *dtp, stru bool ismod; if (strcmp("netbsd", name) == 0) { - /* want the kernel, but it is not absolute */ - dt_bootfile(machine, sizeof(machine)); - snprintf(fname, sizeof(fname), "/%s", machine); + strlcpy(fname, _PATH_KSYMS, sizeof fname); ismod = false; } else { Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.16 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.17 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.16 Wed Jul 24 16:57:45 2019 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Wed Feb 12 01:10:08 2020 @@ -1025,24 +1025,15 @@ dt_get_sysinfo(int cmd, char *buf, size_ } #endif -#ifndef illumos -# ifdef __FreeBSD__ -# define DEFKERNEL "kernel" -# define BOOTFILE "kern.bootfile" -# endif -# ifdef __NetBSD__ -# define DEFKERNEL "netbsd" -# define BOOTFILE "machdep.booted_kernel" -# endif - -const char * +#ifdef __FreeBSD__ +static const char * dt_bootfile(char *bootfile, size_t len) { char *p; size_t olen = len; - if (sysctlbyname(BOOTFILE, bootfile, , NULL, 0) != 0) - strlcpy(bootfile, DEFKERNEL, olen); + if (sysctlbyname("kern.bootfile", bootfile, , NULL, 0) != 0) + strlcpy(bootfile, "kernel", olen); if ((p = strrchr(bootfile, '/')) != NULL) p++; @@ -1050,9 +1041,6 @@ dt_bootfile(char *bootfile, size_t len) p = bootfile; return p; } - -# undef DEFKERNEL -# undef BOOTFILE #endif static dtrace_hdl_t *
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Jun 2 01:19:46 UTC 2018 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: Use a constant to prevent dynamic array allocation which messes up SSP. To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.16 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.17 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.16 Mon May 28 17:05:05 2018 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Fri Jun 1 21:19:46 2018 @@ -1268,8 +1268,8 @@ dt_module_update(dtrace_hdl_t *dtp, stru #ifdef __NetBSD__ mapbase = 0; if (ismod) { - int maxmodules = 512; - modstat_t modstat_buf[maxmodules], *ms; +#define MAXMODULES 512 + modstat_t modstat_buf[MAXMODULES], *ms; struct iovec iov = { modstat_buf, sizeof(modstat_buf) }; if (modctl(MODCTL_STAT, ) < 0) { @@ -1278,14 +1278,14 @@ dt_module_update(dtrace_hdl_t *dtp, stru return; } - for (i = 0; i < maxmodules; i++) { + for (i = 0; i < MAXMODULES; i++) { ms = _buf[i]; if (!strcmp(name, ms->ms_name)) { mapbase = ms->ms_addr; break; } } - if (i == maxmodules) { + if (i == MAXMODULES) { dt_dprintf("module %s not found\n", name); return; }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: kre Date: Tue May 29 01:09:49 UTC 2018 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: mknames.sh Log Message: Build fix attempt, use TOOL_AWK (with fallback to "awk") rather than "nawk". To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.7 src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.8 --- src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.7 Tue Sep 29 23:50:52 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh Tue May 29 01:09:49 2018 @@ -46,7 +46,7 @@ dtrace_subrstr(dtrace_hdl_t *dtp, int su {\n\ switch (subr) {" -nawk ' +${TOOL_AWK:-awk} ' /^#define[ ]*DIF_SUBR_/ && $2 != "DIF_SUBR_MAX" { printf("\tcase %s: return (\"%s\");\n", $2, tolower(substr($2, 10))); }'
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Mon Nov 6 03:51:37 UTC 2017 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_link.c Log Message: need to undef KERN_ELFSIZE too here... To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.9 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.10 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.9 Thu Jan 12 18:12:59 2017 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Sun Nov 5 22:51:37 2017 @@ -33,6 +33,7 @@ #undef ELF32_MACHDEP_ID_CASES #undef ELF64_MACHDEP_ID_CASES #undef ELF64_MACHDEP_ENDIANNESS +#undef KERN_ELFSIZE #undef ARCH_ELFSIZE #undef R_TYPE #endif
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Thu Jan 12 23:12:59 UTC 2017 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_link.c Log Message: Rearrange headers To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.8 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.9 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.8 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Thu Jan 12 18:12:59 2017 @@ -27,12 +27,17 @@ #pragma ident "%Z%%M% %I% %E% SMI" #define ELF_TARGET_ALL -#include #ifdef __NetBSD__ #ifdef __x86_64__ #include +#undef ELF32_MACHDEP_ID_CASES +#undef ELF64_MACHDEP_ID_CASES +#undef ELF64_MACHDEP_ENDIANNESS +#undef ARCH_ELFSIZE +#undef R_TYPE #endif #endif +#include #include #ifdef illumos
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Wed Aug 3 16:37:02 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: machdep.booted_kernel is not an absolute path, make it so. Now u_int is found but its parent is not :-) To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.14 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.15 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.14 Wed Jun 29 20:23:36 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Wed Aug 3 12:37:02 2016 @@ -1180,8 +1180,9 @@ dt_module_update(dtrace_hdl_t *dtp, stru size_t len; if (strcmp("netbsd", name) == 0) { - /* want the kernel */ - dt_bootfile(fname, sizeof(fname)); + /* want the kernel, but it is not absolute */ + dt_bootfile(machine, sizeof(machine)); + snprintf(fname, sizeof(fname), "/%s", machine); } else { /* build stand module path from system */
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: pgoyette Date: Thu Jun 30 00:23:36 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: Add missing dp_proc_unlock() in error path. >From PR kern/51285 (Henning Petersen) XXX Pullup to 7 and 7-0 To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.13 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.14 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.13 Thu Apr 28 00:02:40 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Thu Jun 30 00:23:36 2016 @@ -713,6 +713,7 @@ dt_module_load_proc(dtrace_hdl_t *dtp, d arg.dpa_count = 0; if (Pobject_iter_resolved(p, dt_module_load_proc_count, ) != 0) { dt_dprintf("failed to iterate objects\n"); + dt_proc_unlock(dtp, p); dt_proc_release(dtp, p); return (dt_set_errno(dtp, EDT_CANTLOAD)); }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Thu Apr 28 11:38:41 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_open.c Log Message: remove incorrect comment To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.11 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.12 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.11 Wed Apr 27 20:02:40 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Thu Apr 28 07:38:41 2016 @@ -1041,7 +1041,6 @@ dt_bootfile(char *bootfile, size_t len) char *p; size_t olen = len; - /* This call shouldn't fail, but use a default just in case.*/ if (sysctlbyname(BOOTFILE, bootfile, , NULL, 0) != 0) strlcpy(bootfile, DEFKERNEL, olen);
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Thu Apr 28 00:02:40 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_impl.h dt_module.c dt_open.c Log Message: Introduce dt_bootfile() and use it to avoid hard-coded kernel values. Fixes dtrace hang for kernels not named netbsd. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h cvs rdiff -u -r1.12 -r1.13 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c cvs rdiff -u -r1.10 -r1.11 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h:1.6 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h:1.7 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h:1.6 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_impl.h Wed Apr 27 20:02:40 2016 @@ -744,6 +744,10 @@ extern int _dtrace_argmax; /* default m extern const char *_dtrace_libdir; /* default library directory */ extern const char *_dtrace_moddir; /* default kernel module directory */ +#ifndef illumos +extern const char *dt_bootfile(char *, size_t); +#endif + #if defined(__FreeBSD__) || defined(__NetBSD__) extern int gmatch(const char *, const char *); extern int yylex(void); Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.12 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.13 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.12 Mon Oct 5 21:18:47 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Wed Apr 27 20:02:40 2016 @@ -1180,7 +1180,7 @@ dt_module_update(dtrace_hdl_t *dtp, stru if (strcmp("netbsd", name) == 0) { /* want the kernel */ - strncpy(fname, "/netbsd", sizeof(fname)); + dt_bootfile(fname, sizeof(fname)); } else { /* build stand module path from system */ Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.10 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.11 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.10 Wed Feb 24 16:11:34 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Wed Apr 27 20:02:40 2016 @@ -1025,6 +1025,37 @@ dt_get_sysinfo(int cmd, char *buf, size_ } #endif +#ifndef illumos +# ifdef __FreeBSD__ +# define DEFKERNEL "kernel" +# define BOOTFILE "kern.bootfile" +# endif +# ifdef __NetBSD__ +# define DEFKERNEL "netbsd" +# define BOOTFILE "machdep.booted_kernel" +# endif + +const char * +dt_bootfile(char *bootfile, size_t len) +{ + char *p; + size_t olen = len; + + /* This call shouldn't fail, but use a default just in case.*/ + if (sysctlbyname(BOOTFILE, bootfile, , NULL, 0) != 0) + strlcpy(bootfile, DEFKERNEL, olen); + + if ((p = strrchr(bootfile, '/')) != NULL) + p++; + else + p = bootfile; + return p; +} + +# undef DEFKERNEL +# undef BOOTFILE +#endif + static dtrace_hdl_t * dt_vopen(int version, int flags, int *errp, const dtrace_vector_t *vector, void *arg) @@ -1309,37 +1340,25 @@ alloc: /* * On FreeBSD the kernel module name can't be hard-coded. The - * 'kern.bootfile' sysctl value tells us exactly which file is being - * used as the kernel. + * 'kern.bootfile' sysctl value tells us exactly which file is + * being used as the kernel. */ #ifndef illumos +# ifdef __FreeBSD__ +# define THREAD "struct thread" +# define MUTEX "struct mtx" +# define RWLOCK "struct rwlock" +# endif +# ifdef __NetBSD__ +# define THREAD "struct lwp" +# define MUTEX "struct kmutex" +# define RWLOCK "struct krwlock" +# endif { - char bootfile[MAXPATHLEN]; - char *p; - size_t len = sizeof(bootfile); + const char *p; + char kernname[512]; -#ifdef __FreeBSD__ -#define DEFKERNEL "kernel" -#define BOOTFILE "kern.bootfile" -#define THREAD "struct thread" -#define MUTEX "struct mtx" -#define RWLOCK "struct rwlock" -#endif -#ifdef __NetBSD__ -#define DEFKERNEL "netbsd" -#define BOOTFILE "machdep.booted_kernel" -#define THREAD "struct lwp" -#define MUTEX "struct kmutex" -#define RWLOCK "struct krwlock" -#endif - /* This call shouldn't fail, but use a default just in case. */ - if (sysctlbyname(BOOTFILE, bootfile, , NULL, 0) != 0) - strlcpy(bootfile, DEFKERNEL, sizeof(bootfile)); - - if ((p = strrchr(bootfile, '/')) != NULL) - p++; - else - p = bootfile; + p = dt_bootfile(kernname, sizeof(kernname)); /* * Format the global variables based on the kernel module name. @@ -1349,8 +1368,11 @@ alloc: snprintf(threadmtx_str, sizeof(threadmtx_str), "%s *(%s`%s *)", THREAD, p,
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: joerg Date: Tue Mar 1 21:09:17 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: drti.c Log Message: Don't crash when relocbase was 0. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.6 src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.7 --- src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.6 Mon Feb 29 02:19:37 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c Tue Mar 1 21:09:17 2016 @@ -149,7 +149,7 @@ dtrace_dof_init(void) elf = (void *)lmp->l_addr; dh.dofhp_dof = (uintptr_t)dof; - dh.dofhp_addr = elf->e_type == ET_DYN ? (uintptr_t) lmp->l_addr : 0; + dh.dofhp_addr = elf && elf->e_type == ET_DYN ? (uintptr_t) lmp->l_addr : 0; #if defined(__FreeBSD__) || defined(__NetBSD__) dh.dofhp_pid = getpid(); #endif
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riastradh Date: Mon Feb 29 02:19:38 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: drti.c Log Message: Add __printflike as appropriate. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.5 src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.6 --- src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.5 Sun Feb 28 19:10:45 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c Mon Feb 29 02:19:37 2016 @@ -67,7 +67,7 @@ static int gen; /* DOF helper generati extern dof_hdr_t __SUNW_dof; /* DOF defined in the .SUNW_dof section */ static boolean_t dof_init_debug = B_FALSE; /* From DTRACE_DOF_INIT_DEBUG */ -static void +static void __printflike(2,3) dprintf(int debug, const char *fmt, ...) { va_list ap;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sun Feb 28 19:10:45 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: drti.c Log Message: - Add missing ioctl.h - Hide dprintf To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c:1.4 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/drti.c Sun Feb 28 14:10:45 2016 @@ -29,9 +29,12 @@ #include #include #include +#include #include +#define dprintf __hide_dprintf #include +#undef dprintf #include #include #include
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: joerg Date: Wed Feb 24 21:11:35 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_open.c Log Message: Make the default CPP path a list and check if they are access(2)able. If no match is found, fallback to looking for cpp in PATH. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.9 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.10 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.9 Wed Feb 3 17:50:12 2016 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Wed Feb 24 21:11:34 2016 @@ -788,10 +788,10 @@ const dtrace_pattr_t _dtrace_prvdesc = { }; #ifdef illumos -const char *_dtrace_defcpp = "/usr/ccs/lib/cpp"; /* default cpp(1) to invoke */ +const char *_dtrace_defcpps[] = { "/usr/ccs/lib/cpp" }; /* default cpp(1) to invoke */ const char *_dtrace_defld = "/usr/ccs/bin/ld"; /* default ld(1) to invoke */ #else -const char *_dtrace_defcpp = "cpp"; /* default cpp(1) to invoke */ +const char *_dtrace_defcpps[] = { "/usr/bin/cpp", "/usr/bin/clang-cpp" }; /* default cpp(1) to invoke */ const char *_dtrace_defld = "ld"; /* default ld(1) to invoke */ const char *_dtrace_defobjcopy = "objcopy"; /* default objcopy(1) to invoke */ #endif @@ -1195,7 +1195,16 @@ alloc: dtp->dt_provs = calloc(dtp->dt_provbuckets, sizeof (dt_provider_t *)); dt_proc_hash_create(dtp); dtp->dt_vmax = DT_VERS_LATEST; - dtp->dt_cpp_path = strdup(_dtrace_defcpp); + dtp->dt_cpp_path = NULL; + for (i = 0; i < (int)sizeof(_dtrace_defcpps) / sizeof(_dtrace_defcpps[0]); ++i) { + if (access(_dtrace_defcpps[i], X_OK) == 0) { + dtp->dt_cpp_path = strdup(_dtrace_defcpps[i]); + break; + } + } + if (dtp->dt_cpp_path == NULL) + dtp->dt_cpp_path = strdup("cpp"); + dtp->dt_cpp_argv = malloc(sizeof (char *)); dtp->dt_cpp_argc = 1; dtp->dt_cpp_args = 1;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: roy Date: Thu Feb 4 16:48:34 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_parser.h Log Message: Mark __printflike and __dead. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.h diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.h:1.2 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.h:1.3 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.h:1.2 Thu Sep 24 14:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.h Thu Feb 4 16:48:34 2016 @@ -262,16 +262,19 @@ typedef enum { YYS_CONTROL /* lex/yacc state for parsing control lines */ } yystate_t; -extern void dnerror(const dt_node_t *, dt_errtag_t, const char *, ...); -extern void dnwarn(const dt_node_t *, dt_errtag_t, const char *, ...); - -extern void xyerror(dt_errtag_t, const char *, ...); -extern void xywarn(dt_errtag_t, const char *, ...); -extern void xyvwarn(dt_errtag_t, const char *, va_list); - -extern void yyerror(const char *, ...); -extern void yywarn(const char *, ...); -extern void yyvwarn(const char *, va_list); +extern void dnerror(const dt_node_t *, dt_errtag_t, const char *, ...) +__printflike(3, 4) __dead; +extern void dnwarn(const dt_node_t *, dt_errtag_t, const char *, ...) +__printflike(3, 4); + +extern void xyerror(dt_errtag_t, const char *, ...) __printflike(2, 3) +__dead; +extern void xywarn(dt_errtag_t, const char *, ...) __printflike(2, 3); +extern void xyvwarn(dt_errtag_t, const char *, va_list) __printflike(2, 0); + +extern void yyerror(const char *, ...) __printflike(1, 2) __dead; +extern void yywarn(const char *, ...) __printflike(1, 2); +extern void yyvwarn(const char *, va_list) __printflike(1, 0); extern void yylabel(const char *); extern void yybegin(yystate_t);
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: roy Date: Thu Feb 4 17:27:32 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_ident.c dt_parser.c Log Message: Fix printf formats and casts. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_ident.c cvs rdiff -u -r1.7 -r1.8 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_ident.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_ident.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_ident.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_ident.c:1.4 Thu Sep 24 14:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_ident.c Thu Feb 4 17:27:32 2016 @@ -358,7 +358,7 @@ dt_idcook_args(dt_node_t *dnp, dt_ident_ if (ap->dn_value >= prp->pr_argc) { xyerror(D_ARGS_IDX, "index %lld is out of range for %s %s[ ]\n", - (longlong_t)ap->dn_value, dtrace_desc2str(yypcb->pcb_pdesc, + (long long)ap->dn_value, dtrace_desc2str(yypcb->pcb_pdesc, n1, sizeof (n1)), idp->di_name); } @@ -374,12 +374,12 @@ dt_idcook_args(dt_node_t *dnp, dt_ident_ if (xnp->dn_type == CTF_ERR) { xyerror(D_ARGS_TYPE, "failed to resolve translated type for " - "%s[%lld]\n", idp->di_name, (longlong_t)ap->dn_value); + "%s[%lld]\n", idp->di_name, (long long)ap->dn_value); } if (nnp->dn_type == CTF_ERR) { xyerror(D_ARGS_TYPE, "failed to resolve native type for " - "%s[%lld]\n", idp->di_name, (longlong_t)ap->dn_value); + "%s[%lld]\n", idp->di_name, (long long)ap->dn_value); } if (dtp->dt_xlatemode == DT_XL_STATIC && ( @@ -428,7 +428,7 @@ dt_idcook_args(dt_node_t *dnp, dt_ident_ } else { xyerror(D_ARGS_XLATOR, "translator for %s[%lld] from %s to %s " - "is not defined\n", idp->di_name, (longlong_t)ap->dn_value, + "is not defined\n", idp->di_name, (long long)ap->dn_value, dt_node_type_name(nnp, n1, sizeof (n1)), dt_node_type_name(xnp, n2, sizeof (n2))); } @@ -459,7 +459,7 @@ dt_idcook_regs(dt_node_t *dnp, dt_ident_ if ((ap->dn_flags & DT_NF_SIGNED) && (int64_t)ap->dn_value < 0) { xyerror(D_REGS_IDX, "index %lld is out of range for array %s\n", - (longlong_t)ap->dn_value, idp->di_name); + (long long)ap->dn_value, idp->di_name); } if (dt_type_lookup("uint64_t", ) == -1) { Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c:1.7 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c:1.8 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c:1.7 Thu Sep 24 14:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c Thu Feb 4 17:27:32 2016 @@ -1280,7 +1280,7 @@ dt_node_int(uintmax_t value) } xyerror(D_INT_OFLOW, "integer constant 0x%llx cannot be represented " - "in any built-in integral type\n", (u_longlong_t)value); + "in any built-in integral type\n", (unsigned long long)value); /*NOTREACHED*/ return (NULL); /* keep gcc happy */ } @@ -2184,19 +2184,20 @@ dt_node_pdesc_by_id(uintmax_t id) longjmp(yypcb->pcb_jmpbuf, EDT_NOMEM); if (id > UINT_MAX) { - xyerror(D_PDESC_INVAL, "identifier %llu exceeds maximum " - "probe id\n", (u_longlong_t)id); + xyerror(D_PDESC_INVAL, "identifier %"PRIuMAX" exceeds maximum " + "probe id\n", id); } if (yypcb->pcb_pspec != DTRACE_PROBESPEC_NAME) { - xyerror(D_PDESC_INVAL, "probe identifier %llu not permitted " - "when specifying %s\n", (u_longlong_t)id, + xyerror(D_PDESC_INVAL, "probe identifier %"PRIuMAX + " not permitted when specifying %s\n", id, names[yypcb->pcb_pspec]); } if (dtrace_id2desc(dtp, (dtrace_id_t)id, dnp->dn_desc) != 0) { - xyerror(D_PDESC_INVAL, "invalid probe identifier %llu: %s\n", - (u_longlong_t)id, dtrace_errmsg(dtp, dtrace_errno(dtp))); + xyerror(D_PDESC_INVAL, "invalid probe identifier %"PRIuMAX + ": %s\n", + id, dtrace_errmsg(dtp, dtrace_errno(dtp))); } return (dnp);
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riz Date: Wed Feb 3 17:50:13 UTC 2016 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_open.c Log Message: Adapt getmajor and getminor signatures for NetBSD. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.8 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.9 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.8 Wed Oct 7 00:34:37 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Wed Feb 3 17:50:12 2016 @@ -277,10 +277,10 @@ static const dt_ident_t _dtrace_globals[ DT_VERS_1_2, _idops_func, "_symaddr(uintptr_t)" }, { "getmajor", DT_IDENT_FUNC, 0, DIF_SUBR_GETMAJOR, DT_ATTR_EVOLCMN, DT_VERS_1_0, - _idops_func, "genunix`major_t(genunix`dev_t)" }, + _idops_func, "netbsd`__devmajor_t(netbsd`dev_t)" }, { "getminor", DT_IDENT_FUNC, 0, DIF_SUBR_GETMINOR, DT_ATTR_EVOLCMN, DT_VERS_1_0, - _idops_func, "genunix`minor_t(genunix`dev_t)" }, + _idops_func, "netbsd`__devminor_t(netbsd`dev_t)" }, { "htonl", DT_IDENT_FUNC, 0, DIF_SUBR_HTONL, DT_ATTR_EVOLCMN, DT_VERS_1_3, _idops_func, "uint32_t(uint32_t)" }, { "htonll", DT_IDENT_FUNC, 0, DIF_SUBR_HTONLL, DT_ATTR_EVOLCMN, DT_VERS_1_3,
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riz Date: Thu Nov 12 22:10:48 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_lex.l Log Message: Declare variables under the same conditions as their use. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_lex.l Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_lex.l diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_lex.l:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_lex.l:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_lex.l:1.4 Thu Sep 24 14:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_lex.l Thu Nov 12 22:10:48 2015 @@ -430,7 +430,10 @@ if (yypcb->pcb_token != 0) { '{RGX_CHR}$ xyerror(D_CHR_NL, "newline encountered in character constant"); '{RGX_CHR}' { - char *s, *p, *q; + char *s; +#if BYTE_ORDER == _LITTLE_ENDIAN + char *p, *q; +#endif size_t nbytes; /*
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Wed Oct 7 00:34:37 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_open.c Log Message: Adjust for NetBSD. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.7 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.8 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.7 Mon Oct 5 13:47:37 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Tue Oct 6 20:34:37 2015 @@ -1309,9 +1309,23 @@ alloc: char *p; size_t len = sizeof(bootfile); +#ifdef __FreeBSD__ +#define DEFKERNEL "kernel" +#define BOOTFILE "kern.bootfile" +#define THREAD "struct thread" +#define MUTEX "struct mtx" +#define RWLOCK "struct rwlock" +#endif +#ifdef __NetBSD__ +#define DEFKERNEL "netbsd" +#define BOOTFILE "machdep.booted_kernel" +#define THREAD "struct lwp" +#define MUTEX "struct kmutex" +#define RWLOCK "struct krwlock" +#endif /* This call shouldn't fail, but use a default just in case. */ - if (sysctlbyname("kern.bootfile", bootfile, , NULL, 0) != 0) - strlcpy(bootfile, "kernel", sizeof(bootfile)); + if (sysctlbyname(BOOTFILE, bootfile, , NULL, 0) != 0) + strlcpy(bootfile, DEFKERNEL, sizeof(bootfile)); if ((p = strrchr(bootfile, '/')) != NULL) p++; @@ -1321,10 +1335,11 @@ alloc: /* * Format the global variables based on the kernel module name. */ - snprintf(curthread_str, sizeof(curthread_str), "%s`struct thread *",p); - snprintf(intmtx_str, sizeof(intmtx_str), "int(%s`struct mtx *)",p); - snprintf(threadmtx_str, sizeof(threadmtx_str), "struct thread *(%s`struct mtx *)",p); - snprintf(rwlock_str, sizeof(rwlock_str), "int(%s`struct rwlock *)",p); + snprintf(curthread_str, sizeof(curthread_str), "%s`%s *", p, THREAD); + snprintf(intmtx_str, sizeof(intmtx_str), "int(%s`%s *)", p, MUTEX); + snprintf(threadmtx_str, sizeof(threadmtx_str), "%s *(%s`%s *)", + THREAD, p, MUTEX); + snprintf(rwlock_str, sizeof(rwlock_str), "int(%s`%s *)", p, RWLOCK); snprintf(sxlock_str, sizeof(sxlock_str), "int(%s`struct sxlock *)",p); } #endif
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Mon Oct 5 17:48:09 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: load the kernel for NetBSD (for now) To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.10 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.11 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.10 Sun Oct 4 19:25:32 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Mon Oct 5 13:48:09 2015 @@ -40,6 +40,9 @@ #include #include #endif +#ifdef __NetBSD__ +#include +#endif #include #ifdef illumos @@ -1131,9 +1134,8 @@ dt_module_getctflib(dtrace_hdl_t *dtp, d * On FreeBSD, the module name is passed as the full module file name, * including the path. */ -#ifndef __NetBSD__ static void -#ifdef illumos +#if defined(illumos) || defined(__NetBSD__) dt_module_update(dtrace_hdl_t *dtp, const char *name) #elif defined(__FreeBSD__) dt_module_update(dtrace_hdl_t *dtp, struct kld_file_stat *k_stat) @@ -1354,7 +1356,6 @@ dt_module_update(dtrace_hdl_t *dtp, stru dt_dprintf("opened %d-bit module %s (%s) [%d]\n", bits, dmp->dm_name, dmp->dm_file, dmp->dm_modid); } -#endif /* * Unload all the loaded modules and then refresh the module cache with the @@ -1401,6 +1402,9 @@ dtrace_update(dtrace_hdl_t *dtp) if (kldstat(fileid, _stat) == 0) dt_module_update(dtp, _stat); } +#elif defined(__NetBSD__) + /* XXX just the kernel for now */ + dt_module_update(dtp, "netbsd"); #endif /*
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Mon Oct 5 17:47:37 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_open.c Log Message: Add definitions for uid_t and gid_t for NetBSD because we are screwing up with the names in the kernel and the ctf sections end up having only __uid_t and __gid_t. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.6 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.7 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c:1.6 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_open.c Mon Oct 5 13:47:37 2015 @@ -640,6 +640,10 @@ static const dt_typedef_t _dtrace_typede { "unsigned", "size_t" }, { "long", "id_t" }, { "long", "pid_t" }, +#ifdef __NetBSD__ +{ "unsigned int", "uid_t" }, +{ "unsigned int", "gid_t" }, +#endif { NULL, NULL } }; @@ -668,6 +672,10 @@ static const dt_typedef_t _dtrace_typede { "unsigned long", "size_t" }, { "int", "id_t" }, { "int", "pid_t" }, +#ifdef __NetBSD__ +{ "unsigned int", "uid_t" }, +{ "unsigned int", "gid_t" }, +#endif { NULL, NULL } };
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riz Date: Tue Oct 6 01:18:47 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: Make this build for me. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.11 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.12 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.11 Mon Oct 5 17:48:09 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Tue Oct 6 01:18:47 2015 @@ -1308,7 +1308,7 @@ dt_module_update(dtrace_hdl_t *dtp, stru * [Text][R/O data][R/W data][Dynamic][BSS][Non loadable] */ dmp->dm_text_size = dmp->dm_data_va - dmp->dm_text_va; -#if defined(__i386__) +#if defined(__i386__) && !defined(__NetBSD__) /* * Find the first load section and figure out the relocation * offset for the symbols. The kernel module will not need
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sun Oct 4 23:25:32 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: put back module filename finding code. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.9 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.10 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.9 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Sun Oct 4 19:25:32 2015 @@ -1169,6 +1169,36 @@ dt_module_update(dtrace_hdl_t *dtp, stru (void) strlcpy(name, k_stat->name, sizeof(name)); (void) strlcpy(fname, k_stat->pathname, sizeof(fname)); +#elif defined(__NetBSD__) + int mib_osrel[2] = { CTL_KERN, KERN_OSRELEASE }; + int mib_mach[2] = { CTL_HW, HW_MACHINE }; + char osrel[64]; + char machine[64]; + size_t len; + + if (strcmp("netbsd", name) == 0) { + /* want the kernel */ + strncpy(fname, "/netbsd", sizeof(fname)); + } else { + + /* build stand module path from system */ + len = sizeof(osrel); + if (sysctl(mib_osrel, 2, osrel, , NULL, 0) == -1) { + dt_dprintf("sysctl osrel failed: %s\n", +strerror(errno)); + return; + } + + len = sizeof(machine); + if (sysctl(mib_mach, 2, machine, , NULL, 0) == -1) { + dt_dprintf("sysctl machine failed: %s\n", +strerror(errno)); + return; + } + + (void) snprintf(fname, sizeof (fname), + "/stand/%s/%s/modules/%s/%s.kmod", machine, osrel, name, name); + } #endif if ((fd = open(fname, O_RDONLY)) == -1 || fstat64(fd, ) == -1 ||
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riz Date: Thu Oct 1 19:45:37 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_printf.c Log Message: Only declare 'ldn' where it's actually used. Fixes build on arm with MKDTRACE=yes. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.8 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.9 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.8 Thu Sep 24 14:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Thu Oct 1 19:45:37 2015 @@ -301,7 +301,6 @@ pfprint_fp(dtrace_hdl_t *dtp, FILE *fp, const dt_pfargd_t *pfd, const void *addr, size_t size, uint64_t normal) { double n = (double)normal; - long double ldn = (long double)normal; switch (size) { case sizeof (float): @@ -312,6 +311,7 @@ pfprint_fp(dtrace_hdl_t *dtp, FILE *fp, *((double *)addr) / n)); #if !defined(__arm__) && !defined(__powerpc__) && !defined(__mips__) case sizeof (long double): + long double ldn = (long double)normal; return (dt_printf(dtp, fp, format, *((long double *)addr) / ldn)); #endif
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: riz Date: Thu Oct 1 20:51:20 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_printf.c Log Message: Redo previous so as to not break non-arm MKDTRACE=yes builds. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.9 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.10 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.9 Thu Oct 1 19:45:37 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Thu Oct 1 20:51:19 2015 @@ -301,6 +301,9 @@ pfprint_fp(dtrace_hdl_t *dtp, FILE *fp, const dt_pfargd_t *pfd, const void *addr, size_t size, uint64_t normal) { double n = (double)normal; +#if !defined(__arm__) && !defined(__powerpc__) && !defined(__mips__) + long double ldn = (long double)normal; +#endif switch (size) { case sizeof (float): @@ -311,7 +314,6 @@ pfprint_fp(dtrace_hdl_t *dtp, FILE *fp, *((double *)addr) / n)); #if !defined(__arm__) && !defined(__powerpc__) && !defined(__mips__) case sizeof (long double): - long double ldn = (long double)normal; return (dt_printf(dtp, fp, format, *((long double *)addr) / ldn)); #endif
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Tue Sep 29 14:31:22 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_consume.c Log Message: return an error for actions we don't understand. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_consume.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_consume.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_consume.c:1.8 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_consume.c:1.9 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_consume.c:1.8 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_consume.c Tue Sep 29 10:31:22 2015 @@ -2674,6 +2674,8 @@ dt_consume_cpu(dtrace_hdl_t *dtp, FILE * case DTRACEACT_FREOPEN: func = dtrace_freopen; break; +default: + return (dt_set_errno(dtp, EDT_BADAGG)); } n = (*func)(dtp, fp, fmtdata, ,
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Tue Sep 29 23:50:52 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: mkerrtags.sh mknames.sh Log Message: detect dynamically if we need -e for echo To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh \ src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh:1.6 src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh:1.7 --- src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh:1.6 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh Tue Sep 29 19:50:52 2015 @@ -26,7 +26,10 @@ # #ident "%Z%%M% %I% %E% SMI" -BSDECHO=-e + +if [ "x$(echo -e)" != "x-e" ]; then + BSDECHO=-e +fi echo ${BSDECHO} "\ /*\n\ Index: src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.6 src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.7 --- src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.6 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh Tue Sep 29 19:50:52 2015 @@ -26,7 +26,9 @@ # #ident "%Z%%M% %I% %E% SMI" -BSDECHO=-e +if [ "x$(echo -e)" != "x-e" ]; then + BSDECHO=-e +fi echo ${BSDECHO} "\ /*\n\
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Sep 26 00:33:35 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_proc.c dt_proc.h Log Message: catch up with unsigned long -> proc_breakpoint_t change. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.c cvs rdiff -u -r1.3 -r1.4 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.c:1.7 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.c:1.8 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.c:1.7 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.c Fri Sep 25 20:33:34 2015 @@ -136,7 +136,7 @@ dt_proc_bpdestroy(dt_proc_t *dpr, int de if (delbkpts && dbp->dbp_active && state != PS_LOST && state != PS_UNDEAD) { (void) Pdelbkpt(dpr->dpr_proc, - dbp->dbp_addr, dbp->dbp_instr); + dbp->dbp_addr, >dbp_instr); } nbp = dt_list_next(dbp); dt_list_delete(>dpr_bps, dbp); @@ -186,7 +186,7 @@ dt_proc_bpmatch(dtrace_hdl_t *dtp, dt_pr (int)dpr->dpr_pid, (ulong_t)dbp->dbp_addr, ++dbp->dbp_hits); dbp->dbp_func(dtp, dpr, dbp->dbp_data); - (void) Pxecbkpt(dpr->dpr_proc, dbp->dbp_instr); + (void) Pxecbkpt(dpr->dpr_proc, >dbp_instr); } static void @@ -216,7 +216,7 @@ dt_proc_bpdisable(dt_proc_t *dpr) for (dbp = dt_list_next(>dpr_bps); dbp != NULL; dbp = dt_list_next(dbp)) { if (dbp->dbp_active && Pdelbkpt(dpr->dpr_proc, - dbp->dbp_addr, dbp->dbp_instr) == 0) + dbp->dbp_addr, >dbp_instr) == 0) dbp->dbp_active = B_FALSE; } Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.h diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.h:1.3 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.h:1.4 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.h:1.3 Thu Sep 24 10:25:29 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_proc.h Fri Sep 25 20:33:34 2015 @@ -80,7 +80,7 @@ typedef struct dt_bkpt { dt_bkpt_f *dbp_func; /* callback function to execute */ void *dbp_data; /* callback function private data */ uintptr_t dbp_addr; /* virtual address of breakpoint */ - ulong_t dbp_instr; /* saved instruction from breakpoint */ + proc_breakpoint_t dbp_instr; /* saved instruction from breakpoint */ ulong_t dbp_hits; /* count of breakpoint hits for debug */ int dbp_active; /* flag indicating breakpoint is on */ } dt_bkpt_t;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: ozaki-r Date: Wed Feb 18 03:07:56 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_subr.c Log Message: Don't return success when the target CPU is offline dt_status originally expected the behavior. This fixes a segfault happens in dt_aggregate_go (a user of dt_status) that depends on the behavior. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.9 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.10 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.9 Sat Feb 7 20:30:03 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Wed Feb 18 03:07:56 2015 @@ -41,10 +41,12 @@ #else #include sys/ioctl.h #include sys/sysctl.h +#include sys/cpuio.h #endif #include assert.h #include libgen.h #include limits.h +#include paths.h #include dt_impl.h @@ -497,6 +499,25 @@ dt_ioctl(dtrace_hdl_t *dtp, u_long val, return (-1); } +static bool +cpu_online(processorid_t cpu) +{ + cpustate_t cs; + int fd, online = false; + + if ((fd = open(_PATH_CPUCTL, O_RDONLY)) 0) + return false; + + cs.cs_id = cpu; + if (ioctl(fd, IOC_CPU_GETSTATE, cs) == 0) { + if (cs.cs_online) + online = true; + } + + close(fd); + return online; +} + int dt_status(dtrace_hdl_t *dtp, processorid_t cpu) { @@ -506,7 +527,7 @@ dt_status(dtrace_hdl_t *dtp, processorid #if defined(sun) return (p_online(cpu, P_STATUS)); #else - return 1; + return cpu_online(cpu) ? 1 : -1; #endif }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: ozaki-r Date: Wed Feb 18 03:08:38 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_aggregate.c Log Message: Add assert To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_aggregate.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_aggregate.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_aggregate.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_aggregate.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_aggregate.c:1.4 Sat Feb 7 20:30:03 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_aggregate.c Wed Feb 18 03:08:38 2015 @@ -1074,6 +1074,7 @@ dt_aggregate_go(dtrace_hdl_t *dtp) if (dt_status(dtp, i) == -1) continue; + assert(agp-dtat_ncpus agp-dtat_ncpu); agp-dtat_cpus[agp-dtat_ncpus++] = i; }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Feb 14 15:53:23 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_cg.c Log Message: PR/49666: Henning Petersen: initialization of instr wrong in dt_cg.c NULL instead of 0 for uint32_t. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_cg.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_cg.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_cg.c:1.3 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_cg.c:1.4 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_cg.c:1.3 Sat Feb 7 15:30:03 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_cg.c Sat Feb 14 10:53:23 2015 @@ -407,7 +407,7 @@ static void dt_cg_store(dt_node_t *src, dt_irlist_t *dlp, dt_regset_t *drp, dt_node_t *dst) { ctf_encoding_t e; - dif_instr_t instr = NULL; + dif_instr_t instr = 0; size_t size; int reg;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Feb 14 15:55:05 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_parser.c Log Message: PR/49667: Henning Petersen: Missing initialization of values in dt_parser.c To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c:1.4 Sat Feb 7 15:30:03 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_parser.c Sat Feb 14 10:55:05 2015 @@ -3081,8 +3081,8 @@ dt_cook_op2(dt_node_t *dnp, uint_t idfla int op = dnp-dn_op; ctf_membinfo_t m; - ctf_file_t *ctfp; - ctf_id_t type; + ctf_file_t *ctfp = NULL; + ctf_id_t type = 0; int kind, val, uref; dt_ident_t *idp;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Feb 7 20:33:22 UTC 2015 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_as.c Log Message: delete error(1) strings. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_as.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_as.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_as.c:1.2 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_as.c:1.3 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_as.c:1.2 Sat Feb 7 15:30:03 2015 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_as.c Sat Feb 7 15:33:22 2015 @@ -428,12 +428,9 @@ dt_as(dt_pcb_t *pcb) if ((idp = dip-di_extern) == NULL) continue; /* no relocation entry needed */ -/*###429 [cc] error: 'kbits' may be used uninitialized in this function [-Werror=maybe-uninitialized]%%%*/ if ((idp-di_flags kmask) == kbits) { nodef = knodef; rp = krp++; -/*###432 [cc] error: 'ubits' may be used uninitialized in this function [-Werror=maybe-uninitialized]%%%*/ -/*###432 [cc] error: 'umask' may be used uninitialized in this function [-Werror=maybe-uninitialized]%%%*/ } else if ((idp-di_flags umask) == ubits) { nodef = unodef; rp = urp++;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: apb Date: Thu Mar 27 19:34:39 UTC 2014 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_printf.c Log Message: format is a pointer, so sizeof(format) is not a good length to pass to snprintf. Try to calculate the correct length, taking into account the amount of space already used. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.4 Wed Feb 20 22:45:12 2013 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Thu Mar 27 19:34:39 2014 @@ -1861,10 +1861,10 @@ dtrace_printf_format(dtrace_hdl_t *dtp, *f++ = '@'; if (width != 0) - f += snprintf(f, sizeof (format), %d, width); + f += snprintf(f, format + formatlen - f, %d, width); if (prec != 0) - f += snprintf(f, sizeof (format), .%d, prec); + f += snprintf(f, format + formatlen - f, .%d, prec); /* * If the output format is %s, then either %s is the underlying
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: tron Date: Wed Feb 20 22:45:13 UTC 2013 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_printf.c Log Message: Fix dodgy arguments to snprintf(3) which cause a warning that breaks the build (at least with USE_SSP set to yes). To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.3 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.4 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c:1.3 Sat Feb 27 23:43:52 2010 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_printf.c Wed Feb 20 22:45:12 2013 @@ -1482,11 +1482,15 @@ dt_printf_format(dtrace_hdl_t *dtp, FILE if (func == pfprint_stack (pfd-pfd_flags DT_PFCONV_LEFT)) width = 0; - if (width != 0) - f += snprintf(f, sizeof (format), %d, ABS(width)); + if (width != 0) { + f += snprintf(f, format + sizeof (format) - f, + %d, ABS(width)); + } - if (prec 0) - f += snprintf(f, sizeof (format), .%d, prec); + if (prec 0) { + f += snprintf(f, format + sizeof (format) - f, + .%d, prec); + } (void) strcpy(f, pfd-pfd_fmt); pfd-pfd_rec = rec;
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: tron Date: Wed Jan 2 21:19:13 UTC 2013 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_subr.c Log Message: Include sys/ioctl.h for the prototype of ioctl(2) which fixes the build. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.5 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.6 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.5 Wed Oct 19 11:03:52 2011 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Wed Jan 2 21:19:13 2013 @@ -39,6 +39,7 @@ #if defined(sun) #include alloca.h #else +#include sys/ioctl.h #include sys/sysctl.h #endif #include assert.h
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: wiz Date: Mon Feb 13 13:05:36 UTC 2012 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: Use the correct path in dt_module.c. From clang via Henning Petersen in PR 46009. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.6 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.7 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.6 Tue Jul 26 12:28:01 2011 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Mon Feb 13 13:05:36 2012 @@ -880,7 +880,7 @@ dt_module_update(dtrace_hdl_t *dtp, cons } (void) snprintf(fname, sizeof (fname), - /stand/%s/%s/%s.kmod, machine, osrel, name, name); + /stand/%s/%s/modules/%s/%s.kmod, machine, osrel, name, name); } #endif
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: yamt Date: Wed Oct 19 11:03:52 UTC 2011 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_subr.c Log Message: make aggregate work for 1 cpus To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c:1.4 Sat Feb 27 23:43:52 2010 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_subr.c Wed Oct 19 11:03:52 2011 @@ -505,12 +505,7 @@ dt_status(dtrace_hdl_t *dtp, processorid #if defined(sun) return (p_online(cpu, P_STATUS)); #else - int maxid = 0; - size_t len = sizeof(maxid); - if (sysctlbyname(kern.smp.maxid, maxid, len, NULL, 0) != 0) - return (cpu == 0 ? 1 : -1); - else - return (cpu = maxid ? 1 : -1); + return 1; #endif }
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: yamt Date: Tue Jul 26 12:28:02 UTC 2011 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_module.c Log Message: remove a debug printf To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.5 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.6 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c:1.5 Mon Mar 1 11:19:40 2010 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_module.c Tue Jul 26 12:28:01 2011 @@ -859,8 +859,6 @@ char machine[64]; size_t len; - printf(dt_module_update: %s\n, name); /* XXX debug */ - if (strcmp(netbsd,name) == 0) { /* want the kernel */ strncpy(fname, /netbsd, sizeof(fname));
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Apr 3 18:43:35 UTC 2010 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: dt_link.c Log Message: hack for amd64 To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.2 src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.3 --- src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c:1.2 Sat Feb 20 19:49:54 2010 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/dt_link.c Sat Apr 3 14:43:34 2010 @@ -231,10 +231,12 @@ /* XXX */ printf(%s:%s(%d): DOODAD\n,__FUNCTION__,__FILE__,__LINE__); #elif defined(__i386) || defined(__amd64) +#ifndef __amd64 /* XXX: FIXME */ rel-r_offset = s-dofs_offset + dofr[j].dofr_offset; rel-r_info = ELF32_R_INFO(count + dep-de_global, R_386_32); +#endif #elif defined(__mips__) /* XXX */ printf(%s:%s(%d): DOODAD\n,__FUNCTION__,__FILE__,__LINE__); @@ -989,9 +991,11 @@ * these types have the same values on both 32-bit and 64-bit * x86 architectures. */ +#ifndef __amd64 /* XXX: FIXME */ if (GELF_R_TYPE(rela-r_info) != R_386_PC32 GELF_R_TYPE(rela-r_info) != R_386_PLT32) return (-1); +#endif /* * We may have already processed this object file in an earlier linker
CVS commit: src/external/cddl/osnet/dist/lib/libdtrace/common
Module Name:src Committed By: christos Date: Sat Apr 3 18:43:54 UTC 2010 Modified Files: src/external/cddl/osnet/dist/lib/libdtrace/common: mkerrtags.sh mknames.sh Log Message: remove useless double [[ To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh \ src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh:1.4 Thu Mar 4 20:34:35 2010 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/mkerrtags.sh Sat Apr 3 14:43:54 2010 @@ -26,7 +26,7 @@ # #ident %Z%%M% %I% %E% SMI -if [[ $(uname) = Darwin ]]; then +if [ $(uname) = Darwin ]; then BSDECHO= else BSDECHO=-e Index: src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh diff -u src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.4 src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.5 --- src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh:1.4 Thu Mar 4 20:34:35 2010 +++ src/external/cddl/osnet/dist/lib/libdtrace/common/mknames.sh Sat Apr 3 14:43:54 2010 @@ -26,7 +26,7 @@ # #ident %Z%%M% %I% %E% SMI -if [[ $(uname) = Darwin ]]; then +if [ $(uname) = Darwin ]; then BSDECHO= else BSDECHO=-e