linux/net/sched
Patrick McHardy 48a8f519e0 pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs.
From: Patrick McHardy <kaber@trash.net>

Just as a demonstration how easy adding a peek operation to the
work-conserving qdiscs actually is. It doesn't need to keep or change
any internal state in many cases thanks to the guarantee that the
packet will either be dequeued or, if another packet arrives, the
upper qdisc will immediately ->peek again to reevaluate the state.

(This is only slightly modified Patrick's patch.)

Signed-off-by: Jarek Poplawski <jarkao2@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-10-31 00:44:18 -07:00
..
Kconfig pkt_action: add new action skbedit 2008-09-12 16:30:20 -07:00
Makefile pkt_action: add new action skbedit 2008-09-12 16:30:20 -07:00
act_api.c net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely) 2008-10-16 15:24:51 -07:00
act_gact.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
act_ipt.c netfilter: xtables: provide invoked family value to extensions 2008-10-08 11:35:20 +02:00
act_mirred.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
act_nat.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
act_pedit.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
act_police.c net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
act_simple.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
act_skbedit.c pkt_action: add new action skbedit 2008-09-12 16:30:20 -07:00
cls_api.c net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely) 2008-10-16 15:24:51 -07:00
cls_basic.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_flow.c net: Use hton[sl]() instead of __constant_hton[sl]() where applicable 2008-09-20 22:20:49 -07:00
cls_fw.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_route.c pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock() 2008-08-29 14:27:52 -07:00
cls_rsvp.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_rsvp.h [NET_SCHED]: Use nla_policy for attribute validation in classifiers 2008-01-28 15:11:23 -08:00
cls_rsvp6.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_tcindex.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_u32.c net: convert BUG_TRAP to generic WARN_ON 2008-07-25 21:43:18 -07:00
em_cmp.c net: em_cmp.c use unaligned access helpers 2008-09-22 19:20:51 -07:00
em_meta.c [IPV4]: Add 'rtable' field in struct sk_buff to alias 'dst' and avoid casts 2008-03-05 18:30:47 -08:00
em_nbyte.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
em_text.c [NET_SCHED]: Convert classifiers from rtnetlink to new netlink API 2008-01-28 15:11:11 -08:00
em_u32.c [PKT_SCHED]: annotate cls_u32 2008-03-17 22:46:46 -07:00
ematch.c net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely) 2008-10-16 15:24:51 -07:00
sch_api.c net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely) 2008-10-16 15:24:51 -07:00
sch_atm.c net_sched: Add qdisc __NET_XMIT_BYPASS flag 2008-08-04 22:39:11 -07:00
sch_blackhole.c [NET]: Move Qdisc_class_ops and Qdisc_ops in appropriate sections. 2008-01-28 14:53:58 -08:00
sch_cbq.c hrtimer: convert net::sched_cbq to the new hrtimer apis 2008-09-05 21:35:11 -07:00
sch_dsmark.c net: Use hton[sl]() instead of __constant_hton[sl]() where applicable 2008-09-20 22:20:49 -07:00
sch_fifo.c pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs. 2008-10-31 00:44:18 -07:00
sch_generic.c pkt_sched: sch_generic: Fix oops in sch_teql 2008-10-19 23:37:47 -07:00
sch_gred.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
sch_hfsc.c pkt_sched: Fix gen_estimator locks 2008-08-27 02:25:17 -07:00
sch_htb.c pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock() 2008-08-29 14:27:52 -07:00
sch_ingress.c net_sched: Add accessor function for packet length for qdiscs 2008-07-20 00:08:27 -07:00
sch_multiq.c multiq: requeue should rewind the current_band 2008-09-20 22:07:34 -07:00
sch_netem.c netlink: Remove compat API for nested attributes 2008-09-02 17:30:27 -07:00
sch_prio.c pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs. 2008-10-31 00:44:18 -07:00
sch_red.c net_sched: Add qdisc __NET_XMIT_STOLEN flag 2008-08-04 22:31:03 -07:00
sch_sfq.c pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs. 2008-10-31 00:44:18 -07:00
sch_tbf.c pkt_sched: Fix return value corruption in HTB and TBF. 2008-08-18 00:39:41 -07:00
sch_teql.c pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock() 2008-08-29 14:27:52 -07:00