diff options
-rw-r--r-- | xenolinux-2.4.26-sparse/arch/xen/drivers/netif/backend/main.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/xenolinux-2.4.26-sparse/arch/xen/drivers/netif/backend/main.c b/xenolinux-2.4.26-sparse/arch/xen/drivers/netif/backend/main.c index 4db4a46eb9..5b563f41d9 100644 --- a/xenolinux-2.4.26-sparse/arch/xen/drivers/netif/backend/main.c +++ b/xenolinux-2.4.26-sparse/arch/xen/drivers/netif/backend/main.c @@ -328,10 +328,12 @@ static int __on_net_schedule_list(netif_t *netif) static void remove_from_net_schedule_list(netif_t *netif) { spin_lock(&net_schedule_list_lock); - ASSERT(__on_net_schedule_list(netif)); - list_del(&netif->list); - netif->list.next = NULL; - netif_put(netif); + if ( likely(__on_net_schedule_list(netif)) ) + { + list_del(&netif->list); + netif->list.next = NULL; + netif_put(netif); + } spin_unlock(&net_schedule_list_lock); } |