1
0
Fork 0
alistair23-linux/arch/blackfin/lib
Robin Getz 648eee52cc Blackfin: optimize strncpy a bit
Add a little strncpy optimization which can easily cut boot time by 20%.

When the kernel is booting with initramfs, it builds up the filesystem
from a cpio archive by calling strncpy_from_user() via fs/namei.c's
do_getname() on every file in the archive (which can be lots) with a
length of PATH_MAX (1024).  This causes the dest of the strncpy to be
padded with many NUL bytes.

This optimization mostly causes these NUL bytes to be padded with a call
to memset() which is already optimized for filling memory quickly, but
the hardware loop helps a little bit as well.

Boot time measured with 'loglevel=0' so UART speed doesn't get in the way.

Signed-off-by: Robin Getz <robin.getz@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-05-22 14:19:11 -04:00
..
Makefile Blackfin: convert to generic checksum code 2009-12-15 00:13:32 -05:00
ashldi3.c Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
ashrdi3.c Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
divsi3.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
gcclib.h Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
ins.S Blackfin: fix misnomer of some I-pipe helpers 2009-09-16 21:28:30 -04:00
lshrdi3.c Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
memchr.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
memcmp.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
memcpy.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
memmove.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
memset.S Blackfin: optimize strncpy a bit 2010-05-22 14:19:11 -04:00
modsi3.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
muldi3.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
outs.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
smulsi3_highpart.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
strcmp.S Blackfin: move string functions to normal lib/ assembly 2010-05-22 14:19:09 -04:00
strcpy.S Blackfin: move string functions to normal lib/ assembly 2010-05-22 14:19:09 -04:00
strncmp.S Blackfin: move string functions to normal lib/ assembly 2010-05-22 14:19:09 -04:00
strncpy.S Blackfin: optimize strncpy a bit 2010-05-22 14:19:11 -04:00
udivsi3.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
umodsi3.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00
umulsi3_highpart.S Blackfin: mass clean up of copyright/licensing info 2009-10-07 04:36:26 -04:00