staging: wilc1000: Return correct error codes
This change has been made with the goal that kernel functions should return something more descriptive than -1 on failure. The return value on an alloc_etherdev failure should be -ENOMEM, and not -1. This was found using Coccinelle. A simplified version of the semantic patch used is: //<smpl> @@ expression *e; identifier l1; @@ e = alloc_etherdev(...); if (e == NULL) { ... return - -1 + -ENOMEM ; } //</smpl Furthermore, introduced `ret` variable to store and return the corresponding error code returned by register_netdev on failure. The two call sites store the return value in a variable which only checks that the value is non-zero, hence no change is required at the call sites. Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com> Reviewed-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
8459af6acf
commit
fe747f0f34
|
@ -1312,7 +1312,7 @@ EXPORT_SYMBOL_GPL(wilc_netdev_cleanup);
|
|||
int wilc_netdev_init(struct wilc **wilc, struct device *dev, int io_type,
|
||||
int gpio, const struct wilc_hif_func *ops)
|
||||
{
|
||||
int i;
|
||||
int i, ret;
|
||||
struct wilc_vif *vif;
|
||||
struct net_device *ndev;
|
||||
struct wilc *wl;
|
||||
|
@ -1333,7 +1333,7 @@ int wilc_netdev_init(struct wilc **wilc, struct device *dev, int io_type,
|
|||
for (i = 0; i < NUM_CONCURRENT_IFC; i++) {
|
||||
ndev = alloc_etherdev(sizeof(struct wilc_vif));
|
||||
if (!ndev)
|
||||
return -1;
|
||||
return -ENOMEM;
|
||||
|
||||
vif = netdev_priv(ndev);
|
||||
memset(vif, 0, sizeof(struct wilc_vif));
|
||||
|
@ -1372,8 +1372,9 @@ int wilc_netdev_init(struct wilc **wilc, struct device *dev, int io_type,
|
|||
vif->netstats.tx_bytes = 0;
|
||||
}
|
||||
|
||||
if (register_netdev(ndev))
|
||||
return -1;
|
||||
ret = register_netdev(ndev);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
vif->iftype = STATION_MODE;
|
||||
vif->mac_opened = 0;
|
||||
|
|
Loading…
Reference in a new issue