xfrm: use "unsigned int" in __xfrm6_pref_hash()
authorAlexey Dobriyan <adobriyan@gmail.com>
Thu, 23 Mar 2017 22:53:09 +0000 (01:53 +0300)
committerSteffen Klassert <steffen.klassert@secunet.com>
Fri, 24 Mar 2017 06:03:12 +0000 (07:03 +0100)
x86_64 is zero-extending arch so "unsigned int" is preferred over "int"
for address calculations.

Space savings:

add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-58 (-58)
function                                     old     new   delta
xfrm_hash_resize                            2752    2743      -9
policy_hash_bysel                            985     973     -12
policy_hash_direct                          1036     999     -37

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
net/xfrm/xfrm_hash.h

index 666c5ffe929dca388b218d99c2d71946a231872f..eaea9c4fb3b0e6ec8903cfc5456519e8d4e7dcd1 100644 (file)
@@ -54,8 +54,8 @@ static inline unsigned int __xfrm4_dpref_spref_hash(const xfrm_address_t *daddr,
 static inline unsigned int __xfrm6_pref_hash(const xfrm_address_t *addr,
                                             __u8 prefixlen)
 {
-       int pdw;
-       int pbi;
+       unsigned int pdw;
+       unsigned int pbi;
        u32 initval = 0;
 
        pdw = prefixlen >> 5;     /* num of whole u32 in prefix */