• Ilpo Järvinen's avatar
    ipv6: almost identical frag hashing funcs combined · 93c8b90f
    Ilpo Järvinen authored
    $ diff-funcs ip6qhashfn reassembly.c netfilter/nf_conntrack_reasm.c
     --- reassembly.c:ip6qhashfn()
     +++ netfilter/nf_conntrack_reasm.c:ip6qhashfn()
    @@ -1,5 +1,5 @@
    -static unsigned int ip6qhashfn(__be32 id, struct in6_addr *saddr,
    -			       struct in6_addr *daddr)
    +static unsigned int ip6qhashfn(__be32 id, const struct in6_addr *saddr,
    +			       const struct in6_addr *daddr)
     {
     	u32 a, b, c;
    
    @@ -9,7 +9,7 @@
    
     	a += JHASH_GOLDEN_RATIO;
     	b += JHASH_GOLDEN_RATIO;
    -	c += ip6_frags.rnd;
    +	c += nf_frags.rnd;
     	__jhash_mix(a, b, c);
    
     	a += (__force u32)saddr->s6_addr32[3];
    
    And codiff xx.o.old xx.o.new:
    
    net/ipv6/netfilter/nf_conntrack_reasm.c:
      ip6qhashfn         | -512
      nf_hashfn          |   +6
      nf_ct_frag6_gather |  +36
     3 functions changed, 42 bytes added, 512 bytes removed, diff: -470
    net/ipv6/reassembly.c:
      ip6qhashfn    | -512
      ip6_hashfn    |   +7
      ipv6_frag_rcv |  +89
     3 functions changed, 96 bytes added, 512 bytes removed, diff: -416
    
    net/ipv6/reassembly.c:
      inet6_hash_frag | +510
     1 function changed, 510 bytes added, diff: +510
    
    Total: -376
    
    Compile tested.
    Signed-off-by: default avatarIlpo Järvinen <ilpo.jarvinen@helsinki.fi>
    Acked-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    93c8b90f
ipv6.h 16.6 KB