]> rtime.felk.cvut.cz Git - socketcan-devel.git/blobdiff - kernel/2.6/net/can/bcm.c
Fixed socket error reporting due to problems in hot-unplugging CAN-netdevices
[socketcan-devel.git] / kernel / 2.6 / net / can / bcm.c
index e27441506d004c5073840a870a7834faa6f1fd52..11aea58d32f847910e4e245373a7672d8bf5c2a9 100644 (file)
@@ -249,9 +249,11 @@ static void bcm_notifier(unsigned long msg, void *data)
        switch (msg) {
        case NETDEV_UNREGISTER:
                sk->sk_bound_dev_if = 0;
+               /* fallthrough */
        case NETDEV_DOWN:
                sk->sk_err = ENETDOWN;
-               sk->sk_error_report(sk);
+               if (!sock_flag(sk, SOCK_DEAD))
+                       sk->sk_error_report(sk);
        }
 }