From b7bde6942c2db1c213c09fd0bcf85d44c27afe0d Mon Sep 17 00:00:00 2001 From: Stefano Stabellini Date: Mon, 21 Oct 2019 15:32:21 -0700 Subject: Rename docker-extras to scripts Signed-off-by: Stefano Stabellini --- docker-extras/disk_image | 134 ----------------------------------------------- 1 file changed, 134 deletions(-) delete mode 100755 docker-extras/disk_image (limited to 'docker-extras/disk_image') diff --git a/docker-extras/disk_image b/docker-extras/disk_image deleted file mode 100755 index 57b933f..0000000 --- a/docker-extras/disk_image +++ /dev/null @@ -1,134 +0,0 @@ -#!/bin/bash - -# This helps to see what is going on -set -e -x - -# Used to maintain intermediary state. (Not currently used) -DESTDIR="$(mktemp -d /tmp/imagebuilder-zynqmp.XXXXXX)" -UBOOT_OUT="/tmp/output" -OUTDIR="/tmp/img" -mkdir ${OUTDIR} - -IMG="${OUTDIR}/zynqmp.img" - -. config - -offset=$((2*1024*1024)) -_part1_size=`stat --printf="%s" $UBOOT_OUT/$XEN` -_part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/$DOM0_KERNEL` )) -_part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/$DEVICE_TREE` )) -i=0 -while test $i -lt $NUM_DOMUS -do - _part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/${DOMU_KERNEL[$i]}` )) - if test "${DOMU_RAMDISK[$i]}" - then - _part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/${DOMU_RAMDISK[$i]}` )) - fi - if test "${DOMU_PASSTHROUGH_DTB[$i]}" - then - _part1_size=$(( $_part1_size + `stat --printf="%s" $UBOOT_OUT/${DOMU_PASSTHROUGH_DTB[$i]}` )) - fi - i=$(( $i + 1 )) -done - -# add 16 MB slack -_part1_size=$(( $_part1_size + 16777216 )) -_part1_size=$(( $_part1_size + $offset - 1)) -_part1_size=$(( $_part1_size & ~($offset - 1) )) -_part1_size=$(( $_part1_size / 1024 / 1024 )) -echo PART1 size: "$_part1_size"MB - -if test "$DOM0_RAMDISK" -then - _part2_size=`stat --printf="%s" $UBOOT_OUT/$DOM0_RAMDISK` -fi -_part2_size=$(( $_part2_size + $offset - 1)) -_part2_size=$(( $_part2_size & ~($offset - 1) )) -# account for gzip compression -_part2_size=$(( $_part2_size * 2 )) -# add some slack -_part2_size=$(( 128*1024*1024 + $_part2_size )) -_part2_size=$(( $_part2_size / 1024 / 1024 )) -echo PART2 size: "$_part2_size"MB - - -_sector_size=512 -# _sector_first_start needs to be aligned to 2048 -_sector_first_start=2048 -_sector_first_end=$(( $_part1_size * 1024 * 1024 / $_sector_size + $_sector_first_start - 1)) -_sector_second_start=$(( $_sector_first_end + 1 )) -_sector_second_end=$(( $_part2_size * 1024 * 1024 / $_sector_size + $_sector_second_start - 1)) -_tot_size=$(( $_part1_size + $_part2_size + 16 )) - -# NOTE: Increase vos_a to 256 to accomodate rootfs -# 528 MiB (256 + 256 + 16) -truncate $IMG -s "$_tot_size"M - -# create GPT partition table -sgdisk -og $IMG - -sgdisk -n 1:$_sector_first_start:$_sector_first_end -c 1:"Linux1" -t 1:8300 $IMG -sgdisk -n 2:$_sector_second_start:$_sector_second_end -c 2:"Linux2" -t 2:8300 $IMG - -# find the first available loop device -_loop_dev=$(losetup -f) - -# attach loopback device to $IMG -losetup $_loop_dev $IMG - -_disksize=$(blockdev --getsize $_loop_dev) - -dmsetup create diskimage --table "0 $_disksize linear $_loop_dev 0" - -# ensure that /dev/mapper/diskimage exists -while [ ! -b /dev/mapper/diskimage ] -do - sleep 2 -done - -kpartx -a /dev/mapper/diskimage - -# ensure that /dev/mapper/{diskimage1,diskimage2} exists -while [ ! -b /dev/mapper/diskimage1 ] || [ ! -b /dev/mapper/diskimage2 ] -do - sleep 2 -done - -# format vos_a partition -mkfs.ext4 -L vos_a -F /dev/mapper/diskimage1 - -# format vos_b partition -mkfs.ext4 -L vos_b -F /dev/mapper/diskimage2 - - -# create mount point and mount disk2 -mkdir -p ${DESTDIR}/part/disk2 -mount -t ext4 /dev/mapper/diskimage2 $DESTDIR/part/disk2 - -# Extract rootfs cpio archive into `.../part/vos_a` -cd ${DESTDIR}/part/disk2 -cat ${UBOOT_OUT}/dom0-ramdisk.cpio | gunzip | cpio -id -mv ${UBOOT_OUT}/dom0-ramdisk.cpio* /tmp - -# umount -sync -cd / -umount $DESTDIR/part/disk2 - -# create mount point and mount disk1 -mkdir -p ${DESTDIR}/part/disk1 -mount -t ext4 /dev/mapper/diskimage1 $DESTDIR/part/disk1 - -# copy over files needed -cp -r $UBOOT_OUT/* ${DESTDIR}/part/disk1/ - -# unmount -sync -# This fails for some reason. It could work now because we are not using qemu-user -# fstrim $DESTDIR/part/disk1 -umount $DESTDIR/part/disk1 - -kpartx -d /dev/mapper/diskimage -dmsetup remove diskimage -losetup -d $_loop_dev -- cgit v1.2.3