<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/net/ifb.c, branch v3.0</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>net: call dev_alloc_name from register_netdevice</title>
<updated>2011-05-05T17:57:45+00:00</updated>
<author>
<name>Jiri Pirko</name>
<email>jpirko@redhat.com</email>
</author>
<published>2011-04-30T01:21:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1c5cae815d19ffe02bdfda1260949ef2b1806171'/>
<id>1c5cae815d19ffe02bdfda1260949ef2b1806171</id>
<content type='text'>
Force dev_alloc_name() to be called from register_netdevice() by
dev_get_valid_name(). That allows to remove multiple explicit
dev_alloc_name() calls.

The possibility to call dev_alloc_name in advance remains.

This also fixes veth creation regresion caused by
84c49d8c3e4abefb0a41a77b25aa37ebe8d6b743

Signed-off-by: Jiri Pirko &lt;jpirko@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Force dev_alloc_name() to be called from register_netdevice() by
dev_get_valid_name(). That allows to remove multiple explicit
dev_alloc_name() calls.

The possibility to call dev_alloc_name in advance remains.

This also fixes veth creation regresion caused by
84c49d8c3e4abefb0a41a77b25aa37ebe8d6b743

Signed-off-by: Jiri Pirko &lt;jpirko@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: add performance flags</title>
<updated>2011-01-03T20:43:10+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-01-03T10:35:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=39980292fda20b38baf95bfa577db8b678eecc86'/>
<id>39980292fda20b38baf95bfa577db8b678eecc86</id>
<content type='text'>
Le lundi 03 janvier 2011 à 11:40 -0800, David Miller a écrit :
&gt; From: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
&gt; Date: Mon, 3 Jan 2011 20:37:03 +0100
&gt;
&gt; &gt; On Sun, Jan 02, 2011 at 09:24:36PM +0100, Eric Dumazet wrote:
&gt; &gt;&gt; Le mercredi 29 décembre 2010 ?? 00:07 +0100, Jarek Poplawski a écrit :
&gt; &gt;&gt;
&gt; &gt;&gt; &gt; Ingress is before vlans handler so these features and the
&gt; &gt;&gt; &gt; NETIF_F_HW_VLAN_TX flag seem useful for ifb considering
&gt; &gt;&gt; &gt; dev_hard_start_xmit() checks.
&gt; &gt;&gt;
&gt; &gt;&gt; OK, here is v2 of the patch then, thanks everybody.
&gt; &gt;&gt;
&gt; &gt;&gt;
&gt; &gt;&gt; [PATCH v2 net-next-2.6] ifb: add performance flags
&gt; &gt;&gt;
&gt; &gt;&gt; IFB can use the full set of features flags (NETIF_F_SG |
&gt; &gt;&gt; NETIF_F_FRAGLIST | NETIF_F_TSO | NETIF_F_NO_CSUM | NETIF_F_HIGHDMA) to
&gt; &gt;&gt; avoid unnecessary split of some packets (GRO for example)
&gt; &gt;&gt;
&gt; &gt;&gt; Changli suggested to also set vlan_features,
&gt; &gt;
&gt; &gt; He also suggested more GSO flags of which especially NETIF_F_TSO6
&gt; &gt; seems interesting (wrt GRO)?
&gt;
&gt; I think at least TSO6 would very much be appropriate here.

Yes, why not, I am only wondering why loopback / dummy (and others ?)
only set NETIF_F_TSO :)

Since I want to play with ECN, I might also add NETIF_F_TSO_ECN ;)

For other flags, I really doubt it can matter on ifb ?

[PATCH v3 net-next-2.6] ifb: add performance flags

IFB can use the full set of features flags (NETIF_F_SG |
NETIF_F_FRAGLIST | NETIF_F_TSO | NETIF_F_NO_CSUM | NETIF_F_HIGHDMA) to
avoid unnecessary split of some packets (GRO for example)

Changli suggested to also set vlan_features, NETIF_F_TSO6,
NETIF_F_TSO_ECN.

Jarek suggested to add NETIF_F_HW_VLAN_TX as well.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Changli Gao &lt;xiaosuo@gmail.com&gt;
Cc: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Cc: Pawel Staszewski &lt;pstaszewski@itcare.pl&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Le lundi 03 janvier 2011 à 11:40 -0800, David Miller a écrit :
&gt; From: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
&gt; Date: Mon, 3 Jan 2011 20:37:03 +0100
&gt;
&gt; &gt; On Sun, Jan 02, 2011 at 09:24:36PM +0100, Eric Dumazet wrote:
&gt; &gt;&gt; Le mercredi 29 décembre 2010 ?? 00:07 +0100, Jarek Poplawski a écrit :
&gt; &gt;&gt;
&gt; &gt;&gt; &gt; Ingress is before vlans handler so these features and the
&gt; &gt;&gt; &gt; NETIF_F_HW_VLAN_TX flag seem useful for ifb considering
&gt; &gt;&gt; &gt; dev_hard_start_xmit() checks.
&gt; &gt;&gt;
&gt; &gt;&gt; OK, here is v2 of the patch then, thanks everybody.
&gt; &gt;&gt;
&gt; &gt;&gt;
&gt; &gt;&gt; [PATCH v2 net-next-2.6] ifb: add performance flags
&gt; &gt;&gt;
&gt; &gt;&gt; IFB can use the full set of features flags (NETIF_F_SG |
&gt; &gt;&gt; NETIF_F_FRAGLIST | NETIF_F_TSO | NETIF_F_NO_CSUM | NETIF_F_HIGHDMA) to
&gt; &gt;&gt; avoid unnecessary split of some packets (GRO for example)
&gt; &gt;&gt;
&gt; &gt;&gt; Changli suggested to also set vlan_features,
&gt; &gt;
&gt; &gt; He also suggested more GSO flags of which especially NETIF_F_TSO6
&gt; &gt; seems interesting (wrt GRO)?
&gt;
&gt; I think at least TSO6 would very much be appropriate here.

Yes, why not, I am only wondering why loopback / dummy (and others ?)
only set NETIF_F_TSO :)

Since I want to play with ECN, I might also add NETIF_F_TSO_ECN ;)

For other flags, I really doubt it can matter on ifb ?

[PATCH v3 net-next-2.6] ifb: add performance flags

IFB can use the full set of features flags (NETIF_F_SG |
NETIF_F_FRAGLIST | NETIF_F_TSO | NETIF_F_NO_CSUM | NETIF_F_HIGHDMA) to
avoid unnecessary split of some packets (GRO for example)

Changli suggested to also set vlan_features, NETIF_F_TSO6,
NETIF_F_TSO_ECN.

Jarek suggested to add NETIF_F_HW_VLAN_TX as well.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Changli Gao &lt;xiaosuo@gmail.com&gt;
Cc: Jarek Poplawski &lt;jarkao2@gmail.com&gt;
Cc: Pawel Staszewski &lt;pstaszewski@itcare.pl&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: use netif_receive_skb() instead of netif_rx()</title>
<updated>2010-12-20T05:44:30+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2010-12-14T22:39:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1a75972c61f2c224eb5283c183f9f6b17fb09b6b'/>
<id>1a75972c61f2c224eb5283c183f9f6b17fb09b6b</id>
<content type='text'>
In ri_tasklet(), we run from softirq, so can directly handle packet
through netif_receive_skb() instead of netif_rx().
There is no risk of recursion.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Acked-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In ri_tasklet(), we run from softirq, so can directly handle packet
through netif_receive_skb() instead of netif_rx().
There is no risk of recursion.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Acked-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: fix a lockdep splat</title>
<updated>2010-12-16T22:54:52+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2010-12-15T23:52:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=7edc3453e54432a9f1c636b6481f1107c9db19bd'/>
<id>7edc3453e54432a9f1c636b6481f1107c9db19bd</id>
<content type='text'>
After recent ifb changes, we must use lockless __skb_dequeue() since
lock is not anymore initialized.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Cc: Changli Gao &lt;xiaosuo@gmail.com&gt;
Acked-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After recent ifb changes, we must use lockless __skb_dequeue() since
lock is not anymore initialized.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Cc: Changli Gao &lt;xiaosuo@gmail.com&gt;
Acked-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: use the lockless variants of skb_queue</title>
<updated>2010-12-10T22:34:34+00:00</updated>
<author>
<name>Changli Gao</name>
<email>xiaosuo@gmail.com</email>
</author>
<published>2010-12-04T15:01:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=957fca95e3521e471aac4c2e4cfbc21f399bdd84'/>
<id>957fca95e3521e471aac4c2e4cfbc21f399bdd84</id>
<content type='text'>
rq and tq are both protected by tx queue lock, so we can simply use
the lockless variants of skb_queue.

skb_queue_splice_tail_init() is used instead of the open coded and slow
one.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
rq and tq are both protected by tx queue lock, so we can simply use
the lockless variants of skb_queue.

skb_queue_splice_tail_init() is used instead of the open coded and slow
one.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: remove unused macro TX_TIMEOUT</title>
<updated>2010-12-10T22:34:34+00:00</updated>
<author>
<name>Changli Gao</name>
<email>xiaosuo@gmail.com</email>
</author>
<published>2010-12-03T19:55:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=c6350362cbb19882ba0eb3578cc1abc07e6ea204'/>
<id>c6350362cbb19882ba0eb3578cc1abc07e6ea204</id>
<content type='text'>
Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: remove the useless debug stats</title>
<updated>2010-12-10T22:34:33+00:00</updated>
<author>
<name>Changli Gao</name>
<email>xiaosuo@gmail.com</email>
</author>
<published>2010-12-03T19:55:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=e1f91505025db74c261962dc16d58f79b9b0c83c'/>
<id>e1f91505025db74c261962dc16d58f79b9b0c83c</id>
<content type='text'>
These debug stats are not exported, and become useless.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These debug stats are not exported, and become useless.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ifb: goto resched directly if error happens and dp-&gt;tq isn't empty</title>
<updated>2010-12-08T17:45:34+00:00</updated>
<author>
<name>Changli Gao</name>
<email>xiaosuo@gmail.com</email>
</author>
<published>2010-12-04T14:09:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=75c1c82566f23dd539fb7ccbf57a1caa7ba82628'/>
<id>75c1c82566f23dd539fb7ccbf57a1caa7ba82628</id>
<content type='text'>
If we break the loop when there are still skbs in tq and no skb in
rq, the skbs will be left in txq until new skbs are enqueued into rq.
In rare cases, no new skb is queued, then these skbs will stay in rq
forever.

After this patch, if tq isn't empty when we break the loop, we goto
resched directly.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If we break the loop when there are still skbs in tq and no skb in
rq, the skbs will be left in txq until new skbs are enqueued into rq.
In rare cases, no new skb is queued, then these skbs will stay in rq
forever.

After this patch, if tq isn't empty when we break the loop, we goto
resched directly.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Jamal Hadi Salim &lt;hadi@cyberus.ca&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: trans_start cleanups</title>
<updated>2010-05-10T12:01:31+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2010-05-10T12:01:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=1ae5dc342ac78d7a42965fd1f323815f6f5ef2c1'/>
<id>1ae5dc342ac78d7a42965fd1f323815f6f5ef2c1</id>
<content type='text'>
Now that core network takes care of trans_start updates, dont do it
in drivers themselves, if possible. Drivers can avoid one cache miss
(on dev-&gt;trans_start) in their start_xmit() handler.

Exceptions are NETIF_F_LLTX drivers

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now that core network takes care of trans_start updates, dont do it
in drivers themselves, if possible. Drivers can avoid one cache miss
(on dev-&gt;trans_start) in their start_xmit() handler.

Exceptions are NETIF_F_LLTX drivers

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: rename skb-&gt;iif to skb-&gt;skb_iif</title>
<updated>2009-11-20T23:35:04+00:00</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2009-11-20T23:35:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=8964be4a9a5ca8cab1219bb046db2f6d1936227c'/>
<id>8964be4a9a5ca8cab1219bb046db2f6d1936227c</id>
<content type='text'>
To help grep games, rename iif to skb_iif

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To help grep games, rename iif to skb_iif

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
