s390: remove decompressor's head.S
authorVasily Gorbik <gor@linux.ibm.com>
Thu, 19 Jul 2018 11:11:28 +0000 (13:11 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 9 Oct 2018 09:21:02 +0000 (11:21 +0200)
commitc8daf72af954b59e3f86d6af0776257acafb0a0d
treece09a3124eabde2b2e88f03d030f2a54ecbe450a
parent31fef8e6db73f89d2f8d12a43eaa5df60d3077e3
s390: remove decompressor's head.S

Decompressor's head.S provided "data mover" sole purpose of which has
been to safely move uncompressed kernel at 0x100000 and jump to it.

With current bzImage layout entire decompressor's code guaranteed to be
in a safe location under 0x100000, and hence could not be overwritten
during kernel move. For that reason head.S could be replaced with simple
memmove function. To do so introduce early boot code phase which is
executed from arch/s390/boot/head.S after "verify_facilities" and takes
care of optional kernel image decompression and transition to it.

Reviewed-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/boot/Makefile
arch/s390/boot/boot.h [new file with mode: 0644]
arch/s390/boot/compressed/Makefile
arch/s390/boot/compressed/decompressor.h [new file with mode: 0644]
arch/s390/boot/compressed/head.S [deleted file]
arch/s390/boot/compressed/misc.c
arch/s390/boot/head.S
arch/s390/boot/startup.c [new file with mode: 0644]