From: Jakub Kicinski <kuba@kernel.org>
To: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Cc: "Christophe JAILLET" <christophe.jaillet@wanadoo.fr>,
"Krzysztof Halasa" <khalasa@piap.pl>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
"Paolo Abeni" <pabeni@redhat.com>,
"Krzysztof Hałasa" <khc@pm.waw.pl>,
linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org,
netdev@vger.kernel.org
Subject: Re: [PATCH] ixp4xx_eth: Fix an error handling path in ixp4xx_eth_probe()
Date: Wed, 21 Dec 2022 17:38:45 -0800 [thread overview]
Message-ID: <20221221173845.38e15410@kernel.org> (raw)
In-Reply-To: <Y6NVb8igxFCwwdw5@localhost.localdomain>
On Wed, 21 Dec 2022 19:50:23 +0100 Michal Swiatkowski wrote:
> On Wed, Dec 21, 2022 at 08:17:52AM +0100, Christophe JAILLET wrote:
> > If an error occurs after a successful ixp4xx_mdio_register() call, it
> > should be undone by a corresponding ixp4xx_mdio_remove().
>
> What about error when mdio_bus is 0? It means that mdio_register can
> return no error, but sth happen and there is no need to call mdio_remove
> in this case?
>
> I mean:
> /* If the instance with the MDIO bus has not yet appeared,
> * defer probing until it gets probed.
> */
> if (!mdio_bus)
> return -EPROBE_DEFER;
Indeed, I think a closer look is warranted, this code operates on
global variables, it's also not clear to me whether it's safe to always
call remove, even if has_mdio is false?
> > Add the missing call in the error handling path, as already done in the
> > remove function.
> >
> > Fixes: 2098c18d6cf6 ("IXP4xx: Add PHYLIB support to Ethernet driver.")
> > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> > ---
> > drivers/net/ethernet/xscale/ixp4xx_eth.c | 8 ++++++--
> > 1 file changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/xscale/ixp4xx_eth.c b/drivers/net/ethernet/xscale/ixp4xx_eth.c
> > index 3b0c5f177447..007d68b385a5 100644
> > --- a/drivers/net/ethernet/xscale/ixp4xx_eth.c
> > +++ b/drivers/net/ethernet/xscale/ixp4xx_eth.c
> > @@ -1490,8 +1490,10 @@ static int ixp4xx_eth_probe(struct platform_device *pdev)
> >
> > netif_napi_add_weight(ndev, &port->napi, eth_poll, NAPI_WEIGHT);
> netif_napi_add_weight() doesn't need to be unrolled in case of error
> (call netif_napi_del() or something)?
free_netdev() cleans it up automatically
prev parent reply other threads:[~2022-12-22 1:38 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-21 7:17 [PATCH] ixp4xx_eth: Fix an error handling path in ixp4xx_eth_probe() Christophe JAILLET
2022-12-21 18:50 ` Michal Swiatkowski
2022-12-22 1:38 ` Jakub Kicinski [this message]
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=20221221173845.38e15410@kernel.org \
--to=kuba@kernel.org \
--cc=christophe.jaillet@wanadoo.fr \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kernel-janitors@vger.kernel.org \
--cc=khalasa@piap.pl \
--cc=khc@pm.waw.pl \
--cc=linux-kernel@vger.kernel.org \
--cc=michal.swiatkowski@linux.intel.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.