From d50bfb7501e9f17f499850ddee7dcbf7699e03ec Mon Sep 17 00:00:00 2001 From: Tomasz Sterna Date: Tue, 18 Jan 2011 04:28:26 -0500 Subject: [PATCH] Added XEN support to mk-images.x86. Removed PXE support. --- scripts/mk-images | 11 +++++-- scripts/mk-images.x86 | 68 ++++++++----------------------------------- 2 files changed, 21 insertions(+), 58 deletions(-) diff --git a/scripts/mk-images b/scripts/mk-images index 3147cfe..5979ece 100755 --- a/scripts/mk-images +++ b/scripts/mk-images @@ -100,13 +100,14 @@ USBMODS="ohci-hcd uhci-hcd ehci-hcd usbhid mousedev usb-storage sd_mod sr_mod ub FIREWIREMODS="ohci1394 sbp2 fw-ohci fw-sbp2 firewire-sbp2 firewire-ohci" SDMODS="mmc-block sdhci sdhci-pci" IDEMODS="ide-cd ide-cd_mod" +ATAMODS="ata_generic ata_piix sata_nv sata_via sata_promise pata_via" SCSIMODS="sr_mod sg st sd_mod scsi_mod iscsi_tcp iscsi_ibft" FSMODS="fat msdos vfat ext2 ext3 ext4 reiserfs jfs xfs gfs2 cifs fuse btrfs hfsplus" LVMMODS="dm-mod dm-zero dm-snapshot dm-mirror dm-multipath dm-round-robin dm-crypt" RAIDMODS="raid0 raid1 raid5 raid6 raid456 raid10 linear" CRYPTOMODS="sha256_generic cbc xts lrw aes_generic crypto_blkcipher crc32c ecb arc4" PCMCIASOCKMODS="yenta_socket i82365 tcic pcmcia" -INITRDMODS="$USBMODS $FIREWIREMODS $IDEMODS $SCSIMODS $FSMODS $LVMMODS $RAIDMODS $CRYPTOMODS $COMMONMODS $PCMCIASOCKMODS $SDMODS =scsi =net =drm" +INITRDMODS="$USBMODS $FIREWIREMODS $IDEMODS $ATAMODS $SCSIMODS $FSMODS $LVMMODS $RAIDMODS $CRYPTOMODS $COMMONMODS $PCMCIASOCKMODS $SDMODS =scsi =net =drm" . $(dirname $0)/buildinstall.functions @@ -343,7 +344,7 @@ EOF find -H $MMB_DIR/lib/modules -type f -name *.ko -exec gzip -9 {} \; rundepmod $MMB_DIR rm -f $MMB_DIR/lib/modules/*/modules.*map - rm -f $MMB_DIR/lib/modules/*/{build,source} + rm -rf $MMB_DIR/lib/modules/*/{build,source} # create the pci.ids, from modules.alias and the X driver aliases awk '!/^(\t\t|#)/ { print ;if ($0 == "ffff Illegal Vendor ID") nextfile; }' < $PCIIDS | \ @@ -1103,6 +1104,12 @@ for KERNELARCH in $arches; do rpm2cpio *firmware*.rpm | (cd $KERNELROOT; cpio --quiet -iumd) rm -f *firmware*.rpm done + # and get XEN Hypervisor + for p in $(repoquery -c $yumconf 'xen-hypervisor') ; do + yumdownloader -c $yumconf $p + rpm2cpio xen-hypervisor*.rpm | (cd $KERNELROOT; cpio --quiet -iumd) + rm -f xen-hypervisor*.rpm + done if [ ! -d "$KERNELROOT/lib/modules/$version" ]; then echo "$KERNELROOT/lib/modules/$version is not a valid modules directory" 2>&1 diff --git a/scripts/mk-images.x86 b/scripts/mk-images.x86 index 7495ad4..67047b9 100644 --- a/scripts/mk-images.x86 +++ b/scripts/mk-images.x86 @@ -36,6 +36,7 @@ prepareBootTree() { ln $MBD_FSIMAGE $MBD_BOOTTREE/initrd.img cp $KERNELROOT/boot/vmlinuz-* $MBD_BOOTTREE/vmlinuz + cp $KERNELROOT/boot/xen-[0-9]* $MBD_BOOTTREE/xen.gz if [ -f $IMGPATH/usr/lib/anaconda-runtime/syslinux-vesa-splash.jpg ]; then cp $IMGPATH/usr/lib/anaconda-runtime/syslinux-vesa-splash.jpg $MBD_BOOTTREE/splash.jpg @@ -70,30 +71,10 @@ prepareBootTree() { fi } -mkdir -p $TOPDESTPATH/images/pxeboot -cat > $TOPDESTPATH/images/README <> $MBD_BOOTTREE/isolinux.cfg + cp $IMGPATH/usr/lib/anaconda-runtime/boot/memtest* $MBD_BOOTTREE/memtest + echo -e "label memtest86\n menu label ^Memory test\n kernel memtest\n append -\n" >> $MBD_BOOTTREE/isolinux.cfg fi - else + else echo "No isolinux binaries. Skipping isolinux creation" - fi - - # symlink the kernel for pxe dir - ln $TOPDESTPATH/isolinux/vmlinuz $TOPDESTPATH/images/pxeboot/vmlinuz - - cat > $TOPDESTPATH/images/pxeboot/README <> $TOPDESTPATH/.treeinfo -[images-$BASEARCH] -kernel = images/pxeboot/vmlinuz -initrd = images/pxeboot/initrd.img -__EOT__ - if [ -n "$BOOTISO" ]; then echo "boot.iso = images/$BOOTISO" >> $TOPDESTPATH/.treeinfo ; fi fi - # set up the boot stuff for the xen guest kernel - if [ -z "$kernelxen" -o "$kernelvers" = "$kernelxen" ] ; then - cp $KERNELROOT/boot/vmlinuz-$version $TOPDESTPATH/images/pxeboot/$kernelimage - cat << __EOT__ >> $TOPDESTPATH/.treeinfo -[images-xen] -kernel = images/pxeboot/$kernelimage -initrd = images/pxeboot/$initrd - -__EOT__ - fi + if [ -n "$BOOTISO" ]; then echo "boot.iso = images/$BOOTISO" >> $TOPDESTPATH/.treeinfo ; fi }