kernel_optimize_test/net/ipv6
Harald Welte 6869c4d8e0 [NETFILTER]: reduce netfilter sk_buff enlargement
As discussed at netconf'05, we're trying to save every bit in sk_buff.
The patch below makes sk_buff 8 bytes smaller.  I did some basic
testing on my notebook and it seems to work.

The only real in-tree user of nfcache was IPVS, who only needs a
single bit.  Unfortunately I couldn't find some other free bit in
sk_buff to stuff that bit into, so I introduced a separate field for
them.  Maybe the IPVS guys can resolve that to further save space.

Initially I wanted to shrink pkt_type to three bits (PACKET_HOST and
alike are only 6 values defined), but unfortunately the bluetooth code
overloads pkt_type :(

The conntrack-event-api (out-of-tree) uses nfcache, but Rusty just
came up with a way how to do it without any skb fields, so it's safe
to remove it.

- remove all never-implemented 'nfcache' code
- don't have ipvs code abuse 'nfcache' field. currently get's their own
  compile-conditional skb->ipvs_property field.  IPVS maintainers can
  decide to move this bit elswhere, but nfcache needs to die.
- remove skb->nfcache field to save 4 bytes
- move skb->nfctinfo into three unused bits to save further 4 bytes

Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-08-29 15:31:04 -07:00
..
netfilter [NETFILTER]: reduce netfilter sk_buff enlargement 2005-08-29 15:31:04 -07:00
addrconf.c [IPV6]: Don't dump temporary addresses twice 2005-06-28 13:00:30 -07:00
af_inet6.c [IPV6]: Makes IPv6 rcv registration happen last during initialisation. 2005-07-05 14:41:20 -07:00
ah6.c [IPSEC]: Add xfrm_init_state 2005-06-20 13:18:08 -07:00
anycast.c [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
datagram.c [IPV4/IPV6]: Replace spin_lock_irq with spin_lock_bh 2005-06-18 22:56:18 -07:00
esp6.c [IPSEC]: Add xfrm_init_state 2005-06-20 13:18:08 -07:00
exthdrs_core.c [SELINUX]: Fix ipv6_skip_exthdr() invocation causing OOPS. 2005-04-24 20:16:19 -07:00
exthdrs.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
icmp.c [IPV6]: Ensure to use icmpv6_socket in non-preemptive context. 2005-06-13 14:59:44 -07:00
ip6_fib.c [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
ip6_flowlabel.c [IPV6]: remove more unused IPV6_AUTHHDR things. 2005-06-28 15:46:24 -07:00
ip6_input.c [IPV6]: Fix SKB leak in ip6_input_finish() 2005-08-16 21:03:41 -07:00
ip6_output.c [NETFILTER]: reduce netfilter sk_buff enlargement 2005-08-29 15:31:04 -07:00
ip6_tunnel.c [IPV6]: fix implicit declaration of function `xfrm6_tunnel_unregister' 2005-07-24 19:30:06 -07:00
ipcomp6.c [IPCOMP]: Fix false smp_processor_id warning 2005-08-18 14:36:59 -07:00
ipv6_sockglue.c [IPSEC]: Restrict socket policy loading to CAP_NET_ADMIN. 2005-08-06 06:33:15 -07:00
ipv6_syms.c [IPV6]: Kill export of fl6_sock_lookup. 2005-06-02 13:06:36 -07:00
Kconfig [NET]: Make ipip/ip6_tunnel independant of XFRM 2005-07-19 14:03:34 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mcast.c [IPV6]: Fix warning in ip6_mc_msfilter. 2005-07-08 21:44:39 -07:00
ndisc.c [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
proc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
protocol.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
raw.c [IPV6]: Fix raw socket hardware checksum failures 2005-08-16 20:39:38 -07:00
reassembly.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
route.c [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
sit.c [NET]: fix oops after tunnel module unload 2005-07-30 17:46:44 -07:00
sysctl_net_ipv6.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tcp_ipv6.c [TCP]: Document non-trivial locking path in tcp_v{4,6}_get_port(). 2005-08-23 10:49:54 -07:00
udp.c [IPV4/IPV6]: Replace spin_lock_irq with spin_lock_bh 2005-06-18 22:56:18 -07:00
xfrm6_input.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm6_output.c [IPV6]: Fix xfrm tunnel oops with large packets 2005-05-23 13:11:07 -07:00
xfrm6_policy.c From: Kazunori Miyazawa <kazunori@miyazawa.org> 2005-05-26 12:58:04 -07:00
xfrm6_state.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xfrm6_tunnel.c [IPSEC]: Add xfrm_init_state 2005-06-20 13:18:08 -07:00