From: Simon Horman <horms@kernel.org>
To: Wei Fang <wei.fang@nxp.com>
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, vladimir.oltean@nxp.com,
claudiu.manoil@nxp.com, xiaoning.wang@nxp.com, Frank.Li@nxp.com,
christophe.leroy@csgroup.eu, linux@armlinux.org.uk,
bhelgaas@google.com, imx@lists.linux.dev, netdev@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org
Subject: Re: [PATCH v2 net-next 10/13] net: enetc: extract enetc_int_vector_init/destroy() from enetc_alloc_msix()
Date: Wed, 16 Oct 2024 08:29:29 +0100 [thread overview]
Message-ID: <20241016072929.GD2162@kernel.org> (raw)
In-Reply-To: <20241015125841.1075560-11-wei.fang@nxp.com>
On Tue, Oct 15, 2024 at 08:58:38PM +0800, Wei Fang wrote:
> From: Clark Wang <xiaoning.wang@nxp.com>
>
> Extract enetc_int_vector_init() and enetc_int_vector_destroy() from
> enetc_alloc_msix() so that the code is more concise and readable.
>
> Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
> Signed-off-by: Wei Fang <wei.fang@nxp.com>
> ---
> v2 changes:
> This patch is separated from v1 patch 9 ("net: enetc: optimize the
> allocation of tx_bdr"). Separate enetc_int_vector_init() from the
> original patch. In addition, add new help function
> enetc_int_vector_destroy().
> ---
> drivers/net/ethernet/freescale/enetc/enetc.c | 174 +++++++++----------
> 1 file changed, 87 insertions(+), 87 deletions(-)
>
> diff --git a/drivers/net/ethernet/freescale/enetc/enetc.c b/drivers/net/ethernet/freescale/enetc/enetc.c
> index 032d8eadd003..d36af3f8ba31 100644
> --- a/drivers/net/ethernet/freescale/enetc/enetc.c
> +++ b/drivers/net/ethernet/freescale/enetc/enetc.c
> @@ -2965,6 +2965,87 @@ int enetc_ioctl(struct net_device *ndev, struct ifreq *rq, int cmd)
> }
> EXPORT_SYMBOL_GPL(enetc_ioctl);
>
> +static int enetc_int_vector_init(struct enetc_ndev_priv *priv, int i,
> + int v_tx_rings)
> +{
> + struct enetc_int_vector *v __free(kfree);
> + struct enetc_bdr *bdr;
> + int j, err;
> +
> + v = kzalloc(struct_size(v, tx_ring, v_tx_rings), GFP_KERNEL);
> + if (!v)
> + return -ENOMEM;
...
> int enetc_alloc_msix(struct enetc_ndev_priv *priv)
> {
> struct pci_dev *pdev = priv->si->pdev;
...
> @@ -2986,64 +3067,9 @@ int enetc_alloc_msix(struct enetc_ndev_priv *priv)
> /* # of tx rings per int vector */
> v_tx_rings = priv->num_tx_rings / priv->bdr_int_num;
>
> - for (i = 0; i < priv->bdr_int_num; i++) {
> - struct enetc_int_vector *v;
> - struct enetc_bdr *bdr;
> - int j;
> -
> - v = kzalloc(struct_size(v, tx_ring, v_tx_rings), GFP_KERNEL);
> - if (!v) {
> - err = -ENOMEM;
> + for (i = 0; i < priv->bdr_int_num; i++)
> + if (enetc_int_vector_init(priv, i, v_tx_rings))
> goto fail;
Hi Wei Fang,
It looks like, if we reach this error handling during the first iteration
of the for loop then err, which will be return value returned by the function,
is ininitialised. Perhaps this would be better expressed as follows?
(Completely untested!)
err = enetc_int_vector_init(priv, i, v_tx_rings);
if (err)
goto fail;
Flagged by Smatch.
...
next prev parent reply other threads:[~2024-10-16 7:29 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-15 12:58 [PATCH v2 net-next 00/13] add basic support for i.MX95 NETC Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 01/13] dt-bindings: net: add compatible string for i.MX95 EMDIO Wei Fang
2024-10-15 15:33 ` Frank Li
2024-10-15 21:56 ` Rob Herring (Arm)
2024-10-15 12:58 ` [PATCH v2 net-next 02/13] dt-bindings: net: add i.MX95 ENETC support Wei Fang
2024-10-15 15:40 ` Frank Li
2024-10-16 1:21 ` Wei Fang
2024-10-15 21:58 ` Rob Herring
2024-10-16 2:06 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 03/13] dt-bindings: net: add bindings for NETC blocks control Wei Fang
2024-10-15 15:45 ` Frank Li
2024-10-16 1:22 ` Wei Fang
2024-10-15 22:02 ` Rob Herring
2024-10-16 2:03 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 04/13] net: enetc: add initial netc-blk-ctrl driver support Wei Fang
2024-10-15 16:13 ` Frank Li
2024-10-16 1:30 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 05/13] net: enetc: move some common interfaces to enetc_pf_common.c Wei Fang
2024-10-15 16:24 ` Frank Li
2024-10-16 1:33 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 06/13] net: enetc: build enetc_pf_common.c as a separate module Wei Fang
2024-10-15 16:35 ` Frank Li
2024-10-16 1:47 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 07/13] net: enetc: only enable ERR050089 workaround on LS1028A Wei Fang
2024-10-15 16:41 ` Frank Li
2024-10-15 12:58 ` [PATCH v2 net-next 08/13] PCI: Add NXP NETC vendor ID and device IDs Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 09/13] net: enetc: add i.MX95 EMDIO support Wei Fang
2024-10-15 16:49 ` Frank Li
2024-10-15 12:58 ` [PATCH v2 net-next 10/13] net: enetc: extract enetc_int_vector_init/destroy() from enetc_alloc_msix() Wei Fang
2024-10-15 16:33 ` Claudiu Manoil
2024-10-16 5:34 ` Wei Fang
2024-10-15 16:53 ` Frank Li
2024-10-16 1:50 ` Wei Fang
2024-10-16 7:29 ` Simon Horman [this message]
2024-10-16 7:38 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 11/13] net: enetc: optimize the allocation of tx_bdr Wei Fang
2024-10-15 16:37 ` Claudiu Manoil
2024-10-15 16:58 ` Frank Li
2024-10-16 1:53 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 12/13] net: enetc: add preliminary support for i.MX95 ENETC PF Wei Fang
2024-10-15 18:37 ` Frank Li
2024-10-16 3:12 ` Wei Fang
2024-10-15 12:58 ` [PATCH v2 net-next 13/13] MAINTAINERS: update ENETC driver files and maintainers Wei Fang
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=20241016072929.GD2162@kernel.org \
--to=horms@kernel.org \
--cc=Frank.Li@nxp.com \
--cc=bhelgaas@google.com \
--cc=christophe.leroy@csgroup.eu \
--cc=claudiu.manoil@nxp.com \
--cc=conor+dt@kernel.org \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=edumazet@google.com \
--cc=imx@lists.linux.dev \
--cc=krzk+dt@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=robh@kernel.org \
--cc=vladimir.oltean@nxp.com \
--cc=wei.fang@nxp.com \
--cc=xiaoning.wang@nxp.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;
as well as URLs for NNTP newsgroup(s).