]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
s390/bug: Use BUG_FORMAT for DEBUG_BUGVERBOSE_DETAILED
authorHeiko Carstens <hca@linux.ibm.com>
Fri, 9 Jan 2026 15:31:38 +0000 (16:31 +0100)
committerHeiko Carstens <hca@linux.ibm.com>
Tue, 27 Jan 2026 11:16:15 +0000 (12:16 +0100)
This is just the s390 variant of commit 4f1b701f24be ("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>
arch/s390/include/asm/bug.h

index 73f65d91da500135bf490328c18a2380985ad1b4..7e0498f22f2a2ba373c63993eb8d256f601d7392 100644 (file)
@@ -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 */