--- ../linux-2.6.4.orig/net/ipv4/devinet.c 2004-03-12 12:17:31.000000000 +0100 +++ ../linux-2.6.4/net/ipv4/devinet.c 2004-03-25 13:07:24.000000000 +0100 @@ -183,7 +183,10 @@ in_dev->dead = 1; - ip_mc_destroy_dev(in_dev); + /* If the device isn't up, the multicast info isn't + * initialized. */ + if (in_dev->dev->flags & IFF_UP) + ip_mc_destroy_dev(in_dev); while ((ifa = in_dev->ifa_list) != NULL) { inet_del_ifa(in_dev, &in_dev->ifa_list, 0);