diff options
Diffstat (limited to 'java/jmp/files/patch-jmp.c')
-rw-r--r-- | java/jmp/files/patch-jmp.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/java/jmp/files/patch-jmp.c b/java/jmp/files/patch-jmp.c new file mode 100644 index 000000000000..888f0a5dfd48 --- /dev/null +++ b/java/jmp/files/patch-jmp.c @@ -0,0 +1,45 @@ +$FreeBSD$ + +--- jmp.c Tue May 13 23:17:03 2003 ++++ jmp.c Tue May 13 23:17:47 2003 +@@ -1548,10 +1548,11 @@ + free (cf); + } + +-void enable_method_events () { ++void enable_method_events_and_stacks (int get_stacks) { + /* Ok, the thread stacks are bogous, clear them all and try to get + * real stacks, timing will be a bit bogous, but not to much... + */ ++ if (get_stacks) { + jmphash_lock (threads); + jmphash_lock (methods); + jvmpi->DisableGC (); +@@ -1559,6 +1560,7 @@ + jvmpi->EnableGC (); + jmphash_unlock (methods); + jmphash_unlock (threads); ++ } + + method_profiling = 1; + /* +@@ -1572,6 +1574,10 @@ + jvmpi->EnableEvent (JVMPI_EVENT_METHOD_EXIT, NULL); + } + ++void enable_method_events () { ++ enable_method_events_and_stacks (1); ++} ++ + static void enable_dump_events () { + dump_enabled = 1; + jvmpi->EnableEvent (JVMPI_EVENT_DATA_DUMP_REQUEST, NULL); +@@ -1603,7 +1609,7 @@ + enable_object_events (); + enable_thread_events (); + if (method_profiling) +- enable_method_events (); ++ enable_method_events_and_stacks (0); + if (dump_enabled) + enable_dump_events (); + if (monitor_profiling) |