[lvc-project] [PATCH] batman-adv: Check return value

Sven Eckelmann sven at narfation.org
Sun Dec 25 09:37:28 MSK 2022


Subject is missing something like ..." after calling rtnl_link_register()" or
..."s during module initialization".

On Sunday, 25 December 2022 00:33:11 CET Artem Chernyshev wrote:
[...]
> diff --git a/net/batman-adv/main.c b/net/batman-adv/main.c
> index e8a449915566..04cd9682bd29 100644kwin
> @@ -113,7 +113,11 @@ static int __init batadv_init(void)
>  		goto err_create_wq;
>  
>  	register_netdevice_notifier(&batadv_hard_if_notifier);
> -	rtnl_link_register(&batadv_link_ops);
> +	ret = rtnl_link_register(&batadv_link_ops);
> +	if (ret) {
> +		pr_err("Can't register link_ops\n");
> +		goto err_create_wq;
> +	}
>  	batadv_netlink_register();
>  
>  	pr_info("B.A.T.M.A.N. advanced %s (compatibility version %i) loaded\n",
> 

This looks wrong to me. You missed to destroy the batadv_hard_if_notifier in 
this case.

And if you want to start adding the checks, you should also have added it for 
batadv_v_init, batadv_iv_init, batadv_nc_init, batadv_tp_meter_init and 
register_netdevice_notifier. You can use the unfinished patch from Markus 
Pargmann as starting point.

Kind regards,
	Sven

[1] https://patchwork.open-mesh.org/project/b.a.t.m.a.n./patch/1419594103-10928-6-git-send-email-mpa@pengutronix.de/
    https://lists.open-mesh.org/mailman3/hyperkitty/list/b.a.t.m.a.n@lists.open-mesh.org/thread/QDX46YARWUC4R7OBFHR5OJKWQIXDQWRR/#QDX46YARWUC4R7OBFHR5OJKWQIXDQWRR
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://linuxtesting.org/pipermail/lvc-project/attachments/20221225/39d9d9d7/attachment.pgp>


More information about the lvc-project mailing list