staging: gpib: Fix error handling paths in cb_gpib_probe()
If cb_gpib_config() fails, 'info' needs to be freed, as already done in the
remove function.
While at it, remove a pointless comment related to gpib_attach().
Fixes: e9dc69956d ("staging: gpib: Add Computer Boards GPIB driver")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/bf89d6f2f8b8c680720d02061fc4ebdd805deca8.1751709098.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
4f7ac4d07a
commit
1b0ee85ee7
@@ -1184,8 +1184,7 @@ struct local_info {
|
||||
static int cb_gpib_probe(struct pcmcia_device *link)
|
||||
{
|
||||
struct local_info *info;
|
||||
|
||||
// int ret, i;
|
||||
int ret;
|
||||
|
||||
/* Allocate space for private device-specific data */
|
||||
info = kzalloc(sizeof(*info), GFP_KERNEL);
|
||||
@@ -1211,8 +1210,16 @@ static int cb_gpib_probe(struct pcmcia_device *link)
|
||||
|
||||
/* Register with Card Services */
|
||||
curr_dev = link;
|
||||
return cb_gpib_config(link);
|
||||
} /* gpib_attach */
|
||||
ret = cb_gpib_config(link);
|
||||
if (ret)
|
||||
goto free_info;
|
||||
|
||||
return 0;
|
||||
|
||||
free_info:
|
||||
kfree(info);
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
* This deletes a driver "instance". The device is de-registered
|
||||
|
||||
Reference in New Issue
Block a user