From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: Ruben Wauters <rubenru09@aol.com>,
Madhavan Srinivasan <maddy@linux.ibm.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Nicholas Piggin <npiggin@gmail.com>
Cc: linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
kernel-janitors@vger.kernel.org
Subject: Re: [PATCH] powerpc/xmon: replace sizeof calculations with ARRAY_SIZE macro
Date: Fri, 8 Aug 2025 16:03:29 +0200 [thread overview]
Message-ID: <7e2c8777-d439-4661-89b6-41b5356cf236@csgroup.eu> (raw)
In-Reply-To: <60ab8434533d214b53af15bb51d830e5f07d512f.camel@aol.com>
Le 08/08/2025 à 15:54, Ruben Wauters a écrit :
> [Vous ne recevez pas souvent de courriers de rubenru09@aol.com. Découvrez pourquoi ceci est important à https://aka.ms/LearnAboutSenderIdentification ]
>
> On Thu, 2025-07-31 at 17:40 +0100, Ruben Wauters wrote:
>> On Wed, 2025-07-30 at 08:14 +0200, Christophe Leroy wrote:
>>>
>>>
>>> Le 20/07/2025 à 00:43, Ruben Wauters a écrit :
>>>> [Vous ne recevez pas souvent de courriers de rubenru09@aol.com.
>>>> Découvrez pourquoi ceci est important à
>>>> https://aka.ms/LearnAboutSenderIdentification ]
>>>>
>>>> The calculations for operand/opcode/macro numbers are done in an
>>>> identical manner to the already existing ARRAY_SIZE macro in
>>>> linux/array_size.h
>>>>
>>>> This patch replaces the sizeof calculations with the macro to
>>>> make
>>>> the
>>>> code cleaner and more immediately obvious what it is doing.
>>>>
>>>> Signed-off-by: Ruben Wauters <rubenru09@aol.com>
>>>> ---
>>>> arch/powerpc/xmon/ppc-opc.c | 16 ++++++----------
>>>
>>> This file is mostly taken from binutils, refer commit 08d96e0b127e
>>> ("powerpc/xmon: Apply binutils changes to upgrade disassembly").
>>>
>>> I think your change should be done in binutils then backported to
>>> the
>>> kernel. The more we diverge from binutils the worse it is
>>
>> While this is somewhat reasonable, the header (linux/array_size.h) is
>> linux specific, and is included through kernel.h
>>
>> I can probably see if binutils has a similar header, or if they would
>> accept an equivalent header to make the file equivalent, but I'm
>> unsure
>> if they would
>>
> Hello, I have checked the binutils source, and have noticed that
> binutils already uses the ARRAY_SIZE macro, and this patch actually
> brings the kernel more in line with the equivalent file in binutils
> (opcodes/ppc-opc.c)
Ok.
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
>
> As such, I would like to request that the patch be applied as-is.
>
> Thank you
>
> Ruben
>
>> Ruben
>>
>>> Christophe
>>>
>>>
>>>> 1 file changed, 6 insertions(+), 10 deletions(-)
>>>>
>>>> diff --git a/arch/powerpc/xmon/ppc-opc.c b/arch/powerpc/xmon/ppc-
>>>> opc.c
>>>> index 0774d711453e..de9b4236728c 100644
>>>> --- a/arch/powerpc/xmon/ppc-opc.c
>>>> +++ b/arch/powerpc/xmon/ppc-opc.c
>>>> @@ -954,8 +954,7 @@ const struct powerpc_operand
>>>> powerpc_operands[]
>>>> =
>>>> { 0xff, 11, NULL, NULL, PPC_OPERAND_SIGNOPT },
>>>> };
>>>>
>>>> -const unsigned int num_powerpc_operands = (sizeof
>>>> (powerpc_operands)
>>>> - / sizeof
>>>> (powerpc_operands[0]));
>>>> +const unsigned int num_powerpc_operands =
>>>> ARRAY_SIZE(powerpc_operands);
>>>>
>>>> /* The functions used to insert and extract complicated
>>>> operands. */
>>>>
>>>> @@ -6968,9 +6967,8 @@ const struct powerpc_opcode
>>>> powerpc_opcodes[]
>>>> = {
>>>> {"fcfidu.", XRC(63,974,1), XRA_MASK, POWER7|PPCA2,
>>>> PPCVLE, {FRT, FRB}},
>>>> };
>>>>
>>>> -const int powerpc_num_opcodes =
>>>> - sizeof (powerpc_opcodes) / sizeof (powerpc_opcodes[0]);
>>>> -
>>>> +const int powerpc_num_opcodes = ARRAY_SIZE(powerpc_opcodes);
>>>> +
>>>> /* The VLE opcode table.
>>>>
>>>> The format of this opcode table is the same as the main
>>>> opcode
>>>> table. */
>>>> @@ -7207,9 +7205,8 @@ const struct powerpc_opcode vle_opcodes[] =
>>>> {
>>>> {"se_bl", BD8(58,0,1), BD8_MASK, PPCVLE,
>>>> 0, {B8}},
>>>> };
>>>>
>>>> -const int vle_num_opcodes =
>>>> - sizeof (vle_opcodes) / sizeof (vle_opcodes[0]);
>>>> -
>>>> +const int vle_num_opcodes = ARRAY_SIZE(vle_opcodes);
>>>> +
>>>> /* The macro table. This is only used by the assembler. */
>>>>
>>>> /* The expressions of the form (-x ! 31) & (x | 31) have the
>>>> value 0
>>>> @@ -7276,5 +7273,4 @@ const struct powerpc_macro powerpc_macros[]
>>>> =
>>>> {
>>>> {"e_clrlslwi",4, PPCVLE, "e_rlwinm %0,%1,%3,(%2)-(%3),31-
>>>> (%3)"},
>>>> };
>>>>
>>>> -const int powerpc_num_macros =
>>>> - sizeof (powerpc_macros) / sizeof (powerpc_macros[0]);
>>>> +const int powerpc_num_macros = ARRAY_SIZE(powerpc_macros);
>>>> --
>>>> 2.49.1
>>>>
next prev parent reply other threads:[~2025-08-08 14:20 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20250719225225.2132-2-rubenru09.ref@aol.com>
2025-07-19 22:43 ` Ruben Wauters
2025-07-30 6:14 ` Christophe Leroy
2025-07-31 16:40 ` Ruben Wauters
2025-08-01 8:06 ` Dan Carpenter
2025-08-08 13:54 ` Ruben Wauters
2025-08-08 14:03 ` Christophe Leroy [this message]
2025-09-06 10:07 ` Madhavan Srinivasan
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=7e2c8777-d439-4661-89b6-41b5356cf236@csgroup.eu \
--to=christophe.leroy@csgroup.eu \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=maddy@linux.ibm.com \
--cc=mpe@ellerman.id.au \
--cc=npiggin@gmail.com \
--cc=rubenru09@aol.com \
/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
all inboxes | Powered by JetHome®