diff options
author | Vincent Mailhol | 2021-06-29 00:54:17 +0900 |
---|---|---|
committer | Marc Kleine-Budde | 2021-07-25 11:36:28 +0200 |
commit | 6bde4c7fd8455101dbba6838a6d11bc4451b9a0d (patch) | |
tree | 772ae368a05968f0a81a5a36750acde9fcbebcbd /drivers/net/can/usb | |
parent | 45cb13963df304fde13262654939dfb18788f95e (diff) |
can: etas_es58x: use devm_kzalloc() to allocate device resources
Replace kzalloc() with devm_kzalloc(). By doing this, we do not need
to care anymore about having to call kfree(). This result in a
simpler and more easy to read code.
Link: https://lore.kernel.org/r/20210628155420.1176217-4-mailhol.vincent@wanadoo.fr
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can/usb')
-rw-r--r-- | drivers/net/can/usb/etas_es58x/es58x_core.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/net/can/usb/etas_es58x/es58x_core.c b/drivers/net/can/usb/etas_es58x/es58x_core.c index 7650e349cae1..d2bb1b56f962 100644 --- a/drivers/net/can/usb/etas_es58x/es58x_core.c +++ b/drivers/net/can/usb/etas_es58x/es58x_core.c @@ -2185,7 +2185,8 @@ static struct es58x_device *es58x_init_es58x_dev(struct usb_interface *intf, ops = &es581_4_ops; } - es58x_dev = kzalloc(es58x_sizeof_es58x_device(param), GFP_KERNEL); + es58x_dev = devm_kzalloc(dev, es58x_sizeof_es58x_device(param), + GFP_KERNEL); if (!es58x_dev) return ERR_PTR(-ENOMEM); @@ -2235,7 +2236,7 @@ static int es58x_probe(struct usb_interface *intf, ret = es58x_get_product_info(es58x_dev); if (ret) - goto cleanup_es58x_dev; + return ret; for (ch_idx = 0; ch_idx < es58x_dev->num_can_ch; ch_idx++) { ret = es58x_init_netdev(es58x_dev, ch_idx); @@ -2251,8 +2252,6 @@ static int es58x_probe(struct usb_interface *intf, unregister_candev(es58x_dev->netdev[ch_idx]); free_candev(es58x_dev->netdev[ch_idx]); } - cleanup_es58x_dev: - kfree(es58x_dev); return ret; } @@ -2283,8 +2282,6 @@ static void es58x_disconnect(struct usb_interface *intf) } es58x_free_urbs(es58x_dev); - - kfree(es58x_dev); usb_set_intfdata(intf, NULL); } |