<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/ethernet/eth.c, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-09-23T21:33:39Z</updated>
<entry>
<title>net: return operator cleanup</title>
<updated>2010-09-23T21:33:39Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2010-09-22T20:43:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a02cec2155fbea457eca8881870fd2de1a4c4c76'/>
<id>urn:sha1:a02cec2155fbea457eca8881870fd2de1a4c4c76</id>
<content type='text'>
Change "return (EXPR);" to "return EXPR;"

return is not a function, parentheses are not required.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: use scnprintf() to avoid potential buffer overflow</title>
<updated>2010-08-26T21:11:49Z</updated>
<author>
<name>Changli Gao</name>
</author>
<published>2010-08-24T13:32:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=53f91dc1f76922375ad7957ef29f48986722532d'/>
<id>urn:sha1:53f91dc1f76922375ad7957ef29f48986722532d</id>
<content type='text'>
strlcpy() returns the total length of the string they tried to create, so
we should not use its return value without any check. scnprintf() returns
the number of characters written into @buf not including the trailing '\0',
so use it instead here.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net-next: remove useless union keyword</title>
<updated>2010-06-11T06:31:35Z</updated>
<author>
<name>Changli Gao</name>
</author>
<published>2010-06-11T06:31:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d8d1f30b95a635dbd610dcc5eb641aca8f4768cf'/>
<id>urn:sha1:d8d1f30b95a635dbd610dcc5eb641aca8f4768cf</id>
<content type='text'>
remove useless union keyword in rtable, rt6_info and dn_route.

Since there is only one member in a union, the union keyword isn't useful.

Signed-off-by: Changli Gao &lt;xiaosuo@gmail.com&gt;
Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: Inline skb_pull() in eth_type_trans().</title>
<updated>2010-05-02T09:21:44Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2010-05-02T09:21:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=47d29646a2c1c147d8a7598aeac2c87dd71ed638'/>
<id>urn:sha1:47d29646a2c1c147d8a7598aeac2c87dd71ed638</id>
<content type='text'>
In commit 6be8ac2f ("[NET]: uninline skb_pull, de-bloats a lot")
we uninlined skb_pull.

But in some critical paths it makes sense to inline this thing
and it helps performance significantly.

Create an skb_pull_inline() so that we can do this in a way that
serves also as annotation.

Based upon a patch by Eric Dumazet.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ethernet: print protocol in host byte order</title>
<updated>2010-04-22T05:57:19Z</updated>
<author>
<name>Johannes Berg</name>
</author>
<published>2010-04-20T21:06:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b002a861092b0db128800794a116cc3acc5ec239'/>
<id>urn:sha1:b002a861092b0db128800794a116cc3acc5ec239</id>
<content type='text'>
Eric's recent patch added __force, but this
place would seem to require actually doing
a byte order conversion so the printk is
consistent across architectures.

Cc: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: Fix various endianness glitches</title>
<updated>2010-04-21T02:06:52Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2010-04-21T02:06:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0eae88f31ca2b88911ce843452054139e028771f'/>
<id>urn:sha1:0eae88f31ca2b88911ce843452054139e028771f</id>
<content type='text'>
Sparse can help us find endianness bugs, but we need to make some
cleanups to be able to more easily spot real bugs.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>llc: use dev_hard_header</title>
<updated>2009-12-27T04:38:23Z</updated>
<author>
<name>Octavian Purdila</name>
</author>
<published>2009-12-26T11:50:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bf9ae5386bca8836c16e69ab8fdbe46767d7452a'/>
<id>urn:sha1:bf9ae5386bca8836c16e69ab8fdbe46767d7452a</id>
<content type='text'>
Using dev_hard_header allows us to use LLC with VLANs and potentially
other Ethernet/TokernRing specific encapsulations. It also removes code
duplication between LLC and Ethernet/TokenRing core code.

Signed-off-by: Octavian Purdila &lt;opurdila@ixiacom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>remove deprecated and not used: print_mac()</title>
<updated>2009-11-16T06:21:34Z</updated>
<author>
<name>Marin Mitov</name>
</author>
<published>2009-11-13T07:58:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b9f5d52670c27e71f04c466aee77e3a2eeca8080'/>
<id>urn:sha1:b9f5d52670c27e71f04c466aee77e3a2eeca8080</id>
<content type='text'>
The function print_mac in net/ethernet/eth.c is marked __deprecated
and not used. Remove it.

Signed-off-by: Marin Mitov &lt;mitov@issp.bas.bg&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: remove COMPAT_NET_DEV_OPS</title>
<updated>2009-05-25T08:53:53Z</updated>
<author>
<name>Alexander Beregalov</name>
</author>
<published>2009-05-25T08:53:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e3804cbebb67887879102925961d41b503f7fbe3'/>
<id>urn:sha1:e3804cbebb67887879102925961d41b503f7fbe3</id>
<content type='text'>
All drivers are already converted to new net_device_ops API
and nobody uses old API anymore.

Signed-off-by: Alexander Beregalov &lt;a.beregalov@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>eth: Declare an optimized compare_ether_addr_64bits() function</title>
<updated>2008-11-24T07:24:32Z</updated>
<author>
<name>Eric Dumazet</name>
</author>
<published>2008-11-24T07:24:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1f87e235e6fb92c2968b52b9191de04f1aff8e77'/>
<id>urn:sha1:1f87e235e6fb92c2968b52b9191de04f1aff8e77</id>
<content type='text'>
Linus mentioned we could try to perform long word operations, even
on potentially unaligned addresses, on x86 at least. David mentioned
the HAVE_EFFICIENT_UNALIGNED_ACCESS test to handle this on all
arches that have efficient unailgned accesses.

I tried this idea and got nice assembly on 32 bits:

158:   33 82 38 01 00 00       xor    0x138(%edx),%eax
15e:   33 8a 34 01 00 00       xor    0x134(%edx),%ecx
164:   c1 e0 10                shl    $0x10,%eax
167:   09 c1                   or     %eax,%ecx
169:   74 0b                   je     176 &lt;eth_type_trans+0x87&gt;

And very nice assembly on 64 bits of course (one xor, one shl)

Nice oprofile improvement in eth_type_trans(), 0.17 % instead of 0.41 %,
expected since we remove 8 instructions on a fast path.

This patch implements a compare_ether_addr_64bits() function, that
uses the CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS ifdef to efficiently
perform the 6 bytes comparison on all capable arches.

Signed-off-by: Eric Dumazet &lt;dada1@cosmosbay.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
