Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/kern_shutdown.c
Show All 12 Lines | |||||
SYSCTL_INT(_debug_kassert, OID_AUTO, suppress_in_panic, KASSERT_RWTUN, | SYSCTL_INT(_debug_kassert, OID_AUTO, suppress_in_panic, KASSERT_RWTUN, | ||||
&kassert_suppress_in_panic, 0, | &kassert_suppress_in_panic, 0, | ||||
"KASSERTs will be suppressed while handling a panic"); | "KASSERTs will be suppressed while handling a panic"); | ||||
#undef KASSERT_RWTUN | #undef KASSERT_RWTUN | ||||
static int kassert_sysctl_kassert(SYSCTL_HANDLER_ARGS); | static int kassert_sysctl_kassert(SYSCTL_HANDLER_ARGS); | ||||
SYSCTL_PROC(_debug_kassert, OID_AUTO, kassert, | SYSCTL_PROC(_debug_kassert, OID_AUTO, kassert, | ||||
CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_SECURE, NULL, 0, | CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_SECURE | CTLFLAG_NEEDGIANT, | ||||
kassert_sysctl_kassert, "I", "set to trigger a test kassert"); | NULL, 0, kassert_sysctl_kassert, "I", | ||||
"set to trigger a test kassert"); | |||||
static int | static int | ||||
kassert_sysctl_kassert(SYSCTL_HANDLER_ARGS) | kassert_sysctl_kassert(SYSCTL_HANDLER_ARGS) | ||||
{ | { | ||||
int error, i; | int error, i; | ||||
error = sysctl_wire_old_buffer(req, sizeof(int)); | error = sysctl_wire_old_buffer(req, sizeof(int)); | ||||
if (error == 0) { | if (error == 0) { | ||||
Show All 24 Lines | |||||
sbuf_cat(&sb, di->di_devname); | sbuf_cat(&sb, di->di_devname); | ||||
} | } | ||||
mtx_unlock(&dumpconf_list_lk); | mtx_unlock(&dumpconf_list_lk); | ||||
error = sbuf_finish(&sb); | error = sbuf_finish(&sb); | ||||
sbuf_delete(&sb); | sbuf_delete(&sb); | ||||
return (error); | return (error); | ||||
} | } | ||||
SYSCTL_PROC(_kern_shutdown, OID_AUTO, dumpdevname, CTLTYPE_STRING | CTLFLAG_RD, | SYSCTL_PROC(_kern_shutdown, OID_AUTO, dumpdevname, | ||||
CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_NEEDGIANT, | |||||
&dumper_configs, 0, dumpdevname_sysctl_handler, "A", | &dumper_configs, 0, dumpdevname_sysctl_handler, "A", | ||||
"Device(s) for kernel dumps"); | "Device(s) for kernel dumps"); | ||||
static int _dump_append(struct dumperinfo *di, void *virtual, | static int _dump_append(struct dumperinfo *di, void *virtual, | ||||
vm_offset_t physical, size_t length); | vm_offset_t physical, size_t length); | ||||
#ifdef EKCD | #ifdef EKCD | ||||
static struct kerneldumpcrypto * | static struct kerneldumpcrypto * | ||||
Show All 12 Lines |