@@ -148,14 +148,6 @@ static int __init tipc_init(void)
148
148
sysctl_tipc_rmem [1 ] = RCVBUF_DEF ;
149
149
sysctl_tipc_rmem [2 ] = RCVBUF_MAX ;
150
150
151
- err = tipc_netlink_start ();
152
- if (err )
153
- goto out_netlink ;
154
-
155
- err = tipc_netlink_compat_start ();
156
- if (err )
157
- goto out_netlink_compat ;
158
-
159
151
err = tipc_register_sysctl ();
160
152
if (err )
161
153
goto out_sysctl ;
@@ -180,8 +172,21 @@ static int __init tipc_init(void)
180
172
if (err )
181
173
goto out_bearer ;
182
174
175
+ err = tipc_netlink_start ();
176
+ if (err )
177
+ goto out_netlink ;
178
+
179
+ err = tipc_netlink_compat_start ();
180
+ if (err )
181
+ goto out_netlink_compat ;
182
+
183
183
pr_info ("Started in single node mode\n" );
184
184
return 0 ;
185
+
186
+ out_netlink_compat :
187
+ tipc_netlink_stop ();
188
+ out_netlink :
189
+ tipc_bearer_cleanup ();
185
190
out_bearer :
186
191
unregister_pernet_subsys (& tipc_pernet_pre_exit_ops );
187
192
out_register_pernet_subsys :
@@ -193,23 +198,19 @@ static int __init tipc_init(void)
193
198
out_pernet :
194
199
tipc_unregister_sysctl ();
195
200
out_sysctl :
196
- tipc_netlink_compat_stop ();
197
- out_netlink_compat :
198
- tipc_netlink_stop ();
199
- out_netlink :
200
201
pr_err ("Unable to start in single node mode\n" );
201
202
return err ;
202
203
}
203
204
204
205
static void __exit tipc_exit (void )
205
206
{
207
+ tipc_netlink_compat_stop ();
208
+ tipc_netlink_stop ();
206
209
tipc_bearer_cleanup ();
207
210
unregister_pernet_subsys (& tipc_pernet_pre_exit_ops );
208
211
unregister_pernet_device (& tipc_topsrv_net_ops );
209
212
tipc_socket_stop ();
210
213
unregister_pernet_device (& tipc_net_ops );
211
- tipc_netlink_stop ();
212
- tipc_netlink_compat_stop ();
213
214
tipc_unregister_sysctl ();
214
215
215
216
pr_info ("Deactivated\n" );
0 commit comments