Message ID | 20210329085246.24586-1-dinghao.liu@zju.edu.cn |
---|---|
State | New |
Headers | show |
Series | hostap: Fix memleak in prism2_config | expand |
Dinghao Liu <dinghao.liu@zju.edu.cn> writes: > When prism2_hw_config() fails, we just return an error code > without any resource release, which may lead to memleak. > > Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> > --- > drivers/net/wireless/intersil/hostap/hostap_cs.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/wireless/intersil/hostap/hostap_cs.c b/drivers/net/wireless/intersil/hostap/hostap_cs.c > index ec7db2badc40..7dc16ab50ad6 100644 > --- a/drivers/net/wireless/intersil/hostap/hostap_cs.c > +++ b/drivers/net/wireless/intersil/hostap/hostap_cs.c > @@ -536,10 +536,10 @@ static int prism2_config(struct pcmcia_device *link) > sandisk_enable_wireless(dev); > > ret = prism2_hw_config(dev, 1); > - if (!ret) > - ret = hostap_hw_ready(dev); > + if (ret) > + goto failed; > > - return ret; > + return hostap_hw_ready(dev);; Two semicolons. But I'm not sure about this, can someone provide a Reviewed-by tag? -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Dinghao Liu <dinghao.liu@zju.edu.cn> wrote: > When prism2_hw_config() fails, we just return an error code > without any resource release, which may lead to memleak. > > Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> Nobody reviewed this, so dropping the patch. Patch set to Changes Requested. -- https://patchwork.kernel.org/project/linux-wireless/patch/20210329085246.24586-1-dinghao.liu@zju.edu.cn/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
diff --git a/drivers/net/wireless/intersil/hostap/hostap_cs.c b/drivers/net/wireless/intersil/hostap/hostap_cs.c index ec7db2badc40..7dc16ab50ad6 100644 --- a/drivers/net/wireless/intersil/hostap/hostap_cs.c +++ b/drivers/net/wireless/intersil/hostap/hostap_cs.c @@ -536,10 +536,10 @@ static int prism2_config(struct pcmcia_device *link) sandisk_enable_wireless(dev); ret = prism2_hw_config(dev, 1); - if (!ret) - ret = hostap_hw_ready(dev); + if (ret) + goto failed; - return ret; + return hostap_hw_ready(dev);; failed: kfree(hw_priv);
When prism2_hw_config() fails, we just return an error code without any resource release, which may lead to memleak. Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> --- drivers/net/wireless/intersil/hostap/hostap_cs.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)