Save previous session's debug syslog during boot

Add boot loader debug menu option "Save syslog from previous session
during boot". If enabled (defaults to true), the previous session's
debug syslog data is copy to a separate buffer and passed to the
kernel, which writes it back to the file /var/log/previous_syslog.
As long as Haiku still boots, this should now be the most convenient way
to retrieve the output from a kernel crash.
This commit is contained in:
Ingo Weinhold
2014-01-19 10:46:00 +01:00
parent be5e6fefdf
commit 8540ec2446
5 changed files with 102 additions and 12 deletions
+13
View File
@@ -82,8 +82,21 @@ typedef struct kernel_args {
FixedWidthPointer<void> edid_info;
FixedWidthPointer<void> debug_output;
// If keep_debug_output_buffer, points to a ring_buffer, else to a
// simple flat buffer. In either case it stores the debug output from
// the boot loader.
FixedWidthPointer<void> previous_debug_output;
// A flat pointer to a buffer containing the debug output from the
// previous session. May be NULL.
uint32 debug_size;
// If keep_debug_output_buffer, the size of the ring buffer, otherwise
// the size of the flat buffer debug_output points to.
uint32 previous_debug_size;
// The size of the buffer previous_debug_output points to. Used as a
// boolean indicator whether to save the previous session's debug output
// until initialized for the kernel.
bool keep_debug_output_buffer;
// If true, debug_output is a ring buffer, otherwise a flat buffer.
platform_kernel_args platform_args;
arch_kernel_args arch_args;