dccp: Policy-based packet dequeueing infrastructure
authorTomasz Grobelny <tomasz@grobelny.oswiecenia.net>
Sat, 4 Dec 2010 12:38:01 +0000 (13:38 +0100)
committerGerrit Renker <gerrit@erg.abdn.ac.uk>
Tue, 7 Dec 2010 12:47:12 +0000 (13:47 +0100)
commit871a2c16c21b988688b4ab1a78eadd969765c0a3
tree34ffb3be1402747ef3b7fdb754fb99778bd45728
parentcfa969e385a23e4c85f50e0ed5de25a2e18bf9d4
dccp: Policy-based packet dequeueing infrastructure

This patch adds a generic infrastructure for policy-based dequeueing of
TX packets and provides two policies:
 * a simple FIFO policy (which is the default) and
 * a priority based policy (set via socket options).
Both policies honour the tx_qlen sysctl for the maximum size of the write
queue (can be overridden via socket options).

The priority policy uses skb->priority internally to assign an u32 priority
identifier, using the same ranking as SO_PRIORITY. The skb->priority field
is set to 0 when the packet leaves DCCP. The priority is supplied as ancillary
data using cmsg(3), the patch also provides the requisite parsing routines.

Signed-off-by: Tomasz Grobelny <tomasz@grobelny.oswiecenia.net>
Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Documentation/networking/dccp.txt
include/linux/dccp.h
net/dccp/Makefile
net/dccp/dccp.h
net/dccp/output.c
net/dccp/proto.c
net/dccp/qpolicy.c [new file with mode: 0644]