Index: mips/cavium/octe/ethernet-defines.h =================================================================== --- mips/cavium/octe/ethernet-defines.h (revision 342654) +++ mips/cavium/octe/ethernet-defines.h (working copy) @@ -38,7 +38,7 @@ * the driver uses the default from below. */ -#define INTERRUPT_LIMIT 10000 /* Max interrupts per second per core */ +#define INTERRUPT_LIMIT 1000 /* Max interrupts per second per core */ /*#define INTERRUPT_LIMIT 0 *//* Don't limit the number of interrupts */ #define USE_RED 1 /* Enable Random Early Dropping under load */ #define USE_10MBPS_PREAMBLE_WORKAROUND 1 /* Allow SW based preamble removal at 10Mbps to workaround PHYs giving us bad preambles */ @@ -45,7 +45,7 @@ #define DONT_WRITEBACK(x) (x) /* Use this to have all FPA frees also tell the L2 not to write data to memory */ /*#define DONT_WRITEBACK(x) 0 *//* Use this to not have FPA frees control L2 */ -#define MAX_RX_PACKETS 120 /* Maximum number of packets to process per interrupt. */ +#define MAX_RX_PACKETS 1024 /* Maximum number of packets to process per interrupt. */ #define MAX_OUT_QUEUE_DEPTH 1000 #define FAU_NUM_PACKET_BUFFERS_TO_FREE (CVMX_FAU_REG_END - sizeof(uint32_t)) Index: mips/cavium/octe/ethernet-rx.c =================================================================== --- mips/cavium/octe/ethernet-rx.c (revision 342654) +++ mips/cavium/octe/ethernet-rx.c (working copy) @@ -57,8 +57,6 @@ static struct task cvm_oct_task; static struct taskqueue *cvm_oct_taskq; -static int cvm_oct_rx_active; - /** * Interrupt handler. The interrupt occurs whenever the POW * transitions from 0->1 packets in our group. @@ -71,16 +69,15 @@ int cvm_oct_do_interrupt(void *dev_id) { /* Acknowledge the interrupt */ - if (INTERRUPT_LIMIT) + if (0 && INTERRUPT_LIMIT) cvmx_write_csr(CVMX_POW_WQ_INT, 1<