diff options
-rw-r--r-- | devel/gdb/Makefile | 2 | ||||
-rw-r--r-- | devel/gdb/files/kgdb/amd64fbsd-kern.c | 2 | ||||
-rw-r--r-- | devel/gdb/files/kgdb/fbsd-kld.c | 3 | ||||
-rw-r--r-- | devel/gdb/files/kgdb/i386fbsd-kern.c | 4 | ||||
-rw-r--r-- | devel/gdb/files/kgdb/kgdb-main.c | 30 | ||||
-rw-r--r-- | devel/gdb/files/kgdb/ppcfbsd-kern.c | 2 | ||||
-rw-r--r-- | devel/gdb/files/kgdb/sparc64fbsd-kern.c | 2 |
7 files changed, 18 insertions, 27 deletions
diff --git a/devel/gdb/Makefile b/devel/gdb/Makefile index f148d12c0610..fc0cb6fd85b1 100644 --- a/devel/gdb/Makefile +++ b/devel/gdb/Makefile @@ -3,7 +3,7 @@ PORTNAME= gdb PORTVERSION= 7.10 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= devel MASTER_SITES= GNU diff --git a/devel/gdb/files/kgdb/amd64fbsd-kern.c b/devel/gdb/files/kgdb/amd64fbsd-kern.c index 5c9355a555a9..162fdb0e7e7a 100644 --- a/devel/gdb/files/kgdb/amd64fbsd-kern.c +++ b/devel/gdb/files/kgdb/amd64fbsd-kern.c @@ -210,7 +210,7 @@ amd64fbsd_trapframe_sniffer (const struct frame_unwind *self, } static const struct frame_unwind amd64fbsd_trapframe_unwind = { - NORMAL_FRAME, + SIGTRAMP_FRAME, default_frame_unwind_stop_reason, amd64fbsd_trapframe_this_id, amd64fbsd_trapframe_prev_register, diff --git a/devel/gdb/files/kgdb/fbsd-kld.c b/devel/gdb/files/kgdb/fbsd-kld.c index f5c1a3c52f1c..e8a23d5ecd6a 100644 --- a/devel/gdb/files/kgdb/fbsd-kld.c +++ b/devel/gdb/files/kgdb/fbsd-kld.c @@ -386,9 +386,6 @@ kld_solib_create_inferior_hook (int from_tty) { struct kld_info *info; - if (!have_partial_symbols()) - return; - info = get_kld_info(); /* diff --git a/devel/gdb/files/kgdb/i386fbsd-kern.c b/devel/gdb/files/kgdb/i386fbsd-kern.c index a621f54c5004..37e658fcf7f8 100644 --- a/devel/gdb/files/kgdb/i386fbsd-kern.c +++ b/devel/gdb/files/kgdb/i386fbsd-kern.c @@ -277,7 +277,7 @@ i386fbsd_dblfault_sniffer (const struct frame_unwind *self, } static const struct frame_unwind i386fbsd_dblfault_unwind = { - NORMAL_FRAME, + SIGTRAMP_FRAME, default_frame_unwind_stop_reason, i386fbsd_dblfault_this_id, i386fbsd_dblfault_prev_register, @@ -436,7 +436,7 @@ i386fbsd_trapframe_sniffer (const struct frame_unwind *self, } static const struct frame_unwind i386fbsd_trapframe_unwind = { - NORMAL_FRAME, + SIGTRAMP_FRAME, default_frame_unwind_stop_reason, i386fbsd_trapframe_this_id, i386fbsd_trapframe_prev_register, diff --git a/devel/gdb/files/kgdb/kgdb-main.c b/devel/gdb/files/kgdb/kgdb-main.c index a99fc57971d7..ef63f8062482 100644 --- a/devel/gdb/files/kgdb/kgdb-main.c +++ b/devel/gdb/files/kgdb/kgdb-main.c @@ -62,10 +62,10 @@ __FBSDID("$FreeBSD$"); #include "kgdb.h" -static int dumpnr; static int verbose; static char crashdir[PATH_MAX]; +static char *dumpnr; static char *kernel; static char *remote; static char *vmcore; @@ -96,7 +96,7 @@ usage(void) } static void -kernel_from_dumpnr(int nr) +kernel_from_dumpnr(const char *nr) { char line[PATH_MAX], path[PATH_MAX]; FILE *info; @@ -110,14 +110,14 @@ kernel_from_dumpnr(int nr) * subdirectory kernel.<nr> and called kernel. The latter allows us * to collect the modules in the same place. */ - snprintf(path, sizeof(path), "%s/kernel.%d", crashdir, nr); + snprintf(path, sizeof(path), "%s/kernel.%s", crashdir, nr); if (stat(path, &st) == 0) { if (S_ISREG(st.st_mode)) { kernel = strdup(path); return; } if (S_ISDIR(st.st_mode)) { - snprintf(path, sizeof(path), "%s/kernel.%d/kernel", + snprintf(path, sizeof(path), "%s/kernel.%s/kernel", crashdir, nr); if (stat(path, &st) == 0 && S_ISREG(st.st_mode)) { kernel = strdup(path); @@ -133,7 +133,7 @@ kernel_from_dumpnr(int nr) * with debugging info (called either kernel.full or kernel.debug). * If we have a debug kernel, use it. */ - snprintf(path, sizeof(path), "%s/info.%d", crashdir, nr); + snprintf(path, sizeof(path), "%s/info.%s", crashdir, nr); info = fopen(path, "r"); if (info == NULL) { warn("%s", path); @@ -223,7 +223,7 @@ main(int argc, char *argv[]) char *s; int a, ch; - dumpnr = -1; + dumpnr = NULL; strlcpy(crashdir, "/var/crash", sizeof(crashdir)); s = getenv("KGDB_CRASH_DIR"); @@ -284,13 +284,7 @@ main(int argc, char *argv[]) annotation_level = 1; break; case 'n': /* use dump with given number. */ - dumpnr = strtol(optarg, &s, 0); - if (dumpnr < 0 || *s != '\0') { - warnx("option %c: invalid kernel dump number", - optopt); - usage(); - /* NOTREACHED */ - } + dumpnr = optarg; break; case 'q': kgdb_quiet = 1; @@ -317,7 +311,7 @@ main(int argc, char *argv[]) } } - if (((vmcore != NULL) ? 1 : 0) + ((dumpnr >= 0) ? 1 : 0) + + if (((vmcore != NULL) ? 1 : 0) + ((dumpnr != NULL) ? 1 : 0) + ((remote != NULL) ? 1 : 0) > 1) { warnx("options -c, -n and -r are mutually exclusive"); usage(); @@ -330,13 +324,13 @@ main(int argc, char *argv[]) if (argc > optind) kernel = strdup(argv[optind++]); - if (argc > optind && (dumpnr >= 0 || remote != NULL)) { + if (argc > optind && (dumpnr != NULL || remote != NULL)) { warnx("options -n and -r do not take a core file. Ignored"); optind = argc; } - if (dumpnr >= 0) { - snprintf(path, sizeof(path), "%s/vmcore.%d", crashdir, dumpnr); + if (dumpnr != NULL) { + snprintf(path, sizeof(path), "%s/vmcore.%s", crashdir, dumpnr); if (stat(path, &st) == -1) err(1, "%s", path); if (!S_ISREG(st.st_mode)) @@ -372,7 +366,7 @@ main(int argc, char *argv[]) /* If we don't have a kernel image yet, try to find one. */ if (kernel == NULL) { - if (dumpnr >= 0) + if (dumpnr != NULL) kernel_from_dumpnr(dumpnr); if (kernel == NULL) diff --git a/devel/gdb/files/kgdb/ppcfbsd-kern.c b/devel/gdb/files/kgdb/ppcfbsd-kern.c index 30feafeb2bc6..f668c34b41eb 100644 --- a/devel/gdb/files/kgdb/ppcfbsd-kern.c +++ b/devel/gdb/files/kgdb/ppcfbsd-kern.c @@ -189,7 +189,7 @@ ppcfbsd_trapframe_sniffer (const struct frame_unwind *self, static const struct frame_unwind ppcfbsd_trapframe_unwind = { - NORMAL_FRAME, + SIGTRAMP_FRAME, default_frame_unwind_stop_reason, ppcfbsd_trapframe_this_id, ppcfbsd_trapframe_prev_register, diff --git a/devel/gdb/files/kgdb/sparc64fbsd-kern.c b/devel/gdb/files/kgdb/sparc64fbsd-kern.c index 57b0387a240c..bb3eb3515674 100644 --- a/devel/gdb/files/kgdb/sparc64fbsd-kern.c +++ b/devel/gdb/files/kgdb/sparc64fbsd-kern.c @@ -159,7 +159,7 @@ sparc64fbsd_trapframe_sniffer (const struct frame_unwind *self, static const struct frame_unwind sparc64fbsd_trapframe_unwind = { - NORMAL_FRAME, + SIGTRAMP_FRAME, default_frame_unwind_stop_reason, sparc64fbsd_trapframe_this_id, sparc64fbsd_trapframe_prev_register, |