Lines Matching refs:queues
186 /* Number of Queues - do not exceed MSI-X vectors - 1 */
530 /* Allocate our TX/RX Queues */
654 evcnt_detach(&sc->queues[i].irqs);
655 evcnt_detach(&sc->queues[i].handleq);
656 evcnt_detach(&sc->queues[i].req);
724 for (i = 0, que = sc->queues; i < sc->num_queues; i++, que++)
784 for (i = 0, que = sc->queues; i < sc->num_queues; i++, que++)
833 struct ix_queue *que = &sc->queues[vector];
854 struct ix_queue *que = &sc->queues[vector];
870 ixv_rearm_queues(struct ixgbe_softc *sc, u64 queues)
872 u32 mask = (IXGBE_EIMS_RTX_QUEUE & queues);
1285 struct ix_queue *que = sc->queues;
1286 u64 queues = 0;
1304 que = sc->queues;
1327 * Check the TX queues status
1328 * - mark hung queues so we don't schedule on them
1329 * - watchdog only if all queues show hung
1331 que = sc->queues;
1333 /* Keep track of queues with work for soft irq */
1335 queues |= ((u64)1 << que->me);
1359 /* Only truly watchdog if all queues show hung */
1363 else if (queues != 0) { /* Force an IRQ on queues with work */
1364 ixv_rearm_queues(sc, queues);
1547 /* Pick up the tuneable queues */
1556 struct ix_queue *que = sc->queues;
1592 struct ix_queue *que = sc->queues;
2126 /* Enable the queues */
2320 struct ix_queue *que = sc->queues;
2332 que = sc->queues;
2345 struct ix_queue *que = sc->queues;
2349 /* disable interrupts other than queues */
2394 struct ix_queue *que = sc->queues;
2662 snprintf(sc->queues[i].evnamebuf,
2663 sizeof(sc->queues[i].evnamebuf), "%s q%d", xname, i);
2664 snprintf(sc->queues[i].namebuf,
2665 sizeof(sc->queues[i].namebuf), "q%d", i);
2675 sc->queues[i].namebuf, SYSCTL_DESCR("Queue Name"),
2683 (void *)&sc->queues[i], 0, CTL_CREATE, CTL_EOL) != 0)
2728 evcnt_attach_dynamic(&sc->queues[i].irqs, EVCNT_TYPE_INTR,
2729 NULL, sc->queues[i].evnamebuf, "IRQs on queue");
2730 evcnt_attach_dynamic(&sc->queues[i].handleq,
2731 EVCNT_TYPE_MISC, NULL, sc->queues[i].evnamebuf,
2733 evcnt_attach_dynamic(&sc->queues[i].req, EVCNT_TYPE_MISC,
2734 NULL, sc->queues[i].evnamebuf, "Requeued in softint");
2736 NULL, sc->queues[i].evnamebuf,
2740 NULL, sc->queues[i].evnamebuf,
2744 NULL, sc->queues[i].evnamebuf,
2747 NULL, sc->queues[i].evnamebuf, "TSO");
2750 NULL, sc->queues[i].evnamebuf,
2753 NULL, sc->queues[i].evnamebuf,
2756 NULL, sc->queues[i].evnamebuf, "Rx no mbuf");
2758 NULL, sc->queues[i].evnamebuf, "Rx discarded");
2760 NULL, sc->queues[i].evnamebuf, "Copied RX Frames");
2834 IXGBE_EVC_STORE(&sc->queues[i].irqs, 0);
2835 IXGBE_EVC_STORE(&sc->queues[i].handleq, 0);
2836 IXGBE_EVC_STORE(&sc->queues[i].req, 0);
3317 if ((&sc->queues[0] == que)
3365 struct ix_queue *que = sc->queues;
3528 int want, queues, msgs;
3539 queues = (ncpu > (msgs - 1)) ? (msgs - 1) : ncpu;
3542 queues = ixv_num_queues;
3543 else if ((ixv_num_queues == 0) && (queues > IXGBE_VF_MAX_TX_QUEUES))
3544 queues = IXGBE_VF_MAX_TX_QUEUES;
3547 * Want vectors for the queues,
3550 want = queues + 1;
3556 "%d vectors but %d queues wanted!\n", msgs, want);
3562 sc->num_queues = queues;