[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Z3+8JGoiUyPFYGE8@e133380.arm.com>
Date: Thu, 9 Jan 2025 12:08:04 +0000
From: Dave Martin <Dave.Martin@....com>
To: Akihiko Odaki <akihiko.odaki@...nix.com>
Cc: Heiko Carstens <hca@...ux.ibm.com>, Vasily Gorbik <gor@...ux.ibm.com>,
Alexander Gordeev <agordeev@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>,
Eric Biederman <ebiederm@...ssion.com>, Kees Cook <kees@...nel.org>,
Catalin Marinas <catalin.marinas@....com>,
Mark Brown <broonie@...nel.org>, Baoquan He <bhe@...hat.com>,
Vivek Goyal <vgoyal@...hat.com>, Dave Young <dyoung@...hat.com>,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org, linux-s390@...r.kernel.org,
kexec@...ts.infradead.org, binutils@...rceware.org,
devel@...nix.com
Subject: Re: [PATCH v3 5/6] s390/crash: Use note name macros
Hi,
On Thu, Jan 09, 2025 at 02:29:19PM +0900, Akihiko Odaki wrote:
> On 2025/01/08 22:50, Dave Martin wrote:
> > On Wed, Jan 08, 2025 at 01:53:51PM +0900, Akihiko Odaki wrote:
> > > On 2025/01/08 1:17, Dave Martin wrote:
> > > > Hi,
> > > >
> > > > On Tue, Jan 07, 2025 at 09:45:56PM +0900, Akihiko Odaki wrote:
> > > > > Use note name macros to match with the userspace's expectation.
> > > > >
> > > > > Signed-off-by: Akihiko Odaki <akihiko.odaki@...nix.com>
> > > > > ---
> > > > > arch/s390/kernel/crash_dump.c | 62 ++++++++++++++++---------------------------
> > > > > 1 file changed, 23 insertions(+), 39 deletions(-)
> > > > >
> > > > > diff --git a/arch/s390/kernel/crash_dump.c b/arch/s390/kernel/crash_dump.c
> > > >
> > > > [...]
> >
> > > > > +#define NT_INIT(buf, type, desc) \
> > > > > + (nt_init_name((buf), NT_ ## type, &(desc), sizeof(desc), NN_ ## type))
> >
> > [...]
> >
> > > > (Note also, the outer parentheses and the parentheses around (buf)
> > > > appear redundant -- although harmless?)
> > >
> > > They only make a difference in trivial corner cases and may look needlessly
> > > verbose.
> >
> > (In case there was a misunderstanding here, I meant that some
> > parentheses can be removed without affecting correctness:
> >
> > #define NT_INIT(buf, type, desc) \
> > nt_init_name(buf, NT_ ## type, &(desc), sizeof(desc), NN_ ## type))
> >
> > It still doesn't matter though -- and some people do prefer to be
> > defensive anyway and err on the side of having too many parentheses
> > rather than too few.)
>
> Well, being very pedantic, there are some cases where these parentheses have
> some effect.
>
> If you omit the outer parentheses, the following code will have different
> consequences:
> a->NT_INIT(buf, PRSTATUS, desc)
>
> The parentheses around buf will make difference for the following code:
> #define COMMA ,
> NT_INIT(NULL COMMA buf, PRSTATUS, desc)
>
> But nobody will write such code.
Ah, it looks like you're right on both!
Apologies for the noise.
(I must try find a neat use for these...)
Cheers
---Dave
Powered by blists - more mailing lists