summaryrefslogtreecommitdiffstats
path: root/cddl/contrib/dtracetoolkit/JavaScript
diff options
context:
space:
mode:
authorgnn <gnn@FreeBSD.org>2016-05-19 19:51:39 +0000
committergnn <gnn@FreeBSD.org>2016-05-19 19:51:39 +0000
commitf6dffc405c7096f010b1b300da305496e6eccfbf (patch)
treed8ae9764a9fe69885151446bd98bb00d10a96f32 /cddl/contrib/dtracetoolkit/JavaScript
parent6dc0fa9057a5a2eda45ab244907043956d7cbead (diff)
downloadFreeBSD-src-f6dffc405c7096f010b1b300da305496e6eccfbf.zip
FreeBSD-src-f6dffc405c7096f010b1b300da305496e6eccfbf.tar.gz
Remove the old version of the DTraceToolkit from the source tree.
The DTraceToolkit is part of the Open DTrace effort and is supported on FreeBSD as a port (sysutils/DTraceToolkit) which has been updated to properly track toolkit development upstream. Sponsored by: DARPA, AFRL
Diffstat (limited to 'cddl/contrib/dtracetoolkit/JavaScript')
-rw-r--r--cddl/contrib/dtracetoolkit/JavaScript/Readme54
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_calldist.d101
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_calls.d76
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_calltime.d115
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_cpudist.d101
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_cputime.d115
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_execs.d51
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_flow.d69
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_flowinfo.d86
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_flowtime.d84
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_objcpu.d61
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_objgc.d89
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_objnew.d55
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_stat.d120
-rwxr-xr-xcddl/contrib/dtracetoolkit/JavaScript/js_who.d56
15 files changed, 0 insertions, 1233 deletions
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/Readme b/cddl/contrib/dtracetoolkit/JavaScript/Readme
deleted file mode 100644
index a9bebf8..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/Readme
+++ /dev/null
@@ -1,54 +0,0 @@
-JavaScript - DTracing JavaScript
-
- There scripts trace the JavaScript programming language, and require a
- browser to be built with the DTrace JavaScript provider.
-
- The DTrace JavaScript provider was originally written by Brendan Gregg,
- and later developed as part of a Mozilla DTrace provider suite by
- engineers from both Sun and Mozilla. It currently exists as patches
- to the Mozilla source tree and requires building from source to get
- working; it may be integrated into Solaris builds by default in the
- future. To download the current patches and instructions, visit,
-
- http://www.opensolaris.org/os/project/mozilla-dtrace/
-
- A rough guide for the process is,
-
- 1. Download the Mozilla source
- http://developer.mozilla.org/en/docs/Mozilla_Source_Code_Via_CVS
- 2. Download the Mozilla DTrace framework patch, and apply
- https://bugzilla.mozilla.org/show_bug.cgi?id=370906
- 3. Download the JavaScript DTrace provider patch, and apply
- https://bugzilla.mozilla.org/show_bug.cgi?id=388564
- 4. Create a .mozconfig file (needed for compilation).
- 5. Setup various compilation environment vars (CC/CFLAGS/CXX/...)
- 6. autoconf
- 7. ./configure --enable-dtrace
- 8. gmake
-
- See John Rice's instructions linked from the OpenSolaris page above
- for details on steps 4-8.
-
- Since the DTrace JavaScript provider may be developed further, there is a
- chance that it has changed slightly by the time you are reading this,
- causing these scripts to either break or behave oddly. Firstly, check for
- newer versions of the DTraceToolkit; if it hasn't been updated and you need
- to use these scripts immediately, then updating them shouldn't take
- too long. The following was the state of the provider when these scripts
- were written - check for changes and update the scripts accordingly,
-
- provider javascript {
- probe function-entry(file, class, func)
- probe function-info(file, class, func, lineno, runfile, runlineno)
- probe function-args(file, class, func, argc, argv, argv0, argv1,
- argv2, argv3, argv4)
- probe function-rval(file, class, func, lineno, rval, rval0)
- probe function-return(file, class, func)
- probe object-create-start(file, class)
- probe object-create(file, class, *object, rlineno)
- probe object-create-done(file, class)
- probe object-finalize(NULL, class, *object)
- probe execute-start(file, lineno)
- probe execute-done(file, lineno)
- };
-
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_calldist.d b/cddl/contrib/dtracetoolkit/JavaScript/js_calldist.d
deleted file mode 100755
index 2c4923a..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_calldist.d
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_calldist.d - measure JavaScript elapsed times for types of operation.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_calldist.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers running on the system with
- * JavaScript provider support.
- *
- * USAGE: js_calldist.d # hit Ctrl-C to end
- *
- * FIELDS:
- * 1 Filename of the JavaScript program
- * 2 Type of call (func/obj-new)
- * 3 Name of call
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::function-entry
-{
- self->depth++;
- self->exclude[self->depth] = 0;
- self->function[self->depth] = timestamp;
-}
-
-javascript*:::function-return
-/self->function[self->depth]/
-{
- this->elapsed_incl = timestamp - self->function[self->depth];
- this->elapsed_excl = this->elapsed_incl - self->exclude[self->depth];
- self->function[self->depth] = 0;
- self->exclude[self->depth] = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg2);
-
- @types_incl[this->file, "func", this->name] =
- quantize(this->elapsed_incl / 1000);
- @types_excl[this->file, "func", this->name] =
- quantize(this->elapsed_excl / 1000);
-
- self->depth--;
- self->exclude[self->depth] += this->elapsed_incl;
-}
-
-javascript*:::object-create-start
-{
- self->object = timestamp;
-}
-
-javascript*:::object-create-done
-/self->object/
-{
- this->elapsed = timestamp - self->object;
- self->object = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg1);
-
- @types[this->file, "obj-new", this->name] =
- quantize(this->elapsed / 1000);
-
- self->exclude[self->depth] += this->elapsed;
-}
-
-dtrace:::END
-{
- printf("\nElapsed times (us),\n");
- printa(" %s, %s, %s %@d\n", @types);
-
- printf("\nExclusive function elapsed times (us),\n");
- printa(" %s, %s, %s %@d\n", @types_excl);
-
- printf("\nInclusive function elapsed times (us),\n");
- printa(" %s, %s, %s %@d\n", @types_incl);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_calls.d b/cddl/contrib/dtracetoolkit/JavaScript/js_calls.d
deleted file mode 100755
index 98f1a83..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_calls.d
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_calls.d - count JavaScript calls using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_calls.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces activity from all browsers on the system that are
- * running with JavaScript provider support.
- *
- * USAGE: js_calls.d # hit Ctrl-C to end
- *
- * FIELDS:
- * FILE Filename of the JavaScript program
- * TYPE Type of call (func/obj-new/...)
- * NAME Descriptive name of call
- * COUNT Number of calls during sample
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::function-entry
-{
- this->name = copyinstr(arg2);
- @calls[basename(copyinstr(arg0)), "func", this->name] = count();
-}
-
-javascript*:::execute-start
-{
- this->filename = basename(copyinstr(arg0));
- @calls[this->filename, "exec", "."] = count();
-}
-
-javascript*:::object-create-start
-{
- this->name = copyinstr(arg1);
- this->filename = basename(copyinstr(arg0));
- @calls[this->filename, "obj-new", this->name] = count();
-}
-
-javascript*:::object-finalize
-{
- this->name = copyinstr(arg1);
- @calls["<null>", "obj-free", this->name] = count();
-}
-
-dtrace:::END
-{
- printf(" %-24s %-10s %-30s %8s\n", "FILE", "TYPE", "NAME", "CALLS");
- printa(" %-24s %-10s %-30s %@8d\n", @calls);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_calltime.d b/cddl/contrib/dtracetoolkit/JavaScript/js_calltime.d
deleted file mode 100755
index dce150e..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_calltime.d
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_calltime.d - measure JavaScript elapsed times for types of operation.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_calltime.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers running on the system with
- * JavaScript provider support.
- *
- * USAGE: js_calltime.d # hit Ctrl-C to end
- *
- * FIELDS:
- * FILE Filename of the JavaScript program
- * TYPE Type of call (func/obj-new/gc/total)
- * NAME Name of call
- * TOTAL Total elapsed time for calls (us)
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::function-entry
-{
- self->depth++;
- self->exclude[self->depth] = 0;
- self->function[self->depth] = timestamp;
-}
-
-javascript*:::function-return
-/self->function[self->depth]/
-{
- this->elapsed_incl = timestamp - self->function[self->depth];
- this->elapsed_excl = this->elapsed_incl - self->exclude[self->depth];
- self->function[self->depth] = 0;
- self->exclude[self->depth] = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg2);
-
- @num[this->file, "func", this->name] = count();
- @num["-", "total", "-"] = count();
- @types_incl[this->file, "func", this->name] = sum(this->elapsed_incl);
- @types_excl[this->file, "func", this->name] = sum(this->elapsed_excl);
- @types_excl["-", "total", "-"] = sum(this->elapsed_excl);
-
- self->depth--;
- self->exclude[self->depth] += this->elapsed_incl;
-}
-
-javascript*:::object-create-start
-{
- self->object = timestamp;
-}
-
-javascript*:::object-create-done
-/self->object/
-{
- this->elapsed = timestamp - self->object;
- self->object = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg1);
-
- @num[this->file, "obj-new", this->name] = count();
- @num["-", "total", "-"] = count();
- @types[this->file, "obj-new", this->name] = sum(this->elapsed);
- @types["-", "total", "-"] = sum(this->elapsed);
-
- self->exclude[self->depth] += this->elapsed;
-}
-
-dtrace:::END
-{
- printf("\nCount,\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "COUNT");
- printa(" %-20.20s %-10s %-32s %@8d\n", @num);
-
- normalize(@types, 1000);
- printf("\nElapsed times (us),\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "TOTAL");
- printa(" %-20.20s %-10s %-32s %@8d\n", @types);
-
- normalize(@types_excl, 1000);
- printf("\nExclusive function elapsed times (us),\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "TOTAL");
- printa(" %-20.20s %-10s %-32s %@8d\n", @types_excl);
-
- normalize(@types_incl, 1000);
- printf("\nInclusive function elapsed times (us),\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "TOTAL");
- printa(" %-20.20s %-10s %-32s %@8d\n", @types_incl);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_cpudist.d b/cddl/contrib/dtracetoolkit/JavaScript/js_cpudist.d
deleted file mode 100755
index cbe168d..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_cpudist.d
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_cpudist.d - measure JavaScript on-CPU times for types of operation.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_cpudist.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers running on the system with
- * JavaScript provider support.
- *
- * USAGE: js_cpudist.d # hit Ctrl-C to end
- *
- * FIELDS:
- * 1 Filename of the JavaScript program
- * 2 Type of call (func/obj-new)
- * 3 Name of call
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::function-entry
-{
- self->depth++;
- self->exclude[self->depth] = 0;
- self->function[self->depth] = vtimestamp;
-}
-
-javascript*:::function-return
-/self->function[self->depth]/
-{
- this->oncpu_incl = vtimestamp - self->function[self->depth];
- this->oncpu_excl = this->oncpu_incl - self->exclude[self->depth];
- self->function[self->depth] = 0;
- self->exclude[self->depth] = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg2);
-
- @types_incl[this->file, "func", this->name] =
- quantize(this->oncpu_incl / 1000);
- @types_excl[this->file, "func", this->name] =
- quantize(this->oncpu_excl / 1000);
-
- self->depth--;
- self->exclude[self->depth] += this->oncpu_incl;
-}
-
-javascript*:::object-create-start
-{
- self->object = vtimestamp;
-}
-
-javascript*:::object-create-done
-/self->object/
-{
- this->oncpu = vtimestamp - self->object;
- self->object = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg1);
-
- @types[this->file, "obj-new", this->name] =
- quantize(this->oncpu / 1000);
-
- self->exclude[self->depth] += this->oncpu;
-}
-
-dtrace:::END
-{
- printf("\nElapsed times (us),\n");
- printa(" %s, %s, %s %@d\n", @types);
-
- printf("\nExclusive function on-CPU times (us),\n");
- printa(" %s, %s, %s %@d\n", @types_excl);
-
- printf("\nInclusive function on-CPU times (us),\n");
- printa(" %s, %s, %s %@d\n", @types_incl);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_cputime.d b/cddl/contrib/dtracetoolkit/JavaScript/js_cputime.d
deleted file mode 100755
index bee77ab..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_cputime.d
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_cputime.d - measure JavaScript on-CPU times for types of operation.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_cputime.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers running on the system with
- * JavaScript provider support.
- *
- * USAGE: js_cputime.d # hit Ctrl-C to end
- *
- * FIELDS:
- * FILE Filename of the JavaScript program
- * TYPE Type of call (func/obj-new/gc/total)
- * NAME Name of call
- * TOTAL Total on-CPU time for calls (us)
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::function-entry
-{
- self->depth++;
- self->exclude[self->depth] = 0;
- self->function[self->depth] = vtimestamp;
-}
-
-javascript*:::function-return
-/self->function[self->depth]/
-{
- this->oncpu_incl = vtimestamp - self->function[self->depth];
- this->oncpu_excl = this->oncpu_incl - self->exclude[self->depth];
- self->function[self->depth] = 0;
- self->exclude[self->depth] = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg2);
-
- @num[this->file, "func", this->name] = count();
- @num["-", "total", "-"] = count();
- @types_incl[this->file, "func", this->name] = sum(this->oncpu_incl);
- @types_excl[this->file, "func", this->name] = sum(this->oncpu_excl);
- @types_excl["-", "total", "-"] = sum(this->oncpu_excl);
-
- self->depth--;
- self->exclude[self->depth] += this->oncpu_incl;
-}
-
-javascript*:::object-create-start
-{
- self->object = vtimestamp;
-}
-
-javascript*:::object-create-done
-/self->object/
-{
- this->oncpu = vtimestamp - self->object;
- self->object = 0;
- this->file = basename(copyinstr(arg0));
- this->name = copyinstr(arg1);
-
- @num[this->file, "obj-new", this->name] = count();
- @num["-", "total", "-"] = count();
- @types[this->file, "obj-new", this->name] = sum(this->oncpu);
- @types["-", "total", "-"] = sum(this->oncpu);
-
- self->exclude[self->depth] += this->oncpu;
-}
-
-dtrace:::END
-{
- printf("\nCount,\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "COUNT");
- printa(" %-20.20s %-10s %-32s %@8d\n", @num);
-
- normalize(@types, 1000);
- printf("\nElapsed times (us),\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "TOTAL");
- printa(" %-20.20s %-10s %-32s %@8d\n", @types);
-
- normalize(@types_excl, 1000);
- printf("\nExclusive function on-CPU times (us),\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "TOTAL");
- printa(" %-20.20s %-10s %-32s %@8d\n", @types_excl);
-
- normalize(@types_incl, 1000);
- printf("\nInclusive function on-CPU times (us),\n");
- printf(" %-20s %-10s %-32s %8s\n", "FILE", "TYPE", "NAME", "TOTAL");
- printa(" %-20.20s %-10s %-32s %@8d\n", @types_incl);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_execs.d b/cddl/contrib/dtracetoolkit/JavaScript/js_execs.d
deleted file mode 100755
index fb0ca91..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_execs.d
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_execs.d - JavaScript execute snoop using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_execs.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces activity from all browsers on the system that are
- * running with JavaScript provider support.
- *
- * USAGE: js_execs.d # hit Ctrl-C to end
- *
- * FIELDS:
- * TIME Time of event
- * FILE Filename of the JavaScript program
- * LINENO Line number in filename
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-#pragma D option switchrate=10
-
-dtrace:::BEGIN
-{
- printf("%-20s %32s:%s\n", "TIME", "FILE", "LINENO");
-}
-
-javascript*:::execute-start
-{
- printf("%-20Y %32s:%d\n", walltimestamp, basename(copyinstr(arg0)),
- arg1);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_flow.d b/cddl/contrib/dtracetoolkit/JavaScript/js_flow.d
deleted file mode 100755
index 450cc69..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_flow.d
+++ /dev/null
@@ -1,69 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_flow.d - snoop JavaScript execution showing function flow using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_flow.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces activity from all browsers on the system that are running
- * with JavaScript provider support.
- *
- * USAGE: js_flow.d # hit Ctrl-C to end
- *
- * FIELDS:
- * C CPU-id
- * TIME(us) Time since boot, us
- * FILE Filename that this function belongs to
- * FUNC Function name
- *
- * LEGEND:
- * -> function entry
- * <- function return
- *
- * Filename and function names are printed if available.
- *
- * WARNING: Watch the first column carefully, it prints the CPU-id. If it
- * changes, then it is very likely that the output has been shuffled.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-#pragma D option switchrate=10
-
-self int depth;
-
-dtrace:::BEGIN
-{
- printf("%3s %-16s %-22s -- %s\n", "C", "TIME(us)", "FILE", "FUNC");
-}
-
-javascript*:::function-entry
-{
- printf("%3d %-16d %-22s %*s-> %s\n", cpu, timestamp / 1000,
- basename(copyinstr(arg0)), self->depth * 2, "", copyinstr(arg2));
- self->depth++;
-}
-
-javascript*:::function-return
-{
- self->depth -= self->depth > 0 ? 1 : 0;
- printf("%3d %-16d %-22s %*s<- %s\n", cpu, timestamp / 1000,
- basename(copyinstr(arg0)), self->depth * 2, "", copyinstr(arg2));
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_flowinfo.d b/cddl/contrib/dtracetoolkit/JavaScript/js_flowinfo.d
deleted file mode 100755
index b4b7d5c..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_flowinfo.d
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_flowinfo.d - JavaScript function flow with info using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_flowinfo.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces activity from all browsers on the system that are running
- * with JavaScript provider support.
- *
- * USAGE: js_flowinfo.d # hit Ctrl-C to end
- *
- * FIELDS:
- * C CPU-id
- * PID Process ID
- * DELTA(us) Elapsed time from previous line to this line
- * FILE Filename of the JavScript program
- * LINE Line number of filename
- * TYPE Type of call (func)
- * FUNC Function name
- *
- * LEGEND:
- * -> function entry
- * <- function return
- *
- * Filename and function names are printed if available.
- *
- * WARNING: Watch the first column carefully, it prints the CPU-id. If it
- * changes, then it is very likely that the output has been shuffled.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-#pragma D option switchrate=10
-
-self int depth;
-
-dtrace:::BEGIN
-{
- printf("%3s %6s %10s %16s:%-4s %-8s -- %s\n", "C", "PID", "DELTA(us)",
- "FILE", "LINE", "TYPE", "FUNC");
-}
-
-javascript*:::function-info,
-javascript*:::function-return
-/self->last == 0/
-{
- self->last = timestamp;
-}
-
-javascript*:::function-info
-{
- this->delta = (timestamp - self->last) / 1000;
- printf("%3d %6d %10d %16s:%-4d %-8s %*s-> %s\n", cpu, pid,
- this->delta, basename(copyinstr(arg4)), arg5, "func",
- self->depth * 2, "", copyinstr(arg2));
- self->depth++;
- self->last = timestamp;
-}
-
-javascript*:::function-return
-{
- this->delta = (timestamp - self->last) / 1000;
- self->depth -= self->depth > 0 ? 1 : 0;
- printf("%3d %6d %10d %16s:- %-8s %*s<- %s\n", cpu, pid,
- this->delta, basename(copyinstr(arg0)), "func", self->depth * 2,
- "", copyinstr(arg2));
- self->last = timestamp;
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_flowtime.d b/cddl/contrib/dtracetoolkit/JavaScript/js_flowtime.d
deleted file mode 100755
index 9545274..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_flowtime.d
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_flowtime.d - JavaScript function flow with delta times using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_flowtime.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces activity from all browsers on the system that are running
- * with JavaScript provider support.
- *
- * USAGE: js_flowtime.d # hit Ctrl-C to end
- *
- * FIELDS:
- * C CPU-id
- * TIME(us) Time since boot, us
- * FILE Filename that this function belongs to
- * DELTA(us) Elapsed time from previous line to this line
- * FUNC Function name
- *
- * LEGEND:
- * -> function entry
- * <- function return
- *
- * Filename and function names are printed if available.
- *
- * WARNING: Watch the first column carefully, it prints the CPU-id. If it
- * changes, then it is very likely that the output has been shuffled.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-#pragma D option switchrate=10
-
-self int depth;
-
-dtrace:::BEGIN
-{
- printf("%3s %-16s %-18s %9s -- %s\n", "C", "TIME(us)", "FILE",
- "DELTA(us)", "FUNC");
-}
-
-javascript*:::function-entry,
-javascript*:::function-return
-/self->last == 0/
-{
- self->last = timestamp;
-}
-
-javascript*:::function-entry
-{
- this->delta = (timestamp - self->last) / 1000;
- printf("%3d %-16d %-18s %9d %*s-> %s\n", cpu, timestamp / 1000,
- basename(copyinstr(arg0)), this->delta, self->depth * 2, "",
- copyinstr(arg2));
- self->depth++;
- self->last = timestamp;
-}
-
-javascript*:::function-return
-{
- this->delta = (timestamp - self->last) / 1000;
- self->depth -= self->depth > 0 ? 1 : 0;
- printf("%3d %-16d %-18s %9d %*s<- %s\n", cpu, timestamp / 1000,
- basename(copyinstr(arg0)), this->delta, self->depth * 2, "",
- copyinstr(arg2));
- self->last = timestamp;
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_objcpu.d b/cddl/contrib/dtracetoolkit/JavaScript/js_objcpu.d
deleted file mode 100755
index 6611f59..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_objcpu.d
+++ /dev/null
@@ -1,61 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_objcpu.d - measure JavaScript object creation on-CPU time using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_objcpu.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers running on the system
- * with JavaScript provider support.
- *
- * USAGE: js_objcpu.d # hit Ctrl-C to end
- *
- * Class names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::object-create-start
-{
- self->vstart = vtimestamp;
-}
-
-javascript*:::object-create-done
-/self->vstart/
-{
- this->oncpu = vtimestamp - self->vstart;
- @total = sum(this->oncpu);
- @dist[copyinstr(arg1)] = quantize(this->oncpu / 1000);
- self->vstart = 0;
-}
-
-dtrace:::END
-{
- normalize(@total, 1000000);
- printa("Total object creation on-CPU time (ms): %@d\n\n", @total);
- printf("Object creation on-CPU time distributions (us),\n");
- printa(@dist);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_objgc.d b/cddl/contrib/dtracetoolkit/JavaScript/js_objgc.d
deleted file mode 100755
index 575b295..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_objgc.d
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_objgc.d - trace JavaScript Object GC using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_objgc.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all running browers on the system
- * which support the JavaScript DTrace provider.
- *
- * USAGE: js_objgc.d # hit Ctrl-C to end
- *
- * FIELDS:
- * FILE Filename that contained the function
- * CLASS Class to which this new object belongs
- * TOTAL Object entropy (positive == uncollected)
- *
- * This script provides information on which objects are not being garbage
- * collected, an issue which causes the browser to steadily leak memory.
- * We trace object creation (+1) and destruction (-1), and provide a
- * summary each second of the running tally of the object class and
- * originating filename. If over the period of several minutes an object
- * type is still steadily increasing, then that would be of interest.
- * Be patient, depending on the rate of object creation it can take over
- * ten minutes for garbage collect to kick in.
- *
- * NOTES:
- * - it is possible that you will see negative entropy. That happens
- * when you begin tracing after some objects have already been created,
- * and then trace their destruction.
- * - there are other Things that GC handles, other than Objects; extra
- * probes can be added to trace them, should the need arise.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-/* if you get dynvardrops, increase this, */
-#pragma D option dynvarsize=32m
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::object-create
-/arg2/
-{
- this->file = basename(copyinstr(arg0));
- @objs[this->file, copyinstr(arg1)] = sum(1);
- filename[arg2] = this->file;
-}
-
-javascript*:::object-finalize
-/filename[arg2] == NULL/
-{
- @objs["<missed>", copyinstr(arg1)] = sum(-1);
-}
-
-javascript*:::object-finalize
-/filename[arg2] != NULL/
-{
- @objs[filename[arg2], copyinstr(arg1)] = sum(-1);
- filename[arg2] = 0;
-}
-
-profile:::tick-1sec,
-dtrace:::END
-{
- printf("\n %-24s %8s %-20s %23Y\n", "FILE", "TOTAL", "CLASS",
- walltimestamp);
- printa(" %-24.24s %@8d %s\n", @objs);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_objnew.d b/cddl/contrib/dtracetoolkit/JavaScript/js_objnew.d
deleted file mode 100755
index f57c7b5..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_objnew.d
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_objnew.d - count JavaScript object creation using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_objnew.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers running on the system
- * with JavaScript provider support.
- *
- * USAGE: js_objnew.d # hit Ctrl-C to end
- *
- * FIELDS:
- * FILE Filename of the JavaScript program
- * CLASS Class of new object
- * COUNT Number of object creations during tracing
- *
- * Filename and class names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::object-create-done
-{
- @objs[basename(copyinstr(arg0)), copyinstr(arg1)] = count();
-}
-
-dtrace:::END
-{
- printf(" %-24s %-36s %8s\n", "FILE", "CLASS", "COUNT");
- printa(" %-24.24s %-36s %@8d\n", @objs);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_stat.d b/cddl/contrib/dtracetoolkit/JavaScript/js_stat.d
deleted file mode 100755
index 3237762..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_stat.d
+++ /dev/null
@@ -1,120 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_stat.d - JavaScript operation stats using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_stat.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces activity from all browsers on the system that are
- * running with JavaScript provider support.
- *
- * USAGE: js_stat.d [interval [count]]
- *
- * FIELDS:
- * EXEC/s JavaScript programs executed per second
- * FUNCS/s Functions called, per second
- * OBJNEW/s Objects created, per second
- * OBJFRE/s Objects freed (finalize), per second
- *
- * The numbers are counts for the interval specified. The default interval
- * is 1 second.
- *
- * Filename and function names are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-#pragma D option defaultargs
-
-inline int SCREEN = 21;
-
-dtrace:::BEGIN
-{
- execs = funcs = objnew = objfree = 0;
- lines = SCREEN + 1;
- interval = $1 ? $1 : 1;
- counts = $2 ? $2 : -1;
- secs = interval;
- first = 1;
-}
-
-profile:::tick-1sec
-{
- secs--;
-}
-
-/*
- * Print Header
- */
-dtrace:::BEGIN,
-profile:::tick-1sec
-/first || (secs == 0 && lines > SCREEN)/
-{
- printf("%-20s %8s %8s %8s %8s\n", "TIME", "EXEC/s", "FUNC/s",
- "OBJNEW/s", "OBJFRE/s");
- lines = 0;
- first = 0;
-}
-
-/*
- * Tally Data
- */
-javascript*:::execute-start
-{
- execs++;
-}
-
-javascript*:::function-entry
-{
- funcs++;
-}
-
-javascript*:::object-create-start
-{
- objnew++;
-}
-
-javascript*:::object-finalize
-{
- objfree++;
-}
-
-/*
- * Print Output
- */
-profile:::tick-1sec
-/secs == 0/
-{
- printf("%-20Y %8d %8d %8d %8d\n", walltimestamp, execs / interval,
- funcs / interval, objnew / interval, objfree / interval);
- execs = funcs = objnew = objfree = 0;
- secs = interval;
- lines++;
- counts--;
-}
-
-/*
- * End
- */
-profile:::tick-1sec
-/counts == 0/
-{
- exit(0);
-}
diff --git a/cddl/contrib/dtracetoolkit/JavaScript/js_who.d b/cddl/contrib/dtracetoolkit/JavaScript/js_who.d
deleted file mode 100755
index f320b48..0000000
--- a/cddl/contrib/dtracetoolkit/JavaScript/js_who.d
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/sbin/dtrace -Zs
-/*
- * js_who.d - trace JavaScript function execution by process using DTrace.
- * Written for the JavaScript DTrace provider.
- *
- * $Id: js_who.d 63 2007-10-04 04:34:38Z brendan $
- *
- * This traces JavaScript activity from all browsers on the system that are
- * running with JavaScript provider support.
- *
- * USAGE: js_who.d # hit Ctrl-C to end
- *
- * FIELDS:
- * PID Process ID of JavaScript
- * UID User ID of the owner
- * FUNCS Number of function calls
- * FILE Pathname of the JavaScript program
- *
- * Filenames are printed if available.
- *
- * COPYRIGHT: Copyright (c) 2007 Brendan Gregg.
- *
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at Docs/cddl1.txt
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * CDDL HEADER END
- *
- * 09-Sep-2007 Brendan Gregg Created this.
- */
-
-#pragma D option quiet
-
-dtrace:::BEGIN
-{
- printf("Tracing... Hit Ctrl-C to end.\n");
-}
-
-javascript*:::function-entry
-{
- @funcs[pid, uid, copyinstr(arg0)] = count();
-}
-
-dtrace:::END
-{
- printf(" %6s %6s %6s %s\n", "PID", "UID", "FUNCS", "FILE");
- printa(" %6d %6d %@6d %s\n", @funcs);
-}
OpenPOWER on IntegriCloud