[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <26d37815-c652-418c-99b0-9d3e6ab78893@embeddedor.com>
Date: Tue, 29 Oct 2024 12:48:32 -0600
From: "Gustavo A. R. Silva" <gustavo@...eddedor.com>
To: Jakub Kicinski <kuba@...nel.org>
Cc: "Gustavo A. R. Silva" <gustavoars@...nel.org>,
Michael Chan <michael.chan@...adcom.com>, Andrew Lunn
<andrew+netdev@...n.ch>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Paolo Abeni <pabeni@...hat.com>,
Potnuri Bharat Teja <bharat@...lsio.com>,
Christian Benvenuti <benve@...co.com>, Satish Kharat <satishkh@...co.com>,
Manish Chopra <manishc@...vell.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-hardening@...r.kernel.org
Subject: Re: [PATCH 2/2][next] net: ethtool: Avoid thousands of
-Wflex-array-member-not-at-end warnings
On 29/10/24 12:39, Jakub Kicinski wrote:
> On Tue, 29 Oct 2024 12:18:56 -0600 Gustavo A. R. Silva wrote:
>>>> I don't think you want to change this. `lsettings` is based on `ksettings`. So,
>>>> `ksettings` should go first. The same scenario for the one below.
>>>
>>> In which case you need to move the init out of line.
>>
>> So, the same applies to the case below?
>>
>> const struct ethtool_link_settings_hdr *base = &lk_ksettings->base;
>> struct bnxt *bp = netdev_priv(dev);
>> struct bnxt_link_info *link_info = &bp->link_info;
>
> Do you mean the bp and bp->link_info lines?
> You're not touching them, so leave them be.
>
>> Is this going to be a priority for any other netdev patches in the future?
>
> It's been the preferred formatting for a decade or more.
> Which is why the net/ethtool/ code you're touching follows
> this convention. We're less strict about driver code.
I mean, the thing about moving the initialization out of line to accommodate
for the convention.
What I'm understanding is that now you're asking me to change the following
const struct linkmodes_reply_data *data = LINKMODES_REPDATA(reply_base);
const struct ethtool_link_ksettings *ksettings = &data->ksettings;
- const struct ethtool_link_settings *lsettings = &ksettings->base;
+ const struct ethtool_link_settings_hdr *lsettings = &ksettings->base;
to this:
const struct linkmodes_reply_data *data = LINKMODES_REPDATA(reply_base);
const struct ethtool_link_settings_hdr *lsettings;
const struct ethtool_link_ksettings *ksettings;
ksettings = &data->ksettings;
lsettings = &ksettings->base;
I just want to have clear if this is going to be a priority and in which scenarios
should I/others modify the code to accommodate for the convention?
--
Gustavo
Powered by blists - more mailing lists