mirror of
https://github.com/torvalds/linux.git
synced 2024-11-02 10:11:36 +00:00
18c5332bc1
'make install' creates a /boot/zImage[.vmode] file when the defconfig is used. It uses the second arg as file content, which is the vmlinux, and the 5th arg as file name, which is the BOOTIMAGE name. A comment in an earlier patch to install.sh states that yaboot can not load a zImage+initrd combo. This was true in kernel 2.6.5 because it did use bi_recs to pass the initrd info. But this concept was always broken. Register r3 holds the initrd address and r4 holds the initrd size. This works with all kernel versions. The current code in main.c leaves r3 and r4 alone, so the kernel should be able to see and use the memory range with the initrd content. If one wants to rerun mkinitrd, it is currently hard to get the uname -r value for the installed zImage. Without this info, mkinitrd can not know what modules to use. This would be fixable by including the /proc/version output of the new kernel. But it is simpler to just use the plain vmlinux. So all this patch does is to write to /boot/vmlinux instead to /boot/zImage Signed-off-by: Olaf Hering <olh@suse.de> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
43 lines
1.1 KiB
Bash
43 lines
1.1 KiB
Bash
#!/bin/sh
|
|
#
|
|
# arch/ppc64/boot/install.sh
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU General Public
|
|
# License. See the file "COPYING" in the main directory of this archive
|
|
# for more details.
|
|
#
|
|
# Copyright (C) 1995 by Linus Torvalds
|
|
#
|
|
# Blatantly stolen from in arch/i386/boot/install.sh by Dave Hansen
|
|
#
|
|
# "make install" script for ppc64 architecture
|
|
#
|
|
# Arguments:
|
|
# $1 - kernel version
|
|
# $2 - kernel image file
|
|
# $3 - kernel map file
|
|
# $4 - default install path (blank if root directory)
|
|
# $5 - kernel boot file, the zImage
|
|
#
|
|
|
|
# User may have a custom install script
|
|
|
|
if [ -x ~/bin/${CROSS_COMPILE}installkernel ]; then exec ~/bin/${CROSS_COMPILE}installkernel "$@"; fi
|
|
if [ -x /sbin/${CROSS_COMPILE}installkernel ]; then exec /sbin/${CROSS_COMPILE}installkernel "$@"; fi
|
|
|
|
# Default install
|
|
|
|
# this should work for both the pSeries zImage and the iSeries vmlinux.sm
|
|
image_name=`basename $2`
|
|
|
|
if [ -f $4/$image_name ]; then
|
|
mv $4/$image_name $4/$image_name.old
|
|
fi
|
|
|
|
if [ -f $4/System.map ]; then
|
|
mv $4/System.map $4/System.old
|
|
fi
|
|
|
|
cat $2 > $4/$image_name
|
|
cp $3 $4/System.map
|