diff options
author | Eric Dumazet <dada1@cosmosbay.com> | 2007-05-04 02:39:04 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-05-04 02:39:04 +0200 |
commit | db3459d1a71d885334831cdca6646a48f5ea0483 (patch) | |
tree | 62bd17f8abb8c4fac280103b6179e275490c5b15 /include/net/icmp.h | |
parent | [TCP]: zero out rx_opt in tcp_disconnect() (diff) | |
download | linux-db3459d1a71d885334831cdca6646a48f5ea0483.tar.xz linux-db3459d1a71d885334831cdca6646a48f5ea0483.zip |
[IPV6]: Some cleanups in include/net/ipv6.h
1) struct ip6_flowlabel : moves 'users' field to avoid two 32bits
holes for 64bit arches. Shrinks by 8 bytes sizeof(struct
ip6_flowlabel)
2) ipv6_addr_cmp() and ipv6_addr_copy() dont need (void *) casts :
Compiler might take into account natural alignement of in6_addr
structs to emit better code for memcpy()/memcmp() Casts to (void *)
force byte accesses.
3) ipv6_addr_prefix() optimization :
Better to clear whole struct, as compiler can emit better code for
memset(addr, 0, 16) (2 stores on x86_64), and avoid some conditional
branches.
# size vmlinux.after vmlinux.before
text data bss dec hex filename
5262262 647612 557432 6467306 62aeea vmlinux.after
5262550 647612 557432 6467594 62b00a vmlinux.before
thats 288 bytes saved.
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/icmp.h')
0 files changed, 0 insertions, 0 deletions