summaryrefslogtreecommitdiff
path: root/www/squid3/files/extra-patch-gen-stacktrace
diff options
context:
space:
mode:
Diffstat (limited to 'www/squid3/files/extra-patch-gen-stacktrace')
-rw-r--r--www/squid3/files/extra-patch-gen-stacktrace62
1 files changed, 0 insertions, 62 deletions
diff --git a/www/squid3/files/extra-patch-gen-stacktrace b/www/squid3/files/extra-patch-gen-stacktrace
deleted file mode 100644
index e1631e239833..000000000000
--- a/www/squid3/files/extra-patch-gen-stacktrace
+++ /dev/null
@@ -1,62 +0,0 @@
---- src/tools.cc.orig 2014-10-31 12:36:43.000000000 +0300
-+++ src/tools.cc 2014-11-21 14:11:25.000000000 +0300
-@@ -71,6 +71,13 @@
- #include <errno.h>
- #endif
-
-+#if PRINT_STACK_TRACE
-+#ifdef __FreeBSD__
-+#define UNW_LOCAL_ONLY
-+#include <libunwind.h>
-+#endif
-+#endif
-+
- #define DEAD_MSG "\
- The Squid Cache (version %s) died.\n\
- \n\
-@@ -411,6 +418,45 @@
- }
-
- #endif
-+#ifdef __FreeBSD__
-+ do {
-+ unw_context_t unw_ctx;
-+ unw_cursor_t unw_cp;
-+ unw_word_t sp, ip, off;
-+ int rc = 0;
-+ char procname[256];
-+ size_t frame;
-+
-+ bzero((void *)&unw_ctx, sizeof(unw_ctx));
-+ bzero((void *)&unw_cp, sizeof(unw_cp));
-+
-+ if ((rc = unw_getcontext(&unw_ctx))) {
-+ fprintf(debug_log, "Failed to trace own stack: "
-+ "unw_context() said '%s'.\n", unw_strerror(rc));
-+ break;
-+ }
-+ if ((rc = unw_init_local(&unw_cp, &unw_ctx))) {
-+ fprintf(debug_log, "Failed to trace own stack: "
-+ "unw_init_local() said '%s'.\n", unw_strerror(rc));
-+ break;
-+ }
-+ frame = 0;
-+ fprintf(debug_log, "Backtrace follows (deepest frame first):\n");
-+ while ((rc = unw_step(&unw_cp)) > 0) {
-+ frame++;
-+ ip = 0; sp = 0;
-+ unw_get_reg(&unw_cp, UNW_REG_IP, &ip);
-+ unw_get_reg(&unw_cp, UNW_REG_SP, &sp);
-+ off = 0;
-+ rc = unw_get_proc_name(&unw_cp, procname, sizeof(procname), &off);
-+ if (rc)
-+ snprintf (procname, sizeof(procname), "[unknown]");
-+ fprintf(debug_log, "#%zd: %s + 0x%zx, ip = 0x%zx, sp = 0x%zx\n",
-+ frame, procname, (size_t)off, (size_t)ip, (size_t)sp);
-+ }
-+ fprintf(debug_log, "Use addr2line of similar to translate offsets to line information.\n");
-+ } while (0);
-+#endif /* __FreeBSD__ */
- #endif /* PRINT_STACK_TRACE */
-
- #if SA_RESETHAND == 0 && !_SQUID_WINDOWS_