|
@@ -1427,9 +1427,14 @@ static int bcm_init(struct sock *sk)
|
|
|
static int bcm_release(struct socket *sock)
|
|
|
{
|
|
|
struct sock *sk = sock->sk;
|
|
|
- struct bcm_sock *bo = bcm_sk(sk);
|
|
|
+ struct bcm_sock *bo;
|
|
|
struct bcm_op *op, *next;
|
|
|
|
|
|
+ if (sk == NULL)
|
|
|
+ return 0;
|
|
|
+
|
|
|
+ bo = bcm_sk(sk);
|
|
|
+
|
|
|
/* remove bcm_ops, timer, rx_unregister(), etc. */
|
|
|
|
|
|
unregister_netdevice_notifier(&bo->notifier);
|