* [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe()
@ 2023-05-20 9:48 Christophe JAILLET
2023-05-22 12:34 ` Simon Horman
2023-05-23 2:30 ` patchwork-bot+netdevbpf
0 siblings, 2 replies; 5+ messages in thread
From: Christophe JAILLET @ 2023-05-20 9:48 UTC (permalink / raw)
To: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Dominik Brodowski
Cc: linux-kernel, kernel-janitors, Christophe JAILLET, netdev
Should tc589_config() fail, some resources need to be released as already
done in the remove function.
Fixes: 15b99ac17295 ("[PATCH] pcmcia: add return value to _config() functions")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
drivers/net/ethernet/3com/3c589_cs.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/3com/3c589_cs.c b/drivers/net/ethernet/3com/3c589_cs.c
index 82f94b1635bf..5267e9dcd87e 100644
--- a/drivers/net/ethernet/3com/3c589_cs.c
+++ b/drivers/net/ethernet/3com/3c589_cs.c
@@ -195,6 +195,7 @@ static int tc589_probe(struct pcmcia_device *link)
{
struct el3_private *lp;
struct net_device *dev;
+ int ret;
dev_dbg(&link->dev, "3c589_attach()\n");
@@ -218,7 +219,15 @@ static int tc589_probe(struct pcmcia_device *link)
dev->ethtool_ops = &netdev_ethtool_ops;
- return tc589_config(link);
+ ret = tc589_config(link);
+ if (ret)
+ goto err_free_netdev;
+
+ return 0;
+
+err_free_netdev:
+ free_netdev(dev);
+ return ret;
}
static void tc589_detach(struct pcmcia_device *link)
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe()
2023-05-20 9:48 [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe() Christophe JAILLET
@ 2023-05-22 12:34 ` Simon Horman
2023-05-22 17:18 ` Christophe JAILLET
2023-05-23 2:30 ` patchwork-bot+netdevbpf
1 sibling, 1 reply; 5+ messages in thread
From: Simon Horman @ 2023-05-22 12:34 UTC (permalink / raw)
To: Christophe JAILLET
Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Dominik Brodowski, linux-kernel, kernel-janitors, netdev
On Sat, May 20, 2023 at 11:48:55AM +0200, Christophe JAILLET wrote:
> Should tc589_config() fail, some resources need to be released as already
> done in the remove function.
>
> Fixes: 15b99ac17295 ("[PATCH] pcmcia: add return value to _config() functions")
That commit is probably going back far enough, but I actually
suspect the problem has been there since the beginning of git history.
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe()
2023-05-22 12:34 ` Simon Horman
@ 2023-05-22 17:18 ` Christophe JAILLET
2023-05-23 8:42 ` Simon Horman
0 siblings, 1 reply; 5+ messages in thread
From: Christophe JAILLET @ 2023-05-22 17:18 UTC (permalink / raw)
To: Simon Horman
Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Dominik Brodowski, linux-kernel, kernel-janitors, netdev
Le 22/05/2023 à 14:34, Simon Horman a écrit :
> On Sat, May 20, 2023 at 11:48:55AM +0200, Christophe JAILLET wrote:
>> Should tc589_config() fail, some resources need to be released as already
>> done in the remove function.
>>
>> Fixes: 15b99ac17295 ("[PATCH] pcmcia: add return value to _config() functions")
>
> That commit is probably going back far enough, but I actually
> suspect the problem has been there since the beginning of git history.
In fact, before that commit, the probe was always returning 0, so there
was no need for an error handling path.
FYI, commit 15b99ac17295 ("[PATCH] pcmcia: add return value to _config()
functions") messed up many drivers for the same reason.
I sent a few patches to see if there was an interest to fix these
(really) old drivers, most linked with pcmcia which seems to slowly be
removed from the kernel.
So I'm a bit unsure if fixing it really matters.
Let see if I collect some other R-b tags for the other patches.
CJ
>
>> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
>
> Reviewed-by: Simon Horman <simon.horman@corigine.com>
>
>
>
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe()
2023-05-22 17:18 ` Christophe JAILLET
@ 2023-05-23 8:42 ` Simon Horman
0 siblings, 0 replies; 5+ messages in thread
From: Simon Horman @ 2023-05-23 8:42 UTC (permalink / raw)
To: Christophe JAILLET
Cc: David S. Miller, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
Dominik Brodowski, linux-kernel, kernel-janitors, netdev
On Mon, May 22, 2023 at 07:18:29PM +0200, Christophe JAILLET wrote:
> Le 22/05/2023 à 14:34, Simon Horman a écrit :
> > On Sat, May 20, 2023 at 11:48:55AM +0200, Christophe JAILLET wrote:
> > > Should tc589_config() fail, some resources need to be released as already
> > > done in the remove function.
> > >
> > > Fixes: 15b99ac17295 ("[PATCH] pcmcia: add return value to _config() functions")
> >
> > That commit is probably going back far enough, but I actually
> > suspect the problem has been there since the beginning of git history.
>
> In fact, before that commit, the probe was always returning 0, so there was
> no need for an error handling path.
Sure. But resources could still leak, as far as I can tell.
Adding a return value provided a mechanism to fix such leaks.
But wasn't done (until now). Just my 2c worth.
> FYI, commit 15b99ac17295 ("[PATCH] pcmcia: add return value to _config()
> functions") messed up many drivers for the same reason.
> I sent a few patches to see if there was an interest to fix these (really)
> old drivers, most linked with pcmcia which seems to slowly be removed from
> the kernel.
>
> So I'm a bit unsure if fixing it really matters.
> Let see if I collect some other R-b tags for the other patches.
Yes, let's see.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe()
2023-05-20 9:48 [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe() Christophe JAILLET
2023-05-22 12:34 ` Simon Horman
@ 2023-05-23 2:30 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 5+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-05-23 2:30 UTC (permalink / raw)
To: Christophe JAILLET
Cc: davem, edumazet, kuba, pabeni, linux, linux-kernel,
kernel-janitors, netdev
Hello:
This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Sat, 20 May 2023 11:48:55 +0200 you wrote:
> Should tc589_config() fail, some resources need to be released as already
> done in the remove function.
>
> Fixes: 15b99ac17295 ("[PATCH] pcmcia: add return value to _config() functions")
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
> drivers/net/ethernet/3com/3c589_cs.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
Here is the summary with links:
- [net] 3c589_cs: Fix an error handling path in tc589_probe()
https://git.kernel.org/netdev/net/c/640bf95b2c7c
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-05-23 8:42 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-20 9:48 [PATCH net] 3c589_cs: Fix an error handling path in tc589_probe() Christophe JAILLET
2023-05-22 12:34 ` Simon Horman
2023-05-22 17:18 ` Christophe JAILLET
2023-05-23 8:42 ` Simon Horman
2023-05-23 2:30 ` patchwork-bot+netdevbpf
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).