Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1493809

[RFC PATCH v1 0/2] printk: Shared kernel logging

From Sean Hudson <sean_hudson@mentor.com>
Newsgroups linux.kernel
Subject [RFC PATCH v1 0/2] printk: Shared kernel logging
Date 2016-09-30 03:00 +0200
Message-ID <smUlb-38t-9@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


This patch set is based on Linus' v4.8-rc8 tag.

This debug feature allows the kernel to use an external buffer and control
block for kernel log messages. The feature is controlled by an optional
command line parameter. The existing buffer and control block can contain
existing log messages from previous boot cycles and/or the bootloader. The
command line parameter was chosen for flexibility, cross arch portability,
and the ability to dynamically enable/disable this feature. The parameter
specifies the address of a control block used to replace the default log
buffer. Existing bootloader and kernel log messages are kept, in order,
inside the new buffer. After a boot that preserves the buffer contents, a
bootloader can display both kernel and bootloader log entries from multiple,
previous boots. It also allows the kernel to display bootloader log entries
along with its own messages.

This feature is intended for debug purposes and has no effect unless the
command line parameter is specified. Further, it validates the passed
control block carefully and if any checks fail, it falls back to the default
behaviour. As such, it can be left enabled by default.

Memory Reservation

This feature expects the bootloader to reserve/preserve the shared buffer
memory. This reservation needs to prevent the kernel from overwriting the
external log control block and log entries. In my testing, I've used the
'fdt' commands in uboot to dynamically inject reserved memory regions via
the DT to the kernel.

Sean Hudson (2):
  printk: collect offsets into replaceable structure
  printk: external log buffer (CONFIG_LOGBUFFER)

 init/Kconfig           |  12 +
 init/main.c            |   2 +
 kernel/printk/printk.c | 598 +++++++++++++++++++++++++++++++++++--------------
 3 files changed, 445 insertions(+), 167 deletions(-)

-- 
1.9.1

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[RFC PATCH v1 0/2] printk: Shared kernel logging Sean Hudson <sean_hudson@mentor.com> - 2016-09-30 03:00 +0200
  [RFC PATCH v1 1/2] printk: collect offsets into replaceable structure Sean Hudson <sean_hudson@mentor.com> - 2016-09-30 03:00 +0200
  [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Sean Hudson <sean_hudson@mentor.com> - 2016-09-30 03:00 +0200
    Re: [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Petr Mladek <pmladek@suse.com> - 2016-09-30 14:40 +0200
      Re: [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Sean Hudson <darknighte@darknighte.com> - 2016-10-01 06:10 +0200
        Re: [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Petr Mladek <pmladek@suse.com> - 2016-10-04 13:30 +0200
          Re: [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Sean Hudson <darknighte@darknighte.com> - 2016-10-04 20:00 +0200
            Re: [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Petr Mladek <pmladek@suse.com> - 2016-10-05 14:50 +0200
              Re: [RFC PATCH v1 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Sean Hudson <darknighte@darknighte.com> - 2016-10-12 03:20 +0200
  Re: [RFC PATCH v1 0/2] printk: Shared kernel logging Kees Cook <keescook@chromium.org> - 2016-09-30 03:40 +0200
    Re: [RFC PATCH v1 0/2] printk: Shared kernel logging Sean Hudson <darknighte@darknighte.com> - 2016-10-01 04:00 +0200
      Re: [RFC PATCH v1 0/2] printk: Shared kernel logging Kees Cook <keescook@chromium.org> - 2016-10-01 04:50 +0200
  [RFC PATCH v2 0/2] printk: Shared kernel logging Sean Hudson <sean_hudson@mentor.com> - 2016-10-04 23:10 +0200
    [RFC PATCH v2 1/2] printk: collect offsets into replaceable structure Sean Hudson <sean_hudson@mentor.com> - 2016-10-04 23:10 +0200
    [RFC PATCH v2 2/2] printk: external log buffer (CONFIG_LOGBUFFER) Sean Hudson <sean_hudson@mentor.com> - 2016-10-04 23:20 +0200

csiph-web