Page MenuHomeFreeBSD

D58412.id.diff
No OneTemporary

D58412.id.diff

diff --git a/usr.bin/kdump/kdump.c b/usr.bin/kdump/kdump.c
--- a/usr.bin/kdump/kdump.c
+++ b/usr.bin/kdump/kdump.c
@@ -2447,13 +2447,32 @@
#include <exterr_cat_filenames.h>
};
+static const char *
+cat_to_file_prefix(int category)
+{
+ switch (EXTERR_CAT_SRC(category)) {
+ case EXTERR_CAT_SRC_KERN_STATIC:
+ return ("sys/");
+ default:
+ return ("");
+ }
+}
+
static const char *
cat_to_filename(int category)
{
- if (category < 0 || (unsigned)category >= nitems(cat_to_filenames) ||
- cat_to_filenames[category] == NULL)
+ switch (EXTERR_CAT_SRC(category)) {
+ case EXTERR_CAT_SRC_KERN_STATIC:
+ if (category < 0 ||
+ (unsigned)category >= nitems(cat_to_filenames) ||
+ cat_to_filenames[category] == NULL)
+ return ("unknown");
+ return (cat_to_filenames[category]);
+ case EXTERR_CAT_SRC_KERN_DYNAMIC:
+ return ("kern:dynamic");
+ default:
return ("unknown");
- return (cat_to_filenames[category]);
+ }
}
static void
@@ -2464,9 +2483,10 @@
ue = &ke->ue;
asprintf(&msg, ue->msg, (uintmax_t)ue->p1, (uintmax_t)ue->p2);
- printf("{ errno %d sys/%s:%u \"%s\" (category %u p1 %#jx p2 %#jx) }\n",
- ue->error, cat_to_filename(ue->cat), ue->src_line, msg,
- ue->cat, (uintmax_t)ue->p1, (uintmax_t)ue->p2);
+ printf("{ errno %d %s%s:%u \"%s\" (category %u p1 %#jx p2 %#jx) }\n",
+ ue->error, cat_to_file_prefix(ue->cat), cat_to_filename(ue->cat),
+ ue->src_line, msg, ue->cat,
+ (uintmax_t)ue->p1, (uintmax_t)ue->p2);
free(msg);
}

File Metadata

Mime Type
text/plain
Expires
Fri, Jul 31, 11:32 AM (7 h, 18 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35471574
Default Alt Text
D58412.id.diff (1 KB)

Event Timeline