|
@@ -136,7 +136,7 @@ void panic(const char *fmt, ...)
|
|
|
{
|
|
|
static char buf[1024];
|
|
|
va_list args;
|
|
|
- long i, i_next = 0;
|
|
|
+ long i, i_next = 0, len;
|
|
|
int state = 0;
|
|
|
int old_cpu, this_cpu;
|
|
|
bool _crash_kexec_post_notifiers = crash_kexec_post_notifiers;
|
|
@@ -173,8 +173,12 @@ void panic(const char *fmt, ...)
|
|
|
console_verbose();
|
|
|
bust_spinlocks(1);
|
|
|
va_start(args, fmt);
|
|
|
- vsnprintf(buf, sizeof(buf), fmt, args);
|
|
|
+ len = vscnprintf(buf, sizeof(buf), fmt, args);
|
|
|
va_end(args);
|
|
|
+
|
|
|
+ if (len && buf[len - 1] == '\n')
|
|
|
+ buf[len - 1] = '\0';
|
|
|
+
|
|
|
pr_emerg("Kernel panic - not syncing: %s\n", buf);
|
|
|
#ifdef CONFIG_DEBUG_BUGVERBOSE
|
|
|
/*
|