/Linux-v6.1/drivers/net/ethernet/netronome/nfp/abm/ |
D | qdisc.c | 16 static bool nfp_abm_qdisc_is_red(struct nfp_qdisc *qdisc) in nfp_abm_qdisc_is_red() argument 18 return qdisc->type == NFP_QDISC_RED || qdisc->type == NFP_QDISC_GRED; in nfp_abm_qdisc_is_red() 21 static bool nfp_abm_qdisc_child_valid(struct nfp_qdisc *qdisc, unsigned int id) in nfp_abm_qdisc_child_valid() argument 23 return qdisc->children[id] && in nfp_abm_qdisc_child_valid() 24 qdisc->children[id] != NFP_QDISC_UNTRACKED; in nfp_abm_qdisc_child_valid() 45 nfp_abm_stats_update_red(struct nfp_abm_link *alink, struct nfp_qdisc *qdisc, in nfp_abm_stats_update_red() argument 52 if (!qdisc->offloaded) in nfp_abm_stats_update_red() 55 for (i = 0; i < qdisc->red.num_bands; i++) { in nfp_abm_stats_update_red() 57 &qdisc->red.band[i].stats); in nfp_abm_stats_update_red() 63 &qdisc->red.band[i].xstats); in nfp_abm_stats_update_red() [all …]
|
/Linux-v6.1/net/sched/ |
D | sch_generic.c | 628 static int noop_enqueue(struct sk_buff *skb, struct Qdisc *qdisc, in noop_enqueue() argument 635 static struct sk_buff *noop_dequeue(struct Qdisc *qdisc) in noop_dequeue() argument 650 RCU_POINTER_INITIALIZER(qdisc, &noop_qdisc), 677 static int noqueue_init(struct Qdisc *qdisc, struct nlattr *opt, in noqueue_init() argument 683 qdisc->enqueue = NULL; in noqueue_init() 721 static int pfifo_fast_enqueue(struct sk_buff *skb, struct Qdisc *qdisc, in pfifo_fast_enqueue() argument 725 struct pfifo_fast_priv *priv = qdisc_priv(qdisc); in pfifo_fast_enqueue() 733 if (qdisc_is_percpu_stats(qdisc)) in pfifo_fast_enqueue() 734 return qdisc_drop_cpu(skb, qdisc, to_free); in pfifo_fast_enqueue() 736 return qdisc_drop(skb, qdisc, to_free); in pfifo_fast_enqueue() [all …]
|
D | sch_mq.c | 73 struct Qdisc *qdisc; in mq_init() local 90 qdisc = qdisc_create_dflt(dev_queue, get_default_qdisc_ops(dev, ntx), in mq_init() 94 if (!qdisc) in mq_init() 96 priv->qdiscs[ntx] = qdisc; in mq_init() 97 qdisc->flags |= TCQ_F_ONETXQUEUE | TCQ_F_NOPARENT; in mq_init() 110 struct Qdisc *qdisc, *old; in mq_attach() local 114 qdisc = priv->qdiscs[ntx]; in mq_attach() 115 old = dev_graft_qdisc(qdisc->dev_queue, qdisc); in mq_attach() 120 qdisc_hash_add(qdisc, false); in mq_attach() 131 struct Qdisc *qdisc; in mq_dump() local [all …]
|
D | sch_mqprio.c | 139 struct Qdisc *qdisc; in mqprio_init() local 228 qdisc = qdisc_create_dflt(dev_queue, in mqprio_init() 232 if (!qdisc) in mqprio_init() 235 priv->qdiscs[i] = qdisc; in mqprio_init() 236 qdisc->flags |= TCQ_F_ONETXQUEUE | TCQ_F_NOPARENT; in mqprio_init() 293 struct Qdisc *qdisc, *old; in mqprio_attach() local 298 qdisc = priv->qdiscs[ntx]; in mqprio_attach() 299 old = dev_graft_qdisc(qdisc->dev_queue, qdisc); in mqprio_attach() 303 qdisc_hash_add(qdisc, false); in mqprio_attach() 389 struct Qdisc *qdisc; in mqprio_dump() local [all …]
|
D | sch_cbs.c | 84 struct Qdisc *qdisc; member 109 struct Qdisc *qdisc = q->qdisc; in cbs_enqueue_offload() local 111 return cbs_child_enqueue(skb, sch, qdisc, to_free); in cbs_enqueue_offload() 118 struct Qdisc *qdisc = q->qdisc; in cbs_enqueue_soft() local 128 return cbs_child_enqueue(skb, sch, qdisc, to_free); in cbs_enqueue_soft() 179 struct Qdisc *qdisc = q->qdisc; in cbs_dequeue_soft() local 207 skb = cbs_child_dequeue(sch, qdisc); in cbs_dequeue_soft() 234 struct Qdisc *qdisc = q->qdisc; in cbs_dequeue_offload() local 236 return cbs_child_dequeue(sch, qdisc); in cbs_dequeue_offload() 347 qdev = qdisc_dev(q->qdisc); in cbs_dev_notifier() [all …]
|
D | sch_drr.c | 26 struct Qdisc *qdisc; member 111 cl->qdisc = qdisc_create_dflt(sch->dev_queue, in drr_change_class() 114 if (cl->qdisc == NULL) in drr_change_class() 115 cl->qdisc = &noop_qdisc; in drr_change_class() 117 qdisc_hash_add(cl->qdisc, true); in drr_change_class() 124 qdisc_put(cl->qdisc); in drr_change_class() 143 qdisc_put(cl->qdisc); in drr_destroy_class() 158 qdisc_purge_queue(cl->qdisc); in drr_delete_class() 216 *old = qdisc_replace(sch, new, &cl->qdisc); in drr_graft_class() 224 return cl->qdisc; in drr_class_leaf() [all …]
|
D | sch_ets.c | 41 struct Qdisc *qdisc; member 262 *old = qdisc_replace(sch, new, &cl->qdisc); in ets_class_graft() 271 return cl->qdisc; in ets_class_leaf() 306 tcm->tcm_info = cl->qdisc->handle; in ets_class_dump() 326 struct Qdisc *cl_q = cl->qdisc; in ets_class_dump_stats() 427 first = !cl->qdisc->q.qlen; in ets_qdisc_enqueue() 428 err = qdisc_enqueue(skb, cl->qdisc, to_free); in ets_qdisc_enqueue() 467 skb = qdisc_dequeue_peeked(cl->qdisc); in ets_qdisc_dequeue() 476 skb = cl->qdisc->ops->peek(cl->qdisc); in ets_qdisc_dequeue() 478 qdisc_warn_nonwc(__func__, cl->qdisc); in ets_qdisc_dequeue() [all …]
|
D | sch_tbf.c | 110 struct Qdisc *qdisc; /* Inner qdisc, default - bfifo queue */ member 223 ret = qdisc_enqueue(segs, q->qdisc, to_free); in tbf_segment() 251 ret = qdisc_enqueue(skb, q->qdisc, to_free); in tbf_enqueue() 273 skb = q->qdisc->ops->peek(q->qdisc); in tbf_dequeue() 296 skb = qdisc_dequeue_peeked(q->qdisc); in tbf_dequeue() 332 qdisc_reset(q->qdisc); in tbf_reset() 430 if (q->qdisc != &noop_qdisc) { in tbf_change() 431 err = fifo_set_limit(q->qdisc, qopt->limit); in tbf_change() 448 qdisc_tree_flush_backlog(q->qdisc); in tbf_change() 449 old = q->qdisc; in tbf_change() [all …]
|
D | sch_multiq.c | 63 struct Qdisc *qdisc; in multiq_enqueue() local 66 qdisc = multiq_classify(skb, sch, &ret); in multiq_enqueue() 68 if (qdisc == NULL) { in multiq_enqueue() 77 ret = qdisc_enqueue(skb, qdisc, to_free); in multiq_enqueue() 90 struct Qdisc *qdisc; in multiq_dequeue() local 105 qdisc = q->queues[q->curband]; in multiq_dequeue() 106 skb = qdisc->dequeue(qdisc); in multiq_dequeue() 122 struct Qdisc *qdisc; in multiq_peek() local 137 qdisc = q->queues[curband]; in multiq_peek() 138 skb = qdisc->ops->peek(qdisc); in multiq_peek()
|
/Linux-v6.1/include/net/ |
D | sch_generic.h | 133 static inline void qdisc_refcount_inc(struct Qdisc *qdisc) in qdisc_refcount_inc() argument 135 if (qdisc->flags & TCQ_F_BUILTIN) in qdisc_refcount_inc() 137 refcount_inc(&qdisc->refcnt); in qdisc_refcount_inc() 144 static inline struct Qdisc *qdisc_refcount_inc_nz(struct Qdisc *qdisc) in qdisc_refcount_inc_nz() argument 146 if (qdisc->flags & TCQ_F_BUILTIN) in qdisc_refcount_inc_nz() 147 return qdisc; in qdisc_refcount_inc_nz() 148 if (refcount_inc_not_zero(&qdisc->refcnt)) in qdisc_refcount_inc_nz() 149 return qdisc; in qdisc_refcount_inc_nz() 157 static inline bool qdisc_is_running(struct Qdisc *qdisc) in qdisc_is_running() argument 159 if (qdisc->flags & TCQ_F_NOLOCK) in qdisc_is_running() [all …]
|
/Linux-v6.1/tools/testing/selftests/net/forwarding/ |
D | sch_tbf_etsprio.sh | 17 tc qdisc replace dev $swp2 parent 10:3 handle 103: tbf \ 19 tc qdisc replace dev $swp2 parent 10:2 handle 102: tbf \ 32 tc qdisc add dev $swp2 root handle 10: $QDISC 3 priomap 2 1 0 34 tc qdisc del dev $swp2 root 43 tc qdisc replace dev $swp2 root handle 1: \ 45 tc qdisc replace dev $swp2 parent 1:1 handle 10: \ 47 tc qdisc replace dev $swp2 parent 10:3 handle 103: \ 49 tc qdisc replace dev $swp2 parent 10:2 handle 102: \ 51 tc qdisc replace dev $swp2 parent 10:1 handle 101: \ 57 tc qdisc del dev $swp2 root
|
D | tc_mpls_l2vpn.sh | 81 tc qdisc add dev $edge1 ingress 89 tc qdisc add dev $mpls1 ingress 102 tc qdisc del dev $mpls1 ingress 105 tc qdisc del dev $edge1 ingress 110 tc qdisc add dev $edge2 ingress 118 tc qdisc add dev $mpls2 ingress 131 tc qdisc del dev $mpls2 ingress 134 tc qdisc del dev $edge2 ingress
|
D | skbedit_priority.sh | 63 tc qdisc add dev $swp1 clsact 64 tc qdisc add dev $swp2 clsact 65 tc qdisc add dev $swp2 root handle 10: \ 71 tc qdisc del dev $swp2 root 72 tc qdisc del dev $swp2 clsact 73 tc qdisc del dev $swp1 clsact
|
D | pedit_ip.sh | 47 tc qdisc add dev $h2 clsact 52 tc qdisc del dev $h2 clsact 64 tc qdisc add dev $swp1 clsact 65 tc qdisc add dev $swp2 clsact 70 tc qdisc del dev $swp2 clsact 71 tc qdisc del dev $swp1 clsact
|
D | pedit_l4port.sh | 48 tc qdisc add dev $h2 clsact 53 tc qdisc del dev $h2 clsact 65 tc qdisc add dev $swp1 clsact 66 tc qdisc add dev $swp2 clsact 71 tc qdisc del dev $swp2 clsact 72 tc qdisc del dev $swp1 clsact
|
/Linux-v6.1/include/trace/events/ |
D | qdisc.h | 2 #define TRACE_SYSTEM qdisc 16 TP_PROTO(struct Qdisc *qdisc, const struct netdev_queue *txq, 19 TP_ARGS(qdisc, txq, packets, skb), 22 __field( struct Qdisc *, qdisc ) 34 __entry->qdisc = qdisc; 39 __entry->handle = qdisc->handle; 40 __entry->parent = qdisc->parent; 51 TP_PROTO(struct Qdisc *qdisc, const struct netdev_queue *txq, struct sk_buff *skb), 53 TP_ARGS(qdisc, txq, skb), 56 __field(struct Qdisc *, qdisc) [all …]
|
/Linux-v6.1/tools/testing/selftests/drivers/net/mlxsw/ |
D | tc_restrictions.sh | 44 tc qdisc add dev $swp1 ingress_block 22 clsact 51 tc qdisc add dev $swp2 ingress_block 22 clsact 54 tc qdisc del dev $swp2 clsact 56 tc qdisc add dev $swp2 egress_block 22 clsact 61 tc qdisc add dev $swp2 egress_block 22 clsact 68 tc qdisc del dev $swp1 clsact 70 tc qdisc add dev $swp1 egress_block 22 clsact 79 tc qdisc del dev $swp2 clsact 80 tc qdisc del dev $swp1 clsact 92 tc qdisc add dev $swp1 ingress_block 22 clsact [all …]
|
D | sch_offload.sh | 57 tc qdisc add dev $h1 $locus handle $handle \ 60 tc qdisc del dev $h1 $locus 68 tc qdisc add dev $h1 $locus handle $handle \ 71 tc qdisc del dev $h1 $locus 79 tc qdisc add dev $h1 $locus handle $handle \ 82 tc qdisc del dev $h1 $locus 90 tc qdisc add dev $h1 $locus handle $handle \ 93 tc qdisc del dev $h1 $locus 101 tc qdisc add dev $h1 $locus handle $handle pfifo limit 100K 103 tc qdisc del dev $h1 $locus [all …]
|
D | qos_headroom.sh | 169 tc qdisc replace dev $swp root handle 1: bfifo limit 1.5M 171 tc qdisc delete dev $swp root 249 tc qdisc replace dev $swp root handle 1: bfifo limit 1.5M 255 tc qdisc delete dev $swp root 259 tc qdisc replace dev $swp root handle 1: bfifo limit 1.5M 261 tc qdisc delete dev $swp root 277 tc qdisc replace dev $swp root handle 1: bfifo limit 1.5M 291 tc qdisc replace dev $swp root handle 1: bfifo limit 1M 299 tc qdisc replace dev $swp root handle 2: prio bands 8 304 tc qdisc delete dev $swp root [all …]
|
D | sch_red_ets.sh | 28 tc qdisc add dev $swp3 parent 1: handle 10: $QDISC \ 36 tc qdisc add dev $swp3 parent 10:8 handle 108: red \ 45 tc qdisc add dev $swp3 parent 10:7 handle 107: red \ 60 tc qdisc del dev $swp3 parent 10:8 65 tc qdisc del dev $swp3 parent 10:7 70 tc qdisc del dev $swp3 parent 1:
|
D | qos_dscp_router.sh | 68 tc qdisc add dev $h1 clsact 77 tc qdisc del dev $h1 clsact 84 tc qdisc add dev $h2 clsact 93 tc qdisc del dev $h2 clsact 112 tc qdisc add dev $swp1 clsact 113 tc qdisc add dev $swp2 clsact 127 tc qdisc del dev $swp2 clsact 128 tc qdisc del dev $swp1 clsact
|
D | rif_mac_profiles.sh | 19 tc qdisc add dev $h1 ingress 24 tc qdisc del dev $h1 ingress 35 tc qdisc add dev $h2 ingress 40 tc qdisc del dev $h2 ingress 51 tc qdisc add dev $rp1 clsact 52 tc qdisc add dev $rp2 clsact 61 tc qdisc del dev $rp2 clsact 62 tc qdisc del dev $rp1 clsact
|
D | qos_pfc.sh | 172 tc qdisc replace dev $swp1 root handle 1: \ 188 tc qdisc replace dev $swp2 root handle 1: \ 190 tc qdisc replace dev $swp2 parent 1:7 handle 17: \ 205 tc qdisc replace dev $swp3 root handle 1: \ 227 tc qdisc replace dev $swp4 root handle 1: \ 279 tc qdisc del dev $swp4 root 293 tc qdisc del dev $swp3 root 305 tc qdisc del dev $swp2 parent 1:7 306 tc qdisc del dev $swp2 root 319 tc qdisc del dev $swp1 root
|
/Linux-v6.1/samples/bpf/ |
D | do_hbm_test.sh | 90 qdisc="" 148 qdisc="fq" 169 qdisc="${i#*=}" 236 if [ "$qdisc" != "" ] ; then 239 tc qdisc del dev lo root > /dev/null 2>&1 240 tc qdisc add dev lo root netem delay $netem\ms > /dev/null 2>&1 241 elif [ "$qdisc" != "" ] ; then 242 tc qdisc del dev eth0 root > /dev/null 2>&1 243 tc qdisc add dev eth0 root $qdisc > /dev/null 2>&1 411 tc qdisc del dev lo root > /dev/null 2>&1 [all …]
|
/Linux-v6.1/Documentation/networking/ |
D | multiqueue.rst | 32 default pfifo_fast qdisc. This qdisc supports one qdisc per hardware queue. 33 A new round-robin qdisc, sch_multiq also supports multiple hardware queues. The 34 qdisc is responsible for classifying the skb's and then directing the skb's to 42 On qdisc load, the number of bands is based on the number of queues on the 51 qdiscs. To add the MULTIQ qdisc to your network device, assuming the device 54 # tc qdisc add dev eth0 root handle 1: multiq 56 The qdisc will allocate the number of bands to equal the number of queues that 57 the device reports, and bring the qdisc online. Assuming eth0 has 4 Tx
|