<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/include/net/sch_generic.h, branch linux-2.6.24.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.24.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.24.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-01-09T07:30:17Z</updated>
<entry>
<title>[NET]: Clone the sk_buff 'iif' field in __skb_clone()</title>
<updated>2008-01-09T07:30:17Z</updated>
<author>
<name>Paul Moore</name>
</author>
<published>2008-01-08T05:56:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=02f1c89d6e36507476f78108a3dcc78538be460b'/>
<id>urn:sha1:02f1c89d6e36507476f78108a3dcc78538be460b</id>
<content type='text'>
Both NetLabel and SELinux (other LSMs may grow to use it as well) rely
on the 'iif' field to determine the receiving network interface of
inbound packets.  Unfortunately, at present this field is not
preserved across a skb clone operation which can lead to garbage
values if the cloned skb is sent back through the network stack.  This
patch corrects this problem by properly copying the 'iif' field in
__skb_clone() and removing the 'iif' field assignment from
skb_act_clone() since it is no longer needed.

Also, while we are here, put the assignments in the same order as the
offsets to reduce cacheline bounces.

Signed-off-by: Paul Moore &lt;paul.moore@hp.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_CLS_ACT]: Introduce skb_act_clone</title>
<updated>2007-10-26T09:47:23Z</updated>
<author>
<name>Jamal Hadi Salim</name>
</author>
<published>2007-10-26T09:47:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=12da81d11a34d3bdef52d731cc75f7ec72d0e815'/>
<id>urn:sha1:12da81d11a34d3bdef52d731cc75f7ec72d0e815</id>
<content type='text'>
Reworked skb_clone looks uglier with the single ifdef
CONFIG_NET_CLS_ACT This patch introduces skb_act_clone which will
replace skb_clone in tc actions

Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: Making rate table lookups more flexible.</title>
<updated>2007-10-10T23:49:20Z</updated>
<author>
<name>Jesper Dangaard Brouer</name>
</author>
<published>2007-09-12T14:36:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e08b09983fe9cf379faf1aefdf9164268d4610e7'/>
<id>urn:sha1:e08b09983fe9cf379faf1aefdf9164268d4610e7</id>
<content type='text'>
This is done in order to, add support to changing the rate table to
use the upper-boundry L2T (length to time) value. Currently we use the
lower-boundry, which result in under-estimating the actual bandwidth
usage.

Extend the tc_ratespec struct, with two parameters: 1) "cell_align"
that allow adjusting the alignment of the rate table. 2) "overhead"
that allow adding a packet overhead before the lookup.

Signed-off-by: Jesper Dangaard Brouer &lt;hawk@comx.dk&gt;
Acked-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: Cleanup L2T macros and handle oversized packets</title>
<updated>2007-10-10T23:49:20Z</updated>
<author>
<name>Jesper Dangaard Brouer</name>
</author>
<published>2007-09-12T14:35:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e9bef55d3d062ee7a78fde2913ec87ca9305a1e0'/>
<id>urn:sha1:e9bef55d3d062ee7a78fde2913ec87ca9305a1e0</id>
<content type='text'>
Change L2T (length to time) macros, in all rate based schedulers, to
call a common function qdisc_l2t() that does the rate table lookup.
This function handles if the packet size lookup is larger than the
rate table, which often occurs with TSO enabled.

Signed-off-by: Jesper Dangaard Brouer &lt;hawk@comx.dk&gt;
Acked-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: Kill CONFIG_NET_CLS_POLICE</title>
<updated>2007-07-15T07:03:05Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2007-07-15T07:03:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c3bc7cff8fddb6ff9715be8bfc3d911378c4d69d'/>
<id>urn:sha1:c3bc7cff8fddb6ff9715be8bfc3d911378c4d69d</id>
<content type='text'>
The NET_CLS_ACT option is now a full replacement for NET_CLS_POLICE,
remove the old code. The config option will be kept around to select
the equivalent NET_CLS_ACT options for a short time to allow easier
upgrades.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: act_api: qdisc internal reclassify support</title>
<updated>2007-07-15T07:02:31Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2007-07-15T07:02:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=73ca4918fbb98311421259d82ef4ab44feeace43'/>
<id>urn:sha1:73ca4918fbb98311421259d82ef4ab44feeace43</id>
<content type='text'>
The behaviour of NET_CLS_POLICE for TC_POLICE_RECLASSIFY was to return
it to the qdisc, which could handle it internally or ignore it. With
NET_CLS_ACT however, tc_classify starts over at the first classifier
and never returns it to the qdisc. This makes it impossible to support
qdisc-internal reclassification, which in turn makes it impossible to
remove the old NET_CLS_POLICE code without breaking compatibility since
we have two qdiscs (CBQ and ATM) that support this.

This patch adds a tc_classify_compat function that handles
reclassification the old way and changes CBQ and ATM to use it.

This again is of course not fully backwards compatible with the previous
NET_CLS_ACT behaviour. Unfortunately there is no way to fully maintain
compatibility *and* support qdisc internal reclassification with
NET_CLS_ACT, but this seems like the better choice over keeping the two
incompatible options around forever.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: Unline tcf_destroy</title>
<updated>2007-04-26T05:27:56Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2007-03-23T18:29:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a48b5a61448899040dfbd2e0cd55b06a2bd2466c'/>
<id>urn:sha1:a48b5a61448899040dfbd2e0cd55b06a2bd2466c</id>
<content type='text'>
Uninline tcf_destroy and add a helper function to destroy an entire filter
chain.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[PKT_SCHED] qdisc: Use rtnl registration interface</title>
<updated>2007-04-26T05:27:09Z</updated>
<author>
<name>Thomas Graf</name>
</author>
<published>2007-03-22T18:55:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=be577ddc2b4aca0849f701222f5bc13cf1b79c9a'/>
<id>urn:sha1:be577ddc2b4aca0849f701222f5bc13cf1b79c9a</id>
<content type='text'>
Signed-off-by: Thomas Graf &lt;tgraf@suug.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: Fix endless loops caused by inaccurate qlen counters (part 1)</title>
<updated>2006-12-03T05:31:42Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2006-11-30T01:35:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=43effa1e57fc4635e0301b27d78f9d83afe78974'/>
<id>urn:sha1:43effa1e57fc4635e0301b27d78f9d83afe78974</id>
<content type='text'>
There are multiple problems related to qlen adjustment that can lead
to an upper qdisc getting out of sync with the real number of packets
queued, leading to endless dequeueing attempts by the upper layer code.

All qdiscs must maintain an accurate q.qlen counter. There are basically
two groups of operations affecting the qlen: operations that propagate
down the tree (enqueue, dequeue, requeue, drop, reset) beginning at the
root qdisc and operations only affecting a subtree or single qdisc
(change, graft, delete class). Since qlen changes during operations from
the second group don't propagate to ancestor qdiscs, their qlen values
become desynchronized.

This patch adds a function to propagate qlen changes up the qdisc tree,
optionally calling a callback function to perform qdisc-internal
maintenance when the child qdisc becomes empty. The follow-up patches
will convert all qdiscs to use this function where necessary.

Noticed by Timo Steinbach &lt;tsteinbach@astaro.com&gt;.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET_SCHED]: Set parent classid in default qdiscs</title>
<updated>2006-12-03T05:31:41Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2006-11-30T01:35:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f9afec48221fe4a19f84a9341f5b304bf7d7783'/>
<id>urn:sha1:9f9afec48221fe4a19f84a9341f5b304bf7d7783</id>
<content type='text'>
Set parent classids in default qdiscs to allow walking up the tree
from outside the qdiscs. This is needed by the next patch.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
