> --- a/net/tipc/core.c
> +++ b/net/tipc/core.c
> @@ -82,6 +82,7 @@ static void tipc_core_stop_net(void)
> {
> tipc_net_stop();
> tipc_eth_media_stop();
> + tipc_ib_media_stop();
> }
>
> /**
> @@ -93,8 +94,17 @@ int tipc_core_start_net(unsigned long addr)
>
> tipc_net_start(addr);
> res = tipc_eth_media_start();
> - if (res)
> - tipc_core_stop_net();
> + if (res < 0)
> + goto err1;
> + res = tipc_ib_media_start();
> + if (res < 0)
> + goto err2;
> + return res;
> +
> +err2:
> + tipc_eth_media_stop();
Why do we need to call tipc_eth_media_stop() separately?
In any failed case, we will finally invoke tipc_core_stop_net() which
already places tipc_eth_media_stop().
> +err1:
> + tipc_core_stop_net();
> return res;
> }
>
Regards,
Ying
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html