<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sched/sch_api.c, branch linux-2.6.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2006-09-29T01:01:50Z</updated>
<entry>
<title>[NET_SCHED]: Fix fallout from dev-&gt;qdisc RCU change</title>
<updated>2006-09-29T01:01:50Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2006-09-27T23:45:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=85670cc1faa2e1472e4a423cbf0b5e3d55c5ba88'/>
<id>urn:sha1:85670cc1faa2e1472e4a423cbf0b5e3d55c5ba88</id>
<content type='text'>
The move of qdisc destruction to a rcu callback broke locking in the
entire qdisc layer by invalidating previously valid assumptions about
the context in which changes to the qdisc tree occur.

The two assumptions were:

- since changes only happen in process context, read_lock doesn't need
  bottem half protection. Now invalid since destruction of inner qdiscs,
  classifiers, actions and estimators happens in the RCU callback unless
  they're manually deleted, resulting in dead-locks when read_lock in
  process context is interrupted by write_lock_bh in bottem half context.

- since changes only happen under the RTNL, no additional locking is
  necessary for data not used during packet processing (f.e. u32_list).
  Again, since destruction now happens in the RCU callback, this assumption
  is not valid anymore, causing races while using this data, which can
  result in corruption or use-after-free.

Instead of "fixing" this by disabling bottem halfs everywhere and adding
new locks/refcounting, this patch makes these assumptions valid again by
moving destruction back to process context. Since only the dev-&gt;qdisc
pointer is protected by RCU, but -&gt;enqueue and the qdisc tree are still
protected by dev-&gt;qdisc_lock, destruction of the tree can be performed
immediately and only the final free needs to happen in the rcu callback
to make sure dev_queue_xmit doesn't access already freed memory.

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]: Return ENOENT if qdisc module is unavailable</title>
<updated>2006-08-05T05:59:49Z</updated>
<author>
<name>Jamal Hadi Salim</name>
</author>
<published>2006-08-03T23:36:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b9e2cc0f0e47ad351349156018ef8a365e9c6d25'/>
<id>urn:sha1:b9e2cc0f0e47ad351349156018ef8a365e9c6d25</id>
<content type='text'>
Return ENOENT if qdisc module is unavailable

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>Remove obsolete #include &lt;linux/config.h&gt;</title>
<updated>2006-06-30T17:25:36Z</updated>
<author>
<name>Jörn Engel</name>
</author>
<published>2006-06-30T17:25:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6ab3d5624e172c553004ecc862bfeac16d9d68b7'/>
<id>urn:sha1:6ab3d5624e172c553004ecc862bfeac16d9d68b7</id>
<content type='text'>
Signed-off-by: Jörn Engel &lt;joern@wohnheim.fh-wedel.de&gt;
Signed-off-by: Adrian Bunk &lt;bunk@stusta.de&gt;
</content>
</entry>
<entry>
<title>[PATCH] timer initialization cleanup: DEFINE_TIMER</title>
<updated>2005-09-09T21:03:48Z</updated>
<author>
<name>Ingo Molnar</name>
</author>
<published>2005-09-09T20:10:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d06afab73a75f40ae2864e6c296356bab1ab473'/>
<id>urn:sha1:8d06afab73a75f40ae2864e6c296356bab1ab473</id>
<content type='text'>
Clean up timer initialization by introducing DEFINE_TIMER a'la
DEFINE_SPINLOCK.  Build and boot-tested on x86.  A similar patch has been
been in the -RT tree for some time.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[NETLINK]: Convert netlink users to use group numbers instead of bitmasks</title>
<updated>2005-08-29T23:00:54Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2005-08-15T02:29:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac6d439d2097b72ea0cbc2322ce1263a38bc1fd0'/>
<id>urn:sha1:ac6d439d2097b72ea0cbc2322ce1263a38bc1fd0</id>
<content type='text'>
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]: Report rate estimator configuration errors during qdisc allocation</title>
<updated>2005-07-05T21:15:53Z</updated>
<author>
<name>Thomas Graf</name>
</author>
<published>2005-07-05T21:15:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=023e09a767a89bf1b8646307410852d93fd72f00'/>
<id>urn:sha1:023e09a767a89bf1b8646307410852d93fd72f00</id>
<content type='text'>
Current behaviour is to not report an error if a rate
estimator is created together with a qdisc and the
configuration of the rate estimator is bogus. This leads
to unexpected behaviour because the user is not notified.

New behaviour is to report the error and let the whole
qdisc creation operation fail so the user is able to fix
his mistake.

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>[PKT_SCHED]: Cleanup qdisc creation and alignment macros</title>
<updated>2005-07-05T21:15:09Z</updated>
<author>
<name>Thomas Graf</name>
</author>
<published>2005-07-05T21:15:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3d54b82fdf0ca79608f61448fb8ab92676487645'/>
<id>urn:sha1:3d54b82fdf0ca79608f61448fb8ab92676487645</id>
<content type='text'>
Adds qdisc_alloc() to share code between qdisc_create()
and qdisc_create_dflt(). Hides the qdisc alignment behind
macros and makes use of them.

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>[NETLINK]: Missing initializations in dumped data</title>
<updated>2005-06-28T19:55:30Z</updated>
<author>
<name>Patrick McHardy</name>
</author>
<published>2005-06-28T19:55:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8'/>
<id>urn:sha1:9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8</id>
<content type='text'>
Mostly missing initialization of padding fields of 1 or 2 bytes length,
two instances of uninitialized nlmsgerr-&gt;msg of 16 bytes length.

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>[NETLINK]: Explicit typing</title>
<updated>2005-06-19T05:55:31Z</updated>
<author>
<name>Jamal Hadi Salim</name>
</author>
<published>2005-06-19T05:55:31Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e431b8c004af6be03783dddea31b6e514118051d'/>
<id>urn:sha1:e431b8c004af6be03783dddea31b6e514118051d</id>
<content type='text'>
This patch converts "unsigned flags" to use more explict types like u16
instead and incrementally introduces NLMSG_NEW().
 
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>[PKT_SCHED]: netetm: adjust parent qlen when duplicating</title>
<updated>2005-05-03T23:24:57Z</updated>
<author>
<name>Stephen Hemminger</name>
</author>
<published>2005-05-03T23:24:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d5d75cd6b10ddad2f375b61092754474ad78aec7'/>
<id>urn:sha1:d5d75cd6b10ddad2f375b61092754474ad78aec7</id>
<content type='text'>
Fix qlen underrun when doing duplication with netem. If netem is used
as leaf discipline, then the parent needs to be tweaked when packets
are duplicated.

Signed-off-by: Stephen Hemminger &lt;shemminger@osdl.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
