Skip to content

Commit

Permalink
bnx2x: Unlimited Tx interrupt work
Browse files Browse the repository at this point in the history
The Tx interrupt is very short and there is no need to limit it to a budget

Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Eilon Greenstein authored and David S. Miller committed Mar 3, 2009
1 parent 1611978 commit 7961f79
Showing 1 changed file with 4 additions and 7 deletions.
11 changes: 4 additions & 7 deletions drivers/net/bnx2x_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -874,7 +874,7 @@ static inline u16 bnx2x_tx_avail(struct bnx2x_fastpath *fp)
return (s16)(fp->bp->tx_ring_size) - used;
}

static void bnx2x_tx_int(struct bnx2x_fastpath *fp, int work)
static void bnx2x_tx_int(struct bnx2x_fastpath *fp)
{
struct bnx2x *bp = fp->bp;
struct netdev_queue *txq;
Expand Down Expand Up @@ -908,9 +908,6 @@ static void bnx2x_tx_int(struct bnx2x_fastpath *fp, int work)
bd_cons = bnx2x_free_tx_pkt(bp, fp, pkt_cons);
sw_cons++;
done++;

if (done == work)
break;
}

fp->tx_pkt_cons = sw_cons;
Expand Down Expand Up @@ -4177,7 +4174,7 @@ static void bnx2x_timer(unsigned long data)
struct bnx2x_fastpath *fp = &bp->fp[0];
int rc;

bnx2x_tx_int(fp, 1000);
bnx2x_tx_int(fp);
rc = bnx2x_rx_int(fp, 1000);
}

Expand Down Expand Up @@ -7217,7 +7214,7 @@ static int bnx2x_nic_unload(struct bnx2x *bp, int unload_mode)
cnt = 1000;
while (bnx2x_has_tx_work_unload(fp)) {

bnx2x_tx_int(fp, 1000);
bnx2x_tx_int(fp);
if (!cnt) {
BNX2X_ERR("timeout waiting for queue[%d]\n",
i);
Expand Down Expand Up @@ -10069,7 +10066,7 @@ static int bnx2x_poll(struct napi_struct *napi, int budget)
bnx2x_update_fpsb_idx(fp);

if (bnx2x_has_tx_work(fp))
bnx2x_tx_int(fp, budget);
bnx2x_tx_int(fp);

if (bnx2x_has_rx_work(fp))
work_done = bnx2x_rx_int(fp, budget);
Expand Down

0 comments on commit 7961f79

Please sign in to comment.