On 03/01/2018 06:25 AM, Arvind Yadav wrote: > Free memory, if afiucv_iucv_init is not successful. So calling > put_device() before kfree(). This will decrement the last reference. > > Signed-off-by: Arvind Yadav <arvind.yadav.cs@xxxxxxxxx> > --- > changes in v2: > Calling put_device() before kfree(). > > net/iucv/af_iucv.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/net/iucv/af_iucv.c b/net/iucv/af_iucv.c > index 1e8cc7b..a07943f 100644 > --- a/net/iucv/af_iucv.c > +++ b/net/iucv/af_iucv.c > @@ -2433,9 +2433,12 @@ static int afiucv_iucv_init(void) > af_iucv_dev->driver = &af_iucv_driver; > err = device_register(af_iucv_dev); > if (err) > - goto out_driver; > + goto out_iucv_dev; > return 0; > > +out_iucv_dev: > + put_device(af_iucv_dev); > + kfree(af_iucv_dev); > out_driver: > driver_unregister(&af_iucv_driver); > out_iucv: > Just put_device() should be sufficient here; please get rid of the kfree() call. -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html