CONTACT   |   QUICK LINKS   |   SITEMAP     search
 
Computer Sciences
image aboutBSC computational earth life computer applications marenostrum image
Computer Sciences
Linux Kernel
Home > Computer Sciences > Programming Models > Linux on Cell > Cell BE SDKs > SDK 3.1 > Cell BE Components > Linux Kernel pdf print
 
 

Fedora 9 Linux Kernel for the Cell/B.E.™

stroke

In this section we provide a Linux operating system kernel with Cell Broadband Engine Architecture support for use with the IBM SDK 3.1 on Fedora 9. In RHEL 5.2 (or later), a similar kernel is included in the distribution.

We provide a pre-built kernel binary package intended for IBM BladeCenter QS21/QS22 hardware but also the sources and instructions how to build it. Even new versions could be made available, only the kernel level hosted here would be the one supported in IBM SDK 3.1.

The IBM SDK provides a guide that helps you installing IBM BladeCenter QS21/QS22 where this zImage file is needed (see Installation Guide for the SDK for Multicore Acceleration v3.1)

zImage to boot over the network

IBM BladeCenter QS21 and QS22 do not provide on-board disk space, if there is no SAS-attached storage, a NFS network boot must be performed. We provide a zImage that supports booting from NFS in order to boot and install new IBM BladeCenter QS21/QS22 hardware. The zImage has been built using the binary kernel provided below. You will need different zImages for different kernels but blade servers that run the same kernel and same NFS root can all boot using the same zImage.

File Description
zImage.initrd-2.6.25.14-108.20080910bsc.ppc64 zImage that contains a boot kernel and a suitable initial RAM disk..

zImage should be copied to the exported TFTP directory on the TFTP server and a Dynamic Host Configuration Protocol (DHCP) server that supports the Bootstrap Protocol (BOOTP) properly configured for each blade server. See the Installation Guide for the SDK for Multicore Acceleration v3.1 for a detailed explanation.

Fedora 9 kernel binary and sources

The binary kernel was built with the default kernel configuration file and Cell Broadband Engine Architecture patches. We provide both the pre-compiled kernel and the source rpm which includes the patches and the 2.6.25 Linux kernel tarball.

Packages are provided as-is. The kernel should boot on the IBM BladeCenter QS21 or QS22.


File Description
kernel-2.6.25.14-108.20080910bsc.ppc64.rpm Pre-compiled Fedora 9 kernel binaries for IBM BladeCenter QS21/QS22.
kernel-2.6.25.14-108.20080910bsc.src.rpm Fedora 9 kernel and patches.

If you are installing Fedora 9 on BladeCenter hardware, the kernel must be manually installed. To install the kernel first download the previous binary kernel rpm and as root user type:

 rpm -ivh --force kernel-2.6.25.14-108.20080910bsc.ppc64.rpm 

You must reboot to activate the new kernel.

Other RPMs

File Description
kernel-devel-2.6.25.14-108.20080910bsc.ppc64.rpm Kernel devel rpm.
kernel-headers-2.6.25.14-108.20080910bsc.ppc64.rpm Kernel headers rpm.

RPMs for debugging kernel data related to SPUs

SDK provide a means of debugging kernel data related to SPUs through specific crash commands, by using a dumped kernel image. This functionality is based on the use of kdump, and the documentation can be found in the Documentation/kdump/kdump.txt file from the Linux kernel sources.

The Programmer's Guide to the IBM SDK for Multicore Acceleration contains some information about how to analyze Cell/B.E.™ SPUs with kdump and crash.

You will need two environments:

  • A production system, which runs the kernel where problems can occur.
  • An analysis system, where the information (dump file) captured by the production system is analyzed and the possible problems are identified.

The production system must be a Cell/B.E.™ hardware. Otherwise, SPU-specific data that is used by crash is not available in the dump file. The analysis system can be any PowerPC hardware, either 32 or 64-bit.

We provide the following SDK packages that are necessary to have a complete environment to make use of SPU crash commands:

  • Analysis system
    • crash-spu-commands : SPU-specific commands for crash tool
    • crash : crash tool for dump analysis (dependency of crash-spu-commands)
    • kernel-debuginfo : kernel vmlinux image compiled with debug symbols
    • kernel-debuginfo-common : a dependency of kernel-debuginfo
  • Production system
    • kernel : kernel image that starts dump capture kernel on a crash event
    • kexec-tools : tool used for warm boot of the dump capture kernel
    • kernel-kdump : dump capture kernel image
    • busybox-kdump : optional package that allows to reserve less memory for booting dump capture kernel.

All these packages must be installed manually.

Kernel debuginfo

File Description
kernel-debuginfo-2.6.25.14-108.20080910bsc.ppc64.rpm Kernel vmlinux image compiled with debug symbols
kernel-debuginfo-common-2.6.25.14-108.20080910bsc.ppc64.rpm A dependency of kernel-debuginfo.

Kernel kdump

File Description
kernel-kdump-2.6.25.14-108.20080910bsc.ppc64.rpm Dump capture kernel image.
kernel-kdump-debuginfo-2.6.25.14-108.20080910bsc.ppc64.rpm Dump capture kernel image debuginfo.
kernel-kdump-devel-2.6.25.14-108.20080910bsc.ppc64.rpm Dump capture kernel image devel.

Busybox kdump

busybox-kdump provides a custom initrd that allows to reduce the amount of reserved memory for the dump capture kernel and it is recommended for the production system.

File Description
busybox-kdump-1.9.1-1.ppc.rpm Busybox kdump.
busybox-kdump-debuginfo-1.9.1-1.ppc.rpm Busybox debuginfo kdump.
busybox-kdump-1.9.1-1.nosrc.rpm Busybox spec file.

Kernel compiled with debug

File Description
kernel-debug-2.6.25.14-108.20080910bsc.ppc64.rpm Kernel with debug.
kernel-debug-devel-2.6.25.14-108.20080910bsc.ppc64.rpm Kernel devel with debug.
kernel-debug-debuginfo-2.6.25.14-108.20080910bsc.ppc64.rpm Kernel with debug debuginfo rpm.

Building your zImage

A PowerPC machine running Fedora 9 with the CBEA-enabled kernel RPM installed is needed to build the zImage file. The CBEA-enabled kernel simply needs to be installed, and does not need to be the running kernel, so any PowerPC Fedora 9 machine can be used to build the zImage.

To install the kernel first you must type root user:

 rpm -ivh --force kernel-2.6.25.14-108.20080910bsc.ppc64.rpm 

This will install the kernel in your machine. If you built the kernel on a machine that is not an IBM BladeCenter QS21 or QS22, we recommend deleting the entry which may have been added to your yaboot.conf as part of the install to avoid booting this Cell/B.E.™-enabled kernel by mistake.

Download following fstab and copy it to /root/fstab. To create zImage just type:

/sbin/mkinitrd --with=tg3 --with=nfs --net-dev=eth0 --fstab=/root/fstab /boot/initrd-2.6.25.14-108.20080910bsc.ppc64.img 2.6.25.14-108.20080910bsc.ppc64
wrapper -i /boot/initrd-2.6.25.14-108.20080910bsc.ppc64.img -o zImage.initrd-2.6.25.14-108.20080910bsc.ppc64 /boot/vmlinuz-2.6.25.14-108.20080910bsc.ppc64
If the machine has a static IP address, you need to rename the network configuration file to force the creation of the image with a dynamic IP address:
mv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak
/sbin/mkinitrd --with=tg3 --with=nfs --net-dev=eth0 --fstab=/root/fstab /boot/initrd-2.6.25.14-108.20080910bsc.ppc64.img 2.6.25.14-108.20080910bsc.ppc64
mv /etc/sysconfig/network-scripts/ifcfg-eth0.bak /etc/sysconfig/network-scripts/ifcfg-eth0
wrapper -i /boot/initrd-2.6.25.14-108.20080910bsc.ppc64.img -o zImage.initrd-2.6.25.14-108.20080910bsc.ppc64 /boot/vmlinuz-2.6.25.14-108.20080910bsc.ppc64



 
  top
link_top
  Barcelona Supercomputing Center, 2010 - Legal Notice
 
link_top