netdev
[Top] [All Lists]

[code] new NAPI helper functions

To: linux-net@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx
Subject: [code] new NAPI helper functions
From: Jeff Garzik <jgarzik@xxxxxxxxx>
Date: Tue, 18 Feb 2003 01:54:55 -0500
Organization: none
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021213 Debian/1.2.1-2.bunk
Here are some functions in tg3, that I would like to eventually make available to all net drivers (and other net stack users).
/* these three netif_xxx funcs should be moved into generic net layer */
static void netif_poll_disable(struct net_device *dev)
{
        while (test_and_set_bit(__LINK_STATE_RX_SCHED, &dev->state)) {
                current->state = TASK_INTERRUPTIBLE;
                schedule_timeout(1);
        }
}

static inline void netif_poll_enable(struct net_device *dev)
{
        clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
}

/* same as netif_rx_complete, except that local_irq_save(flags)
 * has already been issued
 */
static inline void __netif_rx_complete(struct net_device *dev)
{
        if (!test_bit(__LINK_STATE_RX_SCHED, &dev->state)) BUG();
        list_del(&dev->poll_list);
        clear_bit(__LINK_STATE_RX_SCHED, &dev->state);
}

<Prev in Thread] Current Thread [Next in Thread>