<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/sched, branch v3.2.62</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/net/sched?h=v3.2.62</id>
<link rel='self' href='https://git.amat.us/linux/atom/net/sched?h=v3.2.62'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-06-09T12:28:59Z</updated>
<entry>
<title>act_mirred: do not drop packets when fails to mirror it</title>
<updated>2014-06-09T12:28:59Z</updated>
<author>
<name>Jason Wang</name>
<email>jasowang@redhat.com</email>
</author>
<published>2012-08-15T20:44:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9a45de4b54dc3e6ecbdc1f4d0d15dcbd2410bad3'/>
<id>urn:sha1:9a45de4b54dc3e6ecbdc1f4d0d15dcbd2410bad3</id>
<content type='text'>
[ Upstream commit 16c0b164bd24d44db137693a36b428ba28970c62 ]

We drop packet unconditionally when we fail to mirror it. This is not intended
in some cases. Consdier for kvm guest, we may mirror the traffic of the bridge
to a tap device used by a VM. When kernel fails to mirror the packet in
conditions such as when qemu crashes or stop polling the tap, it's hard for the
management software to detect such condition and clean the the mirroring
before. This would lead all packets to the bridge to be dropped and break the
netowrk of other virtual machines.

To solve the issue, the patch does not drop packets when kernel fails to mirror
it, and only drop the redirected packets.

Signed-off-by: Jason Wang &lt;jasowang@redhat.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;jhs@mojatatu.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>htb: fix sign extension bug</title>
<updated>2013-10-26T20:05:55Z</updated>
<author>
<name>stephen hemminger</name>
<email>stephen@networkplumber.org</email>
</author>
<published>2013-08-02T05:32:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=746db946cde024822904dbe590b43cae7589ad30'/>
<id>urn:sha1:746db946cde024822904dbe590b43cae7589ad30</id>
<content type='text'>
[ Upstream commit cbd375567f7e4811b1c721f75ec519828ac6583f ]

When userspace passes a large priority value
the assignment of the unsigned value hopt-&gt;prio
to  signed int cl-&gt;prio causes cl-&gt;prio to become negative and the
comparison is with TC_HTB_NUMPRIO is always false.

The result is that HTB crashes by referencing outside
the array when processing packets. With this patch the large value
wraps around like other values outside the normal range.

See: https://bugzilla.kernel.org/show_bug.cgi?id=60669

Signed-off-by: Stephen Hemminger &lt;stephen@networkplumber.org&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>net_sched: info leak in atm_tc_dump_class()</title>
<updated>2013-09-10T00:57:08Z</updated>
<author>
<name>Dan Carpenter</name>
<email>dan.carpenter@oracle.com</email>
</author>
<published>2013-07-30T10:23:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a0fb2c987486da9c649e35cd565507576d491cec'/>
<id>urn:sha1:a0fb2c987486da9c649e35cd565507576d491cec</id>
<content type='text'>
[ Upstream commit 8cb3b9c3642c0263d48f31d525bcee7170eedc20 ]

The "pvc" struct has a hole after pvc.sap_family which is not cleared.

Signed-off-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Jiri Pirko &lt;jiri@resnulli.us&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>net_sched: Fix stack info leak in cbq_dump_wrr().</title>
<updated>2013-09-10T00:57:07Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2013-07-30T07:16:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fff2afebe918cd98ef5499af9f6e55c741bca1dd'/>
<id>urn:sha1:fff2afebe918cd98ef5499af9f6e55c741bca1dd</id>
<content type='text'>
[ Upstream commit a0db856a95a29efb1c23db55c02d9f0ff4f0db48 ]

Make sure the reserved fields, and padding (if any), are
fully initialized.

Based upon a patch by Dan Carpenter and feedback from
Joe Perches.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>net_sched: act_ipt forward compat with xtables</title>
<updated>2013-05-30T13:35:12Z</updated>
<author>
<name>Jamal Hadi Salim</name>
<email>jhs@mojatatu.com</email>
</author>
<published>2013-04-28T05:06:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fa83b862b34e82d8cbcc1d40889a8d6dd5d56e25'/>
<id>urn:sha1:fa83b862b34e82d8cbcc1d40889a8d6dd5d56e25</id>
<content type='text'>
[ Upstream commit 0dcffd09641f3abb21ac5cabc61542ab289d1a3c ]

Deal with changes in newer xtables while maintaining backward
compatibility. Thanks to Jan Engelhardt for suggestions.

Signed-off-by: Jamal Hadi Salim &lt;jhs@mojatatu.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>cbq: incorrect processing of high limits</title>
<updated>2013-05-13T14:02:34Z</updated>
<author>
<name>Vasily Averin</name>
<email>vvs@parallels.com</email>
</author>
<published>2013-04-01T03:01:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=30a9b2b0fe981f605914df96a8a5d397d64bf7ee'/>
<id>urn:sha1:30a9b2b0fe981f605914df96a8a5d397d64bf7ee</id>
<content type='text'>
[ Upstream commit f0f6ee1f70c4eaab9d52cf7d255df4bd89f8d1c2 ]

currently cbq works incorrectly for limits &gt; 10% real link bandwidth,
and practically does not work for limits &gt; 50% real link bandwidth.
Below are results of experiments taken on 1 Gbit link

 In shaper | Actual Result
-----------+---------------
  100M     | 108 Mbps
  200M     | 244 Mbps
  300M     | 412 Mbps
  500M     | 893 Mbps

This happen because of q-&gt;now changes incorrectly in cbq_dequeue():
when it is called before real end of packet transmitting,
L2T is greater than real time delay, q_now gets an extra boost
but never compensate it.

To fix this problem we prevent change of q-&gt;now until its synchronization
with real time.

Signed-off-by: Vasily Averin &lt;vvs@openvz.org&gt;
Reviewed-by: Alexey Kuznetsov &lt;kuznet@ms2.inr.ac.ru&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>net: sched: integer overflow fix</title>
<updated>2013-01-16T01:13:25Z</updated>
<author>
<name>Stefan Hasko</name>
<email>hasko.stevo@gmail.com</email>
</author>
<published>2012-12-21T15:04:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=254a98481ae19da3e98440afbfefa25d1b322dac'/>
<id>urn:sha1:254a98481ae19da3e98440afbfefa25d1b322dac</id>
<content type='text'>
[ Upstream commit d2fe85da52e89b8012ffad010ef352a964725d5f ]

Fixed integer overflow in function htb_dequeue

Signed-off-by: Stefan Hasko &lt;hasko.stevo@gmail.com&gt;
Acked-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>pkt_sched: fix virtual-start-time update in QFQ</title>
<updated>2012-10-10T02:31:27Z</updated>
<author>
<name>Paolo Valente</name>
<email>paolo.valente@unimore.it</email>
</author>
<published>2012-09-15T00:41:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1876912a61291c434ab89996200297af5cdcd4ac'/>
<id>urn:sha1:1876912a61291c434ab89996200297af5cdcd4ac</id>
<content type='text'>
[ Upstream commit 71261956973ba9e0637848a5adb4a5819b4bae83 ]

If the old timestamps of a class, say cl, are stale when the class
becomes active, then QFQ may assign to cl a much higher start time
than the maximum value allowed. This may happen when QFQ assigns to
the start time of cl the finish time of a group whose classes are
characterized by a higher value of the ratio
max_class_pkt/weight_of_the_class with respect to that of
cl. Inserting a class with a too high start time into the bucket list
corrupts the data structure and may eventually lead to crashes.
This patch limits the maximum start time assigned to a class.

Signed-off-by: Paolo Valente &lt;paolo.valente@unimore.it&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>net-sched: sch_cbq: avoid infinite loop</title>
<updated>2012-10-10T02:31:27Z</updated>
<author>
<name>Eric Dumazet</name>
<email>edumazet@google.com</email>
</author>
<published>2012-09-11T13:11:12Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=50d09c3beecd0380910cfad192943d05d83edbf3'/>
<id>urn:sha1:50d09c3beecd0380910cfad192943d05d83edbf3</id>
<content type='text'>
[ Upstream commit bdfc87f7d1e253e0a61e2fc6a75ea9d76f7fc03a ]

Its possible to setup a bad cbq configuration leading to
an infinite loop in cbq_classify()

DEV_OUT=eth0
ICMP="match ip protocol 1 0xff"
U32="protocol ip u32"
DST="match ip dst"
tc qdisc add dev $DEV_OUT root handle 1: cbq avpkt 1000 \
	bandwidth 100mbit
tc class add dev $DEV_OUT parent 1: classid 1:1 cbq \
	rate 512kbit allot 1500 prio 5 bounded isolated
tc filter add dev $DEV_OUT parent 1: prio 3 $U32 \
	$ICMP $DST 192.168.3.234 flowid 1:

Reported-by: Denys Fedoryschenko &lt;denys@visp.net.lb&gt;
Tested-by: Denys Fedoryschenko &lt;denys@visp.net.lb&gt;
Signed-off-by: Eric Dumazet &lt;edumazet@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>net_sched: gact: Fix potential panic in tcf_gact().</title>
<updated>2012-09-19T14:04:47Z</updated>
<author>
<name>Hiroaki SHIMODA</name>
<email>shimoda.hiroaki@gmail.com</email>
</author>
<published>2012-08-03T10:57:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e72c9bd7d87ae9780d8b87f9ab45041fc72f3f48'/>
<id>urn:sha1:e72c9bd7d87ae9780d8b87f9ab45041fc72f3f48</id>
<content type='text'>
[ Upstream commit 696ecdc10622d86541f2e35cc16e15b6b3b1b67e ]

gact_rand array is accessed by gact-&gt;tcfg_ptype whose value
is assumed to less than MAX_RAND, but any range checks are
not performed.

So add a check in tcf_gact_init(). And in tcf_gact(), we can
reduce a branch.

Signed-off-by: Hiroaki SHIMODA &lt;shimoda.hiroaki@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
</feed>
