diff options
Diffstat (limited to 'net/econet/af_econet.c')
-rw-r--r-- | net/econet/af_econet.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/net/econet/af_econet.c b/net/econet/af_econet.c index 7c9bb13b1539..8789d2bb1b06 100644 --- a/net/econet/af_econet.c +++ b/net/econet/af_econet.c | |||
@@ -573,9 +573,7 @@ static int econet_release(struct socket *sock) | |||
573 | 573 | ||
574 | sk->sk_state_change(sk); /* It is useless. Just for sanity. */ | 574 | sk->sk_state_change(sk); /* It is useless. Just for sanity. */ |
575 | 575 | ||
576 | sock->sk = NULL; | 576 | sock_orphan(sk); |
577 | sk->sk_socket = NULL; | ||
578 | sock_set_flag(sk, SOCK_DEAD); | ||
579 | 577 | ||
580 | /* Purge queues */ | 578 | /* Purge queues */ |
581 | 579 | ||
@@ -1064,7 +1062,7 @@ static int econet_rcv(struct sk_buff *skb, struct net_device *dev, struct packet | |||
1064 | struct sock *sk; | 1062 | struct sock *sk; |
1065 | struct ec_device *edev = dev->ec_ptr; | 1063 | struct ec_device *edev = dev->ec_ptr; |
1066 | 1064 | ||
1067 | if (dev_net(dev) != &init_net) | 1065 | if (!net_eq(dev_net(dev), &init_net)) |
1068 | goto drop; | 1066 | goto drop; |
1069 | 1067 | ||
1070 | if (skb->pkt_type == PACKET_OTHERHOST) | 1068 | if (skb->pkt_type == PACKET_OTHERHOST) |
@@ -1121,7 +1119,7 @@ static int econet_notifier(struct notifier_block *this, unsigned long msg, void | |||
1121 | struct net_device *dev = (struct net_device *)data; | 1119 | struct net_device *dev = (struct net_device *)data; |
1122 | struct ec_device *edev; | 1120 | struct ec_device *edev; |
1123 | 1121 | ||
1124 | if (dev_net(dev) != &init_net) | 1122 | if (!net_eq(dev_net(dev), &init_net)) |
1125 | return NOTIFY_DONE; | 1123 | return NOTIFY_DONE; |
1126 | 1124 | ||
1127 | switch (msg) { | 1125 | switch (msg) { |