From: Stephen Hemminger Tne network code does memset for 6 and 8 byte values, that can easily be optimized into simple assignments without string instructions. Signed-off-by: Stephen Hemminger Cc: "David S. Miller" Cc: Andi Kleen Signed-off-by: Andrew Morton --- include/asm-i386/string.h | 8 ++++++++ 1 files changed, 8 insertions(+) diff -puN include/asm-i386/string.h~i386-optimize-memset-of-6-and-8-bytes include/asm-i386/string.h --- a/include/asm-i386/string.h~i386-optimize-memset-of-6-and-8-bytes +++ a/include/asm-i386/string.h @@ -228,6 +228,14 @@ static __always_inline void * __constant case 4: *(unsigned long *)s = pattern; return s; + case 6: + *(unsigned long *)s = pattern; + *(2+(unsigned short *)s) = pattern; + return s; + case 8: + *(unsigned long *)s = pattern; + *(1+(unsigned long *)s) = pattern; + return s; } #define COMMON(x) \ __asm__ __volatile__( \ _