lib/memcopy: use glibc version

the kernel's memcpy and memmove is very inefficient. But the glibc
version is
quite fast, in some cases it is 10 times faster than the kernel version.
So I
introduce some memory copy macros and functions of the glibc to improve
the
kernel version's performance.

The strategy of the memory functions is:
1. Copy bytes until the destination pointer is aligned.
2. Copy words in unrolled loops.  If the source and destination are not
   aligned in the same way, use word memory operations, but shift and
merge
   two read words before writing.
3. Copy the few remaining bytes.

Signed-off-by: Miao Xie <miaox*******>
adapted by faux123 for 3.0.13 kernel

Conflicts:
	lib/Makefile
lib/sha1: use the git implementation of SHA-1

For ChromiumOS, we use SHA-1 to verify the integrity of the root
filesystem.  The speed of the kernel sha-1 implementation has a major
impact on our boot performance.

To improve boot performance, we investigated using the heavily optimized
sha-1 implementation used in git.  With the git sha-1 implementation, we
see a 11.7% improvement in boot time.

10 reboots, remove slowest/fastest.

Before:

  Mean: 6.58 seconds Stdev: 0.14

After (with git sha-1, this patch):

  Mean: 5.89 seconds Stdev: 0.07

The other cool thing about the git SHA-1 implementation is that it only
needs 64 bytes of stack for the workspace while the original kernel
implementation needed 320 bytes.

Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Cc: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Cc: Nicolas Pitre <nico@cam.org>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: David S. Miller <davem@davemloft.net>
Cc: linux-crypto@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Conflicts:
	include/linux/cryptohash.h
	lib/sha1.c
Remove ARM sha1 routines

Since commit 8827a4a6b397b07a341ba7fd36ffb91a7835207d
("lib/sha1: use the git implementation of SHA-1"), the ARM SHA1
routines no longer work. The reason? They depended on the larger
320-byte workspace, and now the sha1 workspace is just 16 words
(64 bytes). So the assembly version would overwrite the stack randomly.

The optimized asm version is also probably slower than the new improved
C version, so there's no reason to keep it around.  At least that was
the case in git, where what appears to be the same assembly language
version was removed two years ago because the optimized C BLK_SHA1 code
was faster.

Reported-and-tested-by: Joachim Eastwood <manabian@gmail.com>
Cc: Andreas Schwab <schwab@linux-m68k.org>
Cc: Nicolas Pitre <nico@fluxnic.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Conflicts:
	arch/arm/kernel/armksyms.c
	arch/arm/lib/Makefile
Added optimized ARM RWSEM algorithm.

Conflicts:
	arch/arm/Kconfig
Added optimized CRC32 algorithm.

Conflicts:
	Documentation/00-INDEX
	crypto/Kconfig
	crypto/crc32c.c
	include/linux/crc32.h
	lib/Kconfig
	lib/crc32.c
	lib/crc32defs.h
	lib/gen_crc32table.c
RAM++

Conflicts:
	drivers/staging/android/logger.h
Revert "Added optimized CRC32 algorithm."

This reverts commit 7f0a5e665480102595b7ec1231a4fed240a28fbc.
Proportional Rate Reduction for TCP-[Google]

Conflicts:
	include/linux/tcp.h
	net/ipv4/tcp_input.c
	net/ipv4/tcp_output.c
Asynchronous I/O latency to a solid-state disk greatly increased between the 2.6.32 and 3.0 kernels. By removing the plug from do_io_submit(), we observed a 34% improvement in the I/O latency.

Unfortunately, at this level, we don't know if the request is to
a rotating disk or not.

Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
Cc: linux-aio@kvack.org
Cc: Chris Mason <chris.mason@oracle.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jeff Moyer <jmoyer@redhat.com>

Conflicts:
	fs/aio.c
code cleanup
change kernel compression from GZIP to LZMA
battery test
auto version
battery test
More free RAM

Conflicts:
	include/linux/autoconf.h
sched: enable ARCH_POWER

Enable the scheduler feature that allows use of arch_scale_smt_power.
Stub out
the broken x86 implementation.

Signed-off-by: Joel Schopp <jschopp@xxxxxxxxxxxxxx>

Conflicts:
	kernel/sched_features.h
sched: Disable GENTLE_FAIR_SLEEPERS

Signed-off-by: AdiPat <adithemagnificent@gmail.com>
noatime and nodiratime-franciscofranco

Conflicts:
	fs/namespace.c
Add frandom driver

Conflicts:
	drivers/char/Makefile