diff options
author | Christophe Leroy <christophe.leroy@c-s.fr> | 2016-03-07 17:44:37 (GMT) |
---|---|---|
committer | Scott Wood <oss@buserror.net> | 2016-03-09 16:44:18 (GMT) |
commit | 7e393220b6e1ecfa5520d1b2ca31150b7588f458 (patch) | |
tree | dcea05372297033d1327befd4cfa60dfb24141fb /arch/powerpc/lib/ppc_ksyms.c | |
parent | ac6082dd32da2774241a75f1fca2de71a39ef768 (diff) | |
download | linux-7e393220b6e1ecfa5520d1b2ca31150b7588f458.tar.xz |
powerpc: optimise csum_partial() call when len is constant
csum_partial is often called for small fixed length packets
for which it is suboptimal to use the generic csum_partial()
function.
For instance, in my configuration, I got:
* One place calling it with constant len 4
* Seven places calling it with constant len 8
* Three places calling it with constant len 14
* One place calling it with constant len 20
* One place calling it with constant len 24
* One place calling it with constant len 32
This patch renames csum_partial() to __csum_partial() and
implements csum_partial() as a wrapper inline function which
* uses csum_add() for small 16bits multiple constant length
* uses ip_fast_csum() for other 32bits multiple constant
* uses __csum_partial() in all other cases
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Scott Wood <oss@buserror.net>
Diffstat (limited to 'arch/powerpc/lib/ppc_ksyms.c')
-rw-r--r-- | arch/powerpc/lib/ppc_ksyms.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/lib/ppc_ksyms.c b/arch/powerpc/lib/ppc_ksyms.c index 8cd5c0b..c422812 100644 --- a/arch/powerpc/lib/ppc_ksyms.c +++ b/arch/powerpc/lib/ppc_ksyms.c @@ -17,7 +17,7 @@ EXPORT_SYMBOL(strcmp); EXPORT_SYMBOL(strncmp); #ifndef CONFIG_GENERIC_CSUM -EXPORT_SYMBOL(csum_partial); +EXPORT_SYMBOL(__csum_partial); EXPORT_SYMBOL(csum_partial_copy_generic); #endif |