You've already forked linux-packaging-mono
Imported Upstream version 6.6.0.89
Former-commit-id: b39a328747c2f3414dc52e009fb6f0aa80ca2492
This commit is contained in:
parent
cf815e07e0
commit
95fdb59ea6
@@ -1,3 +1,3 @@
|
||||
SUBDIRS = locale-builder sgen pedump
|
||||
SUBDIRS = locale-builder sgen pedump mono-hang-watchdog
|
||||
|
||||
|
||||
|
||||
@@ -91,7 +91,11 @@ target_triplet = @target@
|
||||
subdir = tools
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/apple-target.m4 \
|
||||
$(top_srcdir)/m4/ax_append_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_append_link_flags.m4 \
|
||||
$(top_srcdir)/m4/ax_check_compile_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_check_link_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_require_defined.m4 \
|
||||
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
|
||||
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
|
||||
@@ -299,7 +303,6 @@ MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MONO_CORLIB_VERSION = @MONO_CORLIB_VERSION@
|
||||
MONO_CXXLD = @MONO_CXXLD@
|
||||
MONO_DL_NEED_USCORE = @MONO_DL_NEED_USCORE@
|
||||
MONO_JEMALLOC_ASSERT = @MONO_JEMALLOC_ASSERT@
|
||||
MONO_JEMALLOC_DEFAULT = @MONO_JEMALLOC_DEFAULT@
|
||||
MONO_JEMALLOC_ENABLED = @MONO_JEMALLOC_ENABLED@
|
||||
@@ -333,6 +336,7 @@ NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
ODBC = @ODBC@
|
||||
ORDER = @ORDER@
|
||||
OS = @OS@
|
||||
OTOOL = @OTOOL@
|
||||
@@ -377,6 +381,7 @@ XGETTEXT_015 = @XGETTEXT_015@
|
||||
XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
|
||||
XINERAMA = @XINERAMA@
|
||||
XMKMF = @XMKMF@
|
||||
ZLIB_CFLAGS = @ZLIB_CFLAGS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
@@ -457,7 +462,7 @@ target_vendor = @target_vendor@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
SUBDIRS = locale-builder sgen pedump
|
||||
SUBDIRS = locale-builder sgen pedump mono-hang-watchdog
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
|
||||
@@ -91,7 +91,11 @@ target_triplet = @target@
|
||||
subdir = tools/locale-builder
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/apple-target.m4 \
|
||||
$(top_srcdir)/m4/ax_append_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_append_link_flags.m4 \
|
||||
$(top_srcdir)/m4/ax_check_compile_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_check_link_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_require_defined.m4 \
|
||||
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
|
||||
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
|
||||
@@ -240,7 +244,6 @@ MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MONO_CORLIB_VERSION = @MONO_CORLIB_VERSION@
|
||||
MONO_CXXLD = @MONO_CXXLD@
|
||||
MONO_DL_NEED_USCORE = @MONO_DL_NEED_USCORE@
|
||||
MONO_JEMALLOC_ASSERT = @MONO_JEMALLOC_ASSERT@
|
||||
MONO_JEMALLOC_DEFAULT = @MONO_JEMALLOC_DEFAULT@
|
||||
MONO_JEMALLOC_ENABLED = @MONO_JEMALLOC_ENABLED@
|
||||
@@ -274,6 +277,7 @@ NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
ODBC = @ODBC@
|
||||
ORDER = @ORDER@
|
||||
OS = @OS@
|
||||
OTOOL = @OTOOL@
|
||||
@@ -318,6 +322,7 @@ XGETTEXT_015 = @XGETTEXT_015@
|
||||
XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
|
||||
XINERAMA = @XINERAMA@
|
||||
XMKMF = @XMKMF@
|
||||
ZLIB_CFLAGS = @ZLIB_CFLAGS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
|
||||
12
tools/mono-hang-watchdog/Makefile.am
Normal file
12
tools/mono-hang-watchdog/Makefile.am
Normal file
@@ -0,0 +1,12 @@
|
||||
|
||||
AM_CPPFLAGS = $(SHARED_CFLAGS)
|
||||
|
||||
if DISABLE_EXECUTABLES
|
||||
bin_PROGRAMS =
|
||||
else
|
||||
bin_PROGRAMS = mono-hang-watchdog
|
||||
endif
|
||||
|
||||
CFLAGS = $(filter-out @CXX_REMOVE_CFLAGS@, @CFLAGS@)
|
||||
|
||||
mono_hang_watchdog_SOURCES = mono-hang-watchdog.c
|
||||
801
tools/mono-hang-watchdog/Makefile.in
Normal file
801
tools/mono-hang-watchdog/Makefile.in
Normal file
File diff suppressed because it is too large
Load Diff
51
tools/mono-hang-watchdog/mono-hang-watchdog.c
Normal file
51
tools/mono-hang-watchdog/mono-hang-watchdog.c
Normal file
@@ -0,0 +1,51 @@
|
||||
/* Given a external process' id as argument, the program waits for a set timeout then attempts to abort that process */
|
||||
/* Used by the Mono runtime's crash reporting. */
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#ifdef HAVE_SIGNAL_H
|
||||
#include <signal.h>
|
||||
#endif
|
||||
|
||||
#define TIMEOUT 30
|
||||
|
||||
static char* program_name;
|
||||
void program_exit (int exit_code, const char* message);
|
||||
|
||||
int main (int argc, char* argv[])
|
||||
{
|
||||
program_name = argv [0];
|
||||
if (argc != 2)
|
||||
program_exit (1, "Please provide one argument (pid)");
|
||||
errno = 0;
|
||||
pid_t pid = (pid_t)strtoul (argv [1], NULL, 10);
|
||||
if (errno)
|
||||
program_exit (2, "Invalid pid");
|
||||
|
||||
sleep (TIMEOUT);
|
||||
|
||||
/* if we survived the timeout, we consider the Mono process as hung */
|
||||
|
||||
#ifndef HAVE_KILL
|
||||
/* just inform the user */
|
||||
printf ("Mono process with pid %llu appears to be hung", (uint64_t)pid);
|
||||
return 0;
|
||||
#else
|
||||
printf ("Mono process hang detected, sending kill signal to pid %llu\n", (uint64_t)pid);
|
||||
return kill (pid, SIGKILL);
|
||||
#endif
|
||||
}
|
||||
|
||||
void program_exit (int exit_code, const char* message)
|
||||
{
|
||||
if (message)
|
||||
printf ("%s\n", message);
|
||||
printf ("Usage: '%s [pid]'\t\t[pid]: The id for the Mono process\n", program_name);
|
||||
exit (exit_code);
|
||||
}
|
||||
@@ -94,7 +94,11 @@ target_triplet = @target@
|
||||
subdir = tools/pedump
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/apple-target.m4 \
|
||||
$(top_srcdir)/m4/ax_append_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_append_link_flags.m4 \
|
||||
$(top_srcdir)/m4/ax_check_compile_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_check_link_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_require_defined.m4 \
|
||||
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
|
||||
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
|
||||
@@ -304,7 +308,6 @@ MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MONO_CORLIB_VERSION = @MONO_CORLIB_VERSION@
|
||||
MONO_CXXLD = @MONO_CXXLD@
|
||||
MONO_DL_NEED_USCORE = @MONO_DL_NEED_USCORE@
|
||||
MONO_JEMALLOC_ASSERT = @MONO_JEMALLOC_ASSERT@
|
||||
MONO_JEMALLOC_DEFAULT = @MONO_JEMALLOC_DEFAULT@
|
||||
MONO_JEMALLOC_ENABLED = @MONO_JEMALLOC_ENABLED@
|
||||
@@ -338,6 +341,7 @@ NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
ODBC = @ODBC@
|
||||
ORDER = @ORDER@
|
||||
OS = @OS@
|
||||
OTOOL = @OTOOL@
|
||||
@@ -382,6 +386,7 @@ XGETTEXT_015 = @XGETTEXT_015@
|
||||
XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
|
||||
XINERAMA = @XINERAMA@
|
||||
XMKMF = @XMKMF@
|
||||
ZLIB_CFLAGS = @ZLIB_CFLAGS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
|
||||
@@ -48,7 +48,7 @@ static char *assembly_directory[2];
|
||||
|
||||
static MonoAssembly *pedump_preload (MonoAssemblyName *aname, gchar **assemblies_path, gpointer user_data);
|
||||
static void pedump_assembly_load_hook (MonoAssembly *assembly, gpointer user_data);
|
||||
static MonoAssembly *pedump_assembly_search_hook (MonoAssemblyName *aname, gpointer user_data);
|
||||
static MonoAssembly *pedump_assembly_search_hook (MonoAssemblyLoadContext *alc, MonoAssembly *requesting, MonoAssemblyName *aname, gboolean refonly, gboolean postload, gpointer user_data, MonoError *error);
|
||||
|
||||
/* unused
|
||||
static void
|
||||
@@ -432,7 +432,7 @@ verify_image_file (const char *fname)
|
||||
int i, count = 0;
|
||||
|
||||
if (!strstr (fname, "mscorlib.dll")) {
|
||||
image = mono_image_open_raw (fname, &status);
|
||||
image = mono_image_open_raw (mono_domain_default_alc (mono_get_root_domain ()), fname, &status);
|
||||
if (!image) {
|
||||
printf ("Could not open %s\n", fname);
|
||||
return 1;
|
||||
@@ -468,7 +468,7 @@ verify_image_file (const char *fname)
|
||||
|
||||
/*Finish initializing the runtime*/
|
||||
mono_install_assembly_load_hook (pedump_assembly_load_hook, NULL);
|
||||
mono_install_assembly_search_hook (pedump_assembly_search_hook, NULL);
|
||||
mono_install_assembly_search_hook_v2 (pedump_assembly_search_hook, NULL, FALSE, FALSE);
|
||||
|
||||
mono_init_version ("pedump", image->version);
|
||||
|
||||
@@ -479,7 +479,7 @@ verify_image_file (const char *fname)
|
||||
} else {
|
||||
/*Finish initializing the runtime*/
|
||||
mono_install_assembly_load_hook (pedump_assembly_load_hook, NULL);
|
||||
mono_install_assembly_search_hook (pedump_assembly_search_hook, NULL);
|
||||
mono_install_assembly_search_hook_v2 (pedump_assembly_search_hook, NULL, FALSE, FALSE);
|
||||
|
||||
mono_init_version ("pedump", NULL);
|
||||
|
||||
@@ -652,7 +652,8 @@ pedump_assembly_load_hook (MonoAssembly *assembly, gpointer user_data)
|
||||
}
|
||||
|
||||
static MonoAssembly *
|
||||
pedump_assembly_search_hook (MonoAssemblyName *aname, gpointer user_data)
|
||||
pedump_assembly_search_hook (MonoAssemblyLoadContext *alc, MonoAssembly *requesting, MonoAssemblyName *aname,
|
||||
gboolean refonly, gboolean postload, gpointer user_data, MonoError *error)
|
||||
{
|
||||
GList *tmp;
|
||||
|
||||
|
||||
@@ -94,7 +94,11 @@ bin_PROGRAMS = sgen-grep-binprot$(EXEEXT)
|
||||
subdir = tools/sgen
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/apple-target.m4 \
|
||||
$(top_srcdir)/m4/ax_append_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_append_link_flags.m4 \
|
||||
$(top_srcdir)/m4/ax_check_compile_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_check_link_flag.m4 \
|
||||
$(top_srcdir)/m4/ax_require_defined.m4 \
|
||||
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
|
||||
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
|
||||
@@ -329,7 +333,6 @@ MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
MONO_CORLIB_VERSION = @MONO_CORLIB_VERSION@
|
||||
MONO_CXXLD = @MONO_CXXLD@
|
||||
MONO_DL_NEED_USCORE = @MONO_DL_NEED_USCORE@
|
||||
MONO_JEMALLOC_ASSERT = @MONO_JEMALLOC_ASSERT@
|
||||
MONO_JEMALLOC_DEFAULT = @MONO_JEMALLOC_DEFAULT@
|
||||
MONO_JEMALLOC_ENABLED = @MONO_JEMALLOC_ENABLED@
|
||||
@@ -363,6 +366,7 @@ NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
ODBC = @ODBC@
|
||||
ORDER = @ORDER@
|
||||
OS = @OS@
|
||||
OTOOL = @OTOOL@
|
||||
@@ -407,6 +411,7 @@ XGETTEXT_015 = @XGETTEXT_015@
|
||||
XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
|
||||
XINERAMA = @XINERAMA@
|
||||
XMKMF = @XMKMF@
|
||||
ZLIB_CFLAGS = @ZLIB_CFLAGS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
|
||||
Reference in New Issue
Block a user