From: Heiko Carstens <hca@linux.ibm.com>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org,
Linus Torvalds <torvalds@linux-foundation.org>,
Peter Zijlstra <peterz@infradead.org>,
linux-arch@vger.kernel.org, Vasily Gorbik <gor@linux.ibm.com>,
Alexander Gordeev <agordeev@linux.ibm.com>,
Christian Borntraeger <borntraeger@linux.ibm.com>,
Sven Schnelle <svens@linux.ibm.com>,
linux-s390@vger.kernel.org
Subject: Re: [PATCH 10/15] bugs/s390: Pass in 'cond_str' to __EMIT_BUG()
Date: Tue, 20 May 2025 15:39:27 +0200 [thread overview]
Message-ID: <20250520133927.7932C19-hca@linux.ibm.com> (raw)
In-Reply-To: <20250515124644.2958810-11-mingo@kernel.org>
On Thu, May 15, 2025 at 02:46:39PM +0200, Ingo Molnar wrote:
> Pass in the condition string from __WARN_FLAGS(), but do not
> concatenate it with __FILE__, because the __bug_table is
> apparently indexed by 16 bits and increasing string size
> overflows it on defconfig builds.
Could you provide your change which didn't work?
I cannot see how anything would overflow. Trying the below on top of
your series seems to work like expected.
In order to keep things easy this drops the mergeable section trick
and results in a small increase of the rodata section, but I doubt
that would explain what you have seen.
Also allyesconfig builds without errors.
diff --git a/arch/s390/include/asm/bug.h b/arch/s390/include/asm/bug.h
index 30f8785a01f5..837bfbde0c51 100644
--- a/arch/s390/include/asm/bug.h
+++ b/arch/s390/include/asm/bug.h
@@ -11,16 +11,14 @@
#define __EMIT_BUG(cond_str, x) do { \
asm_inline volatile( \
"0: mc 0,0\n" \
- ".section .rodata.str,\"aMS\",@progbits,1\n" \
- "1: .asciz \""__FILE__"\"\n" \
- ".previous\n" \
".section __bug_table,\"aw\"\n" \
- "2: .long 0b-.\n" \
- " .long 1b-.\n" \
- " .short %0,%1\n" \
- " .org 2b+%2\n" \
+ "1: .long 0b-.\n" \
+ " .long %0-.\n" \
+ " .short %1,%2\n" \
+ " .org 1b+%3\n" \
".previous\n" \
- : : "i" (__LINE__), \
+ : : "i" (WARN_CONDITION_STR(cond_str) __FILE__),\
+ "i" (__LINE__), \
"i" (x), \
"i" (sizeof(struct bug_entry))); \
} while (0)
next prev parent reply other threads:[~2025-05-20 13:39 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20250515124644.2958810-1-mingo@kernel.org>
2025-05-15 12:46 ` [PATCH 10/15] bugs/s390: Pass in 'cond_str' to __EMIT_BUG() Ingo Molnar
2025-05-20 13:39 ` Heiko Carstens [this message]
2025-06-09 8:27 ` [PATCH 16/15] bugs/s390: Use " Ingo Molnar
2025-06-09 15:56 ` Heiko Carstens
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250520133927.7932C19-hca@linux.ibm.com \
--to=hca@linux.ibm.com \
--cc=agordeev@linux.ibm.com \
--cc=borntraeger@linux.ibm.com \
--cc=gor@linux.ibm.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=svens@linux.ibm.com \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).