mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-03 16:04:16 -04:00
s390/bug: Use BUG_FORMAT for DEBUG_BUGVERBOSE_DETAILED
This is just the s390 variant of commit 4f1b701f24 ("x86/bug: Use
BUG_FORMAT for DEBUG_BUGVERBOSE_DETAILED").
Reviewed-by: Sven Schnelle <svens@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
@@ -7,11 +7,18 @@
|
||||
#if defined(CONFIG_BUG) && defined(CONFIG_CC_HAS_ASM_IMMEDIATE_STRINGS)
|
||||
|
||||
#ifdef CONFIG_DEBUG_BUGVERBOSE
|
||||
#define __BUG_ENTRY_VERBOSE(file, line) \
|
||||
#define __BUG_ENTRY_VERBOSE(format, file, line) \
|
||||
" .long " format " - . # bug_entry::format\n" \
|
||||
" .long " file " - . # bug_entry::file\n" \
|
||||
" .short " line " # bug_entry::line\n"
|
||||
#else
|
||||
#define __BUG_ENTRY_VERBOSE(file, line)
|
||||
#define __BUG_ENTRY_VERBOSE(format, file, line)
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_DEBUG_BUGVERBOSE_DETAILED
|
||||
#define WARN_CONDITION_STR(cond_str) cond_str
|
||||
#else
|
||||
#define WARN_CONDITION_STR(cond_str) ""
|
||||
#endif
|
||||
|
||||
#define __BUG_ASM(cond_str, flags) \
|
||||
@@ -20,12 +27,13 @@ do { \
|
||||
"0: mc 0,0\n" \
|
||||
" .section __bug_table,\"aw\"\n" \
|
||||
"1: .long 0b - . # bug_entry::bug_addr\n" \
|
||||
__BUG_ENTRY_VERBOSE("%[file]", "%[line]") \
|
||||
__BUG_ENTRY_VERBOSE("%[frmt]", "%[file]", "%[line]") \
|
||||
" .short %[flgs] # bug_entry::flags\n" \
|
||||
" .org 1b+%[size]\n" \
|
||||
" .previous" \
|
||||
: \
|
||||
: [file] "i" (WARN_CONDITION_STR(cond_str) __FILE__), \
|
||||
: [frmt] "i" (WARN_CONDITION_STR(cond_str)), \
|
||||
[file] "i" (__FILE__), \
|
||||
[line] "i" (__LINE__), \
|
||||
[flgs] "i" (flags), \
|
||||
[size] "i" (sizeof(struct bug_entry))); \
|
||||
@@ -43,6 +51,7 @@ do { \
|
||||
} while (0)
|
||||
|
||||
#define HAVE_ARCH_BUG
|
||||
#define HAVE_ARCH_BUG_FORMAT
|
||||
|
||||
#endif /* CONFIG_BUG && CONFIG_CC_HAS_ASM_IMMEDIATE_STRINGS */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user