OSDN Git Service

s390/debug: add early tracing support
authorPeter Oberparleiter <oberpar@linux.ibm.com>
Fri, 13 Aug 2021 13:05:04 +0000 (15:05 +0200)
committerHeiko Carstens <hca@linux.ibm.com>
Wed, 25 Aug 2021 09:03:35 +0000 (11:03 +0200)
commitd72541f945127b4873dace501406a1bc8cd8e1e9
tree30147ce80aca7a485b637f4f9935204142b5bf63
parent9372a82892c2caa6bccab9a4081166fa769699f8
s390/debug: add early tracing support

Debug areas can currently only be used after s390dbf initialization
which occurs as a postcore_initcall. This is too late for tracing
earlier code such as that related to console_init().

This patch introduces a macro for defining a statically initialized
debug area that can be used to trace very early code. The macro is made
available for built-in code only because modules are never running
during early boot.

Example usage:

1. Define static debug area:

  DEFINE_STATIC_DEBUG_INFO(my_debug, "my_debug", 4, 1, 16,
   &debug_hex_ascii_view);

2. Add trace entry:

  debug_event(&my_debug, 0, "DATA", 4);

Note: The debug area is automatically registered in debugfs during boot.
      A driver must not call any of the debug_register()/_unregister()
      functions on a static debug_info_t!

Signed-off-by: Peter Oberparleiter <oberpar@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/include/asm/debug.h
arch/s390/kernel/debug.c