prism54: convert to internal net_device_stats
[safe/jmp/linux-2.6] / drivers / net / chelsio / sge.c
index 1da7007..58f6fc0 100644 (file)
@@ -1609,11 +1609,10 @@ static int process_pure_responses(struct adapter *adapter)
 int t1_poll(struct napi_struct *napi, int budget)
 {
        struct adapter *adapter = container_of(napi, struct adapter, napi);
-       struct net_device *dev = adapter->port[0].dev;
        int work_done = process_responses(adapter, budget);
 
        if (likely(work_done < budget)) {
-               netif_rx_complete(dev, napi);
+               napi_complete(napi);
                writel(adapter->sge->respQ.cidx,
                       adapter->regs + A_SG_SLEEPING);
        }
@@ -1627,13 +1626,11 @@ irqreturn_t t1_interrupt(int irq, void *data)
        int handled;
 
        if (likely(responses_pending(adapter))) {
-               struct net_device *dev = sge->netdev;
-
                writel(F_PL_INTR_SGE_DATA, adapter->regs + A_PL_CAUSE);
 
                if (napi_schedule_prep(&adapter->napi)) {
                        if (process_pure_responses(adapter))
-                               __netif_rx_schedule(dev, &adapter->napi);
+                               __napi_schedule(&adapter->napi);
                        else {
                                /* no data, no NAPI needed */
                                writel(sge->respQ.cidx, adapter->regs + A_SG_SLEEPING);
@@ -1970,8 +1967,7 @@ void t1_sge_stop(struct sge *sge)
                tx_sched_stop(sge);
 
        for (i = 0; i < MAX_NPORTS; i++)
-               if (sge->espibug_skb[i])
-                       kfree_skb(sge->espibug_skb[i]);
+               kfree_skb(sge->espibug_skb[i]);
 }
 
 /*