--- zzzz-none-000/linux-2.6.28.10/arch/mips/include/asm/checksum.h 2009-05-02 18:54:43.000000000 +0000 +++ puma5-6360-529/linux-2.6.28.10/arch/mips/include/asm/checksum.h 2010-12-10 12:16:03.000000000 +0000 @@ -27,10 +27,10 @@ * * it's best to have buff aligned on a 32-bit boundary */ -__wsum csum_partial(const void *buff, int len, __wsum sum); +__wsum csum_partial(const void *buff, int len, __wsum sum) __attribute__ ((hot)); __wsum __csum_partial_copy_user(const void *src, void *dst, - int len, __wsum sum, int *err_ptr); + int len, __wsum sum, int *err_ptr) __attribute__ ((hot)); /* * this is a new version of the above that records errors it finds in *errp, @@ -68,11 +68,12 @@ * we have just one address space, so this is identical to the above) */ __wsum csum_partial_copy_nocheck(const void *src, void *dst, - int len, __wsum sum); + int len, __wsum sum) __attribute__ ((hot)); /* * Fold a partial checksum without adding pseudo headers */ +static inline __sum16 csum_fold(__wsum sum) __attribute__ ((hot)); static inline __sum16 csum_fold(__wsum sum) { __asm__( @@ -98,6 +99,7 @@ * By Jorge Cwik , adapted for linux by * Arnt Gulbrandsen. */ +static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) __attribute__ ((hot)); static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) { const unsigned int *word = iph;