Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/bxe/bxe.c
Show All 12 Lines | |||||
"set by driver when grcdump is done"); | "set by driver when grcdump is done"); | ||||
sc->rx_budget = bxe_rx_budget; | sc->rx_budget = bxe_rx_budget; | ||||
SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "rx_budget", | SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "rx_budget", | ||||
CTLFLAG_RW, &sc->rx_budget, 0, | CTLFLAG_RW, &sc->rx_budget, 0, | ||||
"rx processing budget"); | "rx processing budget"); | ||||
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "pause_param", | SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "pause_param", | ||||
CTLTYPE_UINT | CTLFLAG_RW, sc, 0, | CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, | ||||
bxe_sysctl_pauseparam, "IU", | bxe_sysctl_pauseparam, "IU", | ||||
"need pause frames- DEF:0/TX:1/RX:2/BOTH:3/AUTO:4/AUTOTX:5/AUTORX:6/AUTORXTX:7/NONE:8"); | "need pause frames- DEF:0/TX:1/RX:2/BOTH:3/AUTO:4/AUTOTX:5/AUTORX:6/AUTORXTX:7/NONE:8"); | ||||
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "state", | SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "state", | ||||
CTLTYPE_UINT | CTLFLAG_RW, sc, 0, | CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, sc, 0, | ||||
bxe_sysctl_state, "IU", "dump driver state"); | bxe_sysctl_state, "IU", "dump driver state"); | ||||
for (i = 0; i < BXE_NUM_ETH_STATS; i++) { | for (i = 0; i < BXE_NUM_ETH_STATS; i++) { | ||||
SYSCTL_ADD_PROC(ctx, children, OID_AUTO, | SYSCTL_ADD_PROC(ctx, children, OID_AUTO, | ||||
bxe_eth_stats_arr[i].string, | bxe_eth_stats_arr[i].string, | ||||
CTLTYPE_U64 | CTLFLAG_RD, sc, i, | CTLTYPE_U64 | CTLFLAG_RD | CTLFLAG_NEEDGIANT, sc, i, | ||||
bxe_sysctl_eth_stat, "LU", | bxe_sysctl_eth_stat, "LU", | ||||
bxe_eth_stats_arr[i].string); | bxe_eth_stats_arr[i].string); | ||||
} | } | ||||
/* add a new parent node for all queues "dev.bxe.#.queue" */ | /* add a new parent node for all queues "dev.bxe.#.queue" */ | ||||
queue_top = SYSCTL_ADD_NODE(ctx, children, OID_AUTO, "queue", | queue_top = SYSCTL_ADD_NODE(ctx, children, OID_AUTO, "queue", | ||||
CTLFLAG_RD, NULL, "queue"); | CTLFLAG_RD, NULL, "queue"); | ||||
queue_top_children = SYSCTL_CHILDREN(queue_top); | queue_top_children = SYSCTL_CHILDREN(queue_top); | ||||
for (i = 0; i < sc->num_queues; i++) { | for (i = 0; i < sc->num_queues; i++) { | ||||
/* add a new parent node for a single queue "dev.bxe.#.queue.#" */ | /* add a new parent node for a single queue "dev.bxe.#.queue.#" */ | ||||
snprintf(queue_num_buf, sizeof(queue_num_buf), "%d", i); | snprintf(queue_num_buf, sizeof(queue_num_buf), "%d", i); | ||||
queue = SYSCTL_ADD_NODE(ctx, queue_top_children, OID_AUTO, | queue = SYSCTL_ADD_NODE(ctx, queue_top_children, OID_AUTO, | ||||
queue_num_buf, CTLFLAG_RD, NULL, | queue_num_buf, CTLFLAG_RD, NULL, | ||||
"single queue"); | "single queue"); | ||||
queue_children = SYSCTL_CHILDREN(queue); | queue_children = SYSCTL_CHILDREN(queue); | ||||
for (j = 0; j < BXE_NUM_ETH_Q_STATS; j++) { | for (j = 0; j < BXE_NUM_ETH_Q_STATS; j++) { | ||||
q_stat = ((i << 16) | j); | q_stat = ((i << 16) | j); | ||||
SYSCTL_ADD_PROC(ctx, queue_children, OID_AUTO, | SYSCTL_ADD_PROC(ctx, queue_children, OID_AUTO, | ||||
bxe_eth_q_stats_arr[j].string, | bxe_eth_q_stats_arr[j].string, | ||||
CTLTYPE_U64 | CTLFLAG_RD, sc, q_stat, | CTLTYPE_U64 | CTLFLAG_RD | CTLFLAG_NEEDGIANT, | ||||
sc, q_stat, | |||||
bxe_sysctl_eth_q_stat, "LU", | bxe_sysctl_eth_q_stat, "LU", | ||||
bxe_eth_q_stats_arr[j].string); | bxe_eth_q_stats_arr[j].string); | ||||
} | } | ||||
} | } | ||||
} | } | ||||
static int | static int | ||||
bxe_alloc_buf_rings(struct bxe_softc *sc) | bxe_alloc_buf_rings(struct bxe_softc *sc) | ||||
Show All 12 Lines |