diff options
Diffstat (limited to 'net/tipc')
| -rw-r--r-- | net/tipc/core.c | 2 | ||||
| -rw-r--r-- | net/tipc/link.c | 7 | ||||
| -rw-r--r-- | net/tipc/socket.c | 2 | 
3 files changed, 5 insertions, 6 deletions
diff --git a/net/tipc/core.c b/net/tipc/core.c index 935205e6bcfe..be1c9fa60b09 100644 --- a/net/tipc/core.c +++ b/net/tipc/core.c @@ -152,11 +152,11 @@ out_netlink:  static void __exit tipc_exit(void)  {  	tipc_bearer_cleanup(); +	unregister_pernet_subsys(&tipc_net_ops);  	tipc_netlink_stop();  	tipc_netlink_compat_stop();  	tipc_socket_stop();  	tipc_unregister_sysctl(); -	unregister_pernet_subsys(&tipc_net_ops);  	pr_info("Deactivated\n");  } diff --git a/net/tipc/link.c b/net/tipc/link.c index a4cf364316de..14f09b3cb87c 100644 --- a/net/tipc/link.c +++ b/net/tipc/link.c @@ -464,10 +464,11 @@ void tipc_link_reset(struct tipc_link *l_ptr)  	/* Clean up all queues, except inputq: */  	__skb_queue_purge(&l_ptr->outqueue);  	__skb_queue_purge(&l_ptr->deferred_queue); -	skb_queue_splice_init(&l_ptr->wakeupq, &l_ptr->inputq); -	if (!skb_queue_empty(&l_ptr->inputq)) +	if (!owner->inputq) +		owner->inputq = &l_ptr->inputq; +	skb_queue_splice_init(&l_ptr->wakeupq, owner->inputq); +	if (!skb_queue_empty(owner->inputq))  		owner->action_flags |= TIPC_MSG_EVT; -	owner->inputq = &l_ptr->inputq;  	l_ptr->next_out = NULL;  	l_ptr->unacked_window = 0;  	l_ptr->checkpoint = 1; diff --git a/net/tipc/socket.c b/net/tipc/socket.c index f73e975af80b..b4d4467d0bb0 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c @@ -2364,8 +2364,6 @@ int tipc_sk_rht_init(struct net *net)  		.hashfn = jhash,  		.max_shift = 20, /* 1M */  		.min_shift = 8,  /* 256 */ -		.grow_decision = rht_grow_above_75, -		.shrink_decision = rht_shrink_below_30,  	};  	return rhashtable_init(&tn->sk_rht, &rht_params);  | 
