void *have;  
static void net_rx_action(struct softirq_action *h){	struct softnet_data *queue = &__get_cpu_var(softnet_data);	unsigned long start_time = jiffies;	int budget = netdev_budget;		local_irq_disable();	while (!list_empty(&queue->poll_list)) {		struct net_device *dev;		if (budget <= 0 || jiffies - start_time > 1)			goto softnet_break;		local_irq_enable();		dev = list_entry(queue->poll_list.next,				 struct net_device, poll_list);		netpoll_poll_lock(dev);		if (dev->quota <= 0 || dev->poll(dev, &budget)) {			netpoll_poll_unlock(dev);			local_irq_disable();			list_del(&dev->poll_list);			list_add_tail(&dev->poll_list, &queue->poll_list);			if (dev->quota < 0)				dev->quota += dev->weight;			else				dev->quota = dev->weight;		} else {			netpoll_poll_unlock(dev);			dev_put(dev);			local_irq_disable();		}	}out:	local_irq_enable();	return;softnet_break:	__get_cpu_var(netdev_rx_stat).time_squeeze++;	__raise_softirq_irqoff(NET_RX_SOFTIRQ);	goto out;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/53fb95d3c14290fd6ee808b221e35493f096246f/dev.c/clean/net/core/dev.c