<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sched, branch linux-2.6.27.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.27.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.27.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-02-11T14:37:52Z</updated>
<entry>
<title>net_sched: Fix qdisc_notify()</title>
<updated>2012-02-11T14:37:52Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2010-05-22T20:37:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3c87aca6dc9691b010dc4f06b24902fd35965520'/>
<id>urn:sha1:3c87aca6dc9691b010dc4f06b24902fd35965520</id>
<content type='text'>
commit 53b0f08042f04813cd1a7473dacd3edfacb28eb3 upstream.

Ben Pfaff reported a kernel oops and provided a test program to
reproduce it.

https://kerneltrap.org/mailarchive/linux-netdev/2010/5/21/6277805

tc_fill_qdisc() should not be called for builtin qdisc, or it
dereference a NULL pointer to get device ifindex.

Fix is to always use tc_qdisc_dump_ignore() before calling
tc_fill_qdisc().

Reported-by: Ben Pfaff &lt;blp@nicira.com&gt;
Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Willy Tarreau &lt;w@1wt.eu&gt;
</content>
</entry>
<entry>
<title>tc: Fix unitialized kernel memory leak</title>
<updated>2010-04-01T22:52:24Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2009-09-02T02:40:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=910e88a0698da1f483603c603b04c780cb87dd08'/>
<id>urn:sha1:910e88a0698da1f483603c603b04c780cb87dd08</id>
<content type='text'>
commit 16ebb5e0b36ceadc8186f71d68b0c4fa4b6e781b upstream.

Three bytes of uninitialized kernel memory are currently leaked to user

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Reviewed-by: Jiri Pirko &lt;jpirko@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>netlink: fix typo in initialization (CVE-2009-3612)</title>
<updated>2009-11-10T00:52:24Z</updated>
<author>
<name>Jiri Pirko</name>
</author>
<published>2009-10-08T08:21:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c10b1aca87daa6765146d251defa37e5c7109f15'/>
<id>urn:sha1:c10b1aca87daa6765146d251defa37e5c7109f15</id>
<content type='text'>
commit ad61df918c44316940404891d5082c63e79c256a upstream.

Commit 9ef1d4c7c7aca1cd436612b6ca785b726ffb8ed8 ("[NETLINK]: Missing
initializations in dumped data") introduced a typo in
initialization. This patch fixes this.

Signed-off-by: Jiri Pirko &lt;jpirko@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>pkt_sched: cls_u32: Fix locking in u32_change()</title>
<updated>2009-01-25T00:36:19Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2009-01-20T22:08:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c20cba0d08f3c6c10e0181077cca7f1833ffdb6b'/>
<id>urn:sha1:c20cba0d08f3c6c10e0181077cca7f1833ffdb6b</id>
<content type='text'>
[ Upstream commit: 6f57321422e0d359e83c978c2b03db77b967b7d5 ]

New nodes are inserted in u32_change() under rtnl_lock() with wmb(),
so without tcf_tree_lock() like in other classifiers (e.g. cls_fw).
This isn't enough without rmb() on the read side, but on the other
hand adding such barriers doesn't give any savings, so the lock is
added instead.

Reported-by: m0sia &lt;m0sia@plotinka.ru&gt;
Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>pkt_sched: sch_htb: Fix deadlock in hrtimers triggered by HTB</title>
<updated>2009-01-25T00:36:18Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2009-01-20T22:06:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9befaf375925471a49159d775b38d42c04e218a1'/>
<id>urn:sha1:9befaf375925471a49159d775b38d42c04e218a1</id>
<content type='text'>
[ Upstream commit: none

  This is a quick fix for -stable purposes.  Upstream fixes these
  problems via a large set of invasive hrtimer changes.  ]

Most probably there is a (still unproven) race in hrtimers (before
2.6.29 kernels), which causes a corruption of hrtimers rbtree. This
patch doesn't fix it, but should let HTB avoid triggering the bug.

Reported-by: Denys Fedoryschenko &lt;denys@visp.net.lb&gt;
Reported-by: Badalian Vyacheslav &lt;slavon@bigtelecom.ru&gt;
Reported-by: Chris Caputo &lt;ccaputo@alt.net&gt;
Tested-by: Badalian Vyacheslav &lt;slavon@bigtelecom.ru&gt;
Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>pkt_sched: sch_generic: Fix oops in sch_teql</title>
<updated>2008-11-07T03:05:41Z</updated>
<author>
<name>Jarek Poplawski</name>
</author>
<published>2008-10-20T06:37:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9a8eac41549d7ae0e40744177edd8dc8d59592e4'/>
<id>urn:sha1:9a8eac41549d7ae0e40744177edd8dc8d59592e4</id>
<content type='text'>
[ Upstream commit 9f3ffae0dbce491a3e9871b686342fd5aa854f05 ]

After these commands:
# modprobe sch_teql
# tc qdisc add dev eth0 root teql0
# tc qdisc del dev eth0 root
we get an oops in teql_destroy() when spin_lock is taken from a null
qdisc_sleeping pointer. It's because at the moment teql0 dev haven't
been activated yet, and a qdisc_root_sleeping() is pointing to noop
qdisc's netdev_queue with qdisc_sleeping uninitialized. This patch
fixes this both for noop and noqueue netdev_queues to avoid similar
problems in the future.

Signed-off-by: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>warn: Turn the netdev timeout WARN_ON() into a WARN()</title>
<updated>2008-09-17T02:39:33Z</updated>
<author>
<name>Arjan van de Ven</name>
</author>
<published>2008-09-15T23:43:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=45e9c0de2e86485f8b6633fd64ab19cfbff167f6'/>
<id>urn:sha1:45e9c0de2e86485f8b6633fd64ab19cfbff167f6</id>
<content type='text'>
this patch turns the netdev timeout WARN_ON_ONCE() into a WARN_ONCE(),
so that the device and driver names are inside the warning message.
This helps automated tools like kerneloops.org to collect the data
and do statistics, as well as making it more likely that humans
cut-n-paste the important message as part of a bugreport.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&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>
</feed>
