<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sched/sch_api.c, branch linux-2.6.28.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.28.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2008-11-20T12:07:14Z</updated>
<entry>
<title>pkt_sched: fix missing check for packet overrun in qdisc_dump_stab()</title>
<updated>2008-11-20T12:07:14Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2008-11-20T12:07:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3aa4614da741f10b09559a5675c79e2eff5cccd8'/>
<id>urn:sha1:3aa4614da741f10b09559a5675c79e2eff5cccd8</id>
<content type='text'>
nla_nest_start() might return NULL, causing a NULL pointer dereference.

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: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely)</title>
<updated>2008-10-16T22:24:51Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2008-10-16T22:24:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=95a5afca4a8d2e1cb77e1d4bc6ff9f718dc32f7a'/>
<id>urn:sha1:95a5afca4a8d2e1cb77e1d4bc6ff9f718dc32f7a</id>
<content type='text'>
Some code here depends on CONFIG_KMOD to not try to load
protocol modules or similar, replace by CONFIG_MODULES
where more than just request_module depends on CONFIG_KMOD
and and also use try_then_request_module in ebtables.

Signed-off-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: Fix locking of qdisc_root with qdisc_root_sleeping_lock()</title>
<updated>2008-08-29T21:27:52Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-08-29T21:21:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=102396ae65108b026e4e1868e30fa013f45a169e'/>
<id>urn:sha1:102396ae65108b026e4e1868e30fa013f45a169e</id>
<content type='text'>
Use qdisc_root_sleeping_lock() instead of qdisc_root_lock() where
appropriate. The only difference is while dev is deactivated, when
currently we can use a sleeping qdisc with the lock of noop_qdisc.
This shouldn't be dangerous since after deactivation root lock could
be used only by gen_estimator code, but looks wrong anyway.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: Fix gen_estimator locks</title>
<updated>2008-08-27T09:25:17Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-08-27T09:25:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f6f9b93f1624206c802ac9162c9302edaf59bfd9'/>
<id>urn:sha1:f6f9b93f1624206c802ac9162c9302edaf59bfd9</id>
<content type='text'>
While passing a qdisc root lock to gen_new_estimator() and
gen_replace_estimator() dev could be deactivated or even before
grafting proper root qdisc as qdisc_sleeping (e.g. qdisc_create), so
using qdisc_root_lock() is not enough. This patch adds
qdisc_root_sleeping_lock() for this, plus additional checks, where
necessary.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: Use rcu_assign_pointer() to change dev_queue-&gt;qdisc</title>
<updated>2008-08-27T09:22:07Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-08-27T09:22:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7a54c13c7b072d9426bd5cec1cdb8306df5ef55'/>
<id>urn:sha1:f7a54c13c7b072d9426bd5cec1cdb8306df5ef55</id>
<content type='text'>
These pointers are RCU protected, so proper primitives should be used.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: Fix dev_graft_qdisc() locking</title>
<updated>2008-08-27T09:15:20Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-08-27T09:12:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=666d9bbedfff7c2c37eab92e715641922dee6864'/>
<id>urn:sha1:666d9bbedfff7c2c37eab92e715641922dee6864</id>
<content type='text'>
During dev_graft_qdisc() dev is deactivated, so qdisc_root_lock()
returns wrong lock of noop_qdisc instead of qdisc_sleeping.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Acked-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: Fix qdisc list locking</title>
<updated>2008-08-22T10:31:39Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-08-22T10:24:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b'/>
<id>urn:sha1:f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b</id>
<content type='text'>
Since some qdiscs call qdisc_tree_decrease_qlen() (so qdisc_lookup())
without rtnl_lock(), adding and deleting from a qdisc list needs
additional locking. This patch adds global spinlock qdisc_list_lock
and wrapper functions for modifying the list. It is considered as a
temporary solution until hfsc_dequeue(), netem_dequeue() and
tbf_dequeue() (or qdisc_tree_decrease_qlen()) are redone.

With feedback from Herbert Xu and David S. Miller.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Acked-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: Fix qdisc_watchdog() vs. dev_deactivate() race</title>
<updated>2008-08-21T12:11:14Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-08-21T12:11:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2540e0511ea17e25831be543cdf9381e6209950d'/>
<id>urn:sha1:2540e0511ea17e25831be543cdf9381e6209950d</id>
<content type='text'>
dev_deactivate() can skip rescheduling of a qdisc by qdisc_watchdog()
or other timer calling netif_schedule() after dev_queue_deactivate().
We prevent this checking aliveness before scheduling the timer. Since
during deactivation the root qdisc is available only as qdisc_sleeping
additional accessor qdisc_root_sleeping() is created.

With feedback from Herbert Xu &lt;herbert@gondor.apana.org.au&gt;

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Revert "pkt_sched: Add BH protection for qdisc_stab_lock."</title>
<updated>2008-08-19T05:33:05Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2008-08-19T05:33:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f3b9605d744df537dee10fd06630f35a62b343ec'/>
<id>urn:sha1:f3b9605d744df537dee10fd06630f35a62b343ec</id>
<content type='text'>
This reverts commit 1cfa26661a85549063e369e2b40275eeaa7b923c.

qdisc_destroy() runs fully under RTNL again and not from softint any
longer, so this change is no longer needed.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>pkt_sched: remove bogus block (cleanup)</title>
<updated>2008-08-19T05:30:01Z</updated>
<author>
<name>Ilpo Järvinen</name>
</author>
<published>2008-08-19T05:30:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e5befbd9525d92bb074b70192eb2c69aae65fc60'/>
<id>urn:sha1:e5befbd9525d92bb074b70192eb2c69aae65fc60</id>
<content type='text'>
...Last block local var got just deleted.

Signed-off-by: Ilpo Järvinen &lt;ilpo.jarvinen@helsinki.fi&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
