Hi Dave,
The script is trying to edit the partition table so that it take into account the fact that the master image also has some partitions on that SD card.
Unfortunately, the file it is trying to edit (init.rc) is wrong. The partition table information has not been stored there for a while, but in a file that used to be called fstab.partitions and now in the new image is called fstab.arm-versatileexpress for Versatile Express boards.
We need an updated LAVA script that does the sed editing of the partition table on the correct file.
Best regards,
Liviu
On Thu, Feb 14, 2013 at 12:28:30PM +0000, Dean Arnold wrote:
Hi Dave,
I have attached a log of our failing job alongside the tinkering Liviu was doing with the initrd on the board itself.
We have used the boot.tar.bz2 file from this build: http://snapshots.linaro.org/android/~linaro-android/vexpress-linaro-mp/lastSuccessful and replaced the kernel. We have not touched the initrd.
Liviu, could you explain to Dave what you think is going wrong please?
Cheers
Dean
* Documentation: https://wiki.linaro.org/
root@master:~#
root@master:~# fdisk -l /dev/mmcblk0
mmcblk0 mmcblk0p2 mmcblk0p4 mmcblk0p6
mmcblk0p1 mmcblk0p3 mmcblk0p5 mmcblk0p7
root@master:~# fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 15.9 GB, 15931539456 bytes
4 heads, 16 sectors/track, 486192 cylinders, total 31116288 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 * 8192 114687 53248 e W95 FAT16 (LBA)
/dev/mmcblk0p2 114688 2097151 991232 83 Linux
/dev/mmcblk0p3 2097152 2228223 65536 c W95 FAT32 (LBA)
/dev/mmcblk0p4 2228224 31116287 14444032 5 Extended
/dev/mmcblk0p5 2230272 10618879 4194304 83 Linux
/dev/mmcblk0p6 10620928 14815231 2097152 83 Linux
/dev/mmcblk0p7 14817280 31116287 8149504 c W95 FAT32 (LBA)
root@master:~# ls /tmp/
root@master:~# ls /mnt/lava/boot/
root@master:~# mount /dev/disk/by-label/testboot /mnt/lava/boot
root@master:~# ls /mnt/lava/boot/
cmdline u-boot_v2p-ca9.bin uefi_v2p-ca9.bin
config uImage v2p-ca15-tc1.dtb
initrd uInitrd v2p-ca15-tc2.dtb
rtsm uefi_v2p-ca15-tc1.bin v2p-ca5s.dtb
u-boot_v2p-ca15-tc1.bin uefi_v2p-ca15-tc2.bin v2p-ca9.dtb
u-boot_v2p-ca5s.bin uefi_v2p-ca5s.bin zImage
root@master:~# ls tm
ls: cannot access tm: No such file or directory
root@master:~# ls ~/tm
ls: cannot access /root/tm: No such file or directory
root@master:~# ls /tmp/
root@master:~# dd if=/mnt/lava/boot/uInitrd of=/tmp/initrd.data bs=64 skip=1
3540+1 records in
3540+1 records out
226572 bytes (227 kB) copied, 0.944946 s, 240 kB/s
root@master:~# cd /tmp/
root@master:/tmp# lsl
-bash: lsl: command not found
root@master:/tmp# ls -al
total 232
drwxrwxrwt 2 root root 4096 Feb 14 11:46 .
drwxr-xr-x 23 root root 4096 Oct 12 08:30 ..
-rw-r--r-- 1 root root 226572 Feb 14 11:46 initrd.data
root@master:/tmp# gunzip -c -f initrd.data | cpio -i
755 blocks
root@master:/tmp# ls -al
total 484
drwxrwxrwt 8 root root 4096 Feb 14 11:49 .
drwxr-xr-x 23 root root 4096 Oct 12 08:30 ..
drwxrwx--x 2 root root 4096 Feb 14 11:49 data
-rw-r--r-- 1 root root 116 Feb 14 11:49 default.prop
drwxr-xr-x 2 root root 4096 Feb 14 11:49 dev
-rw-r----- 1 root root 688 Feb 14 11:49 fstab.arm-versatileexpress
-rw-r----- 1 root root 688 Feb 14 11:49 fstab.v2p-aarch64
-rwxr-x--- 1 root root 129908 Feb 14 11:49 init
-rwxr-x--- 1 root root 1744 Feb 14 11:49 init.arm-versatileexpress.rc
-rwxr-x--- 1 root root 2487 Feb 14 11:49 init.goldfish.rc
-rwxr-x--- 1 root root 21091 Feb 14 11:49 init.rc
-rwxr-x--- 1 root root 1795 Feb 14 11:49 init.trace.rc
-rwxr-x--- 1 root root 3915 Feb 14 11:49 init.usb.rc
-rwxr-x--- 1 root root 1595 Feb 14 11:49 init.v2p-aarch64.rc
-rwxr-x--- 1 root root 27288 Feb 14 11:49 initlogo.rle
-rw-r--r-- 1 root root 226572 Feb 14 11:46 initrd.data
drwxr-xr-x 2 root root 4096 Feb 14 11:49 proc
drwxr-x--- 2 root root 4096 Feb 14 11:49 sbin
drwxr-xr-x 2 root root 4096 Feb 14 11:49 sys
drwxr-xr-x 2 root root 4096 Feb 14 11:49 system
-rw-r--r-- 1 root root 45 Feb 14 11:49 ueventd.arm-versatileexpress.rc
-rw-r--r-- 1 root root 272 Feb 14 11:49 ueventd.goldfish.rc
-rw-r--r-- 1 root root 4024 Feb 14 11:49 ueventd.rc
-rw-r--r-- 1 root root 45 Feb 14 11:49 ueventd.v2p-aarch64.rc
root@master:/tmp# cat fstab.arm-versatileexpress
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
/dev/block/mmcblk0p2 /system ext4 ro wait
/dev/block/mmcblk0p3 /cache ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait
/dev/block/mmcblk0p5 /data ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait
root@master:/tmp# grep mmcblk init.rc
root@master:/tmp# grep block init.rc
root@master:/tmp# less init.rc
# Copyright (C) 2012 The Android Open Source Project
#
# IMPORTANT: Do not create world writable files or directories.
# This is a common source of Android security bugs.
#
import /init.usb.rc
import /init.${ro.hardware}.rc
import /init.trace.rc
import /init.partitions.rc
on early-init
# Set init and its forked children's oom_adj.
write /proc/1/oom_adj -16
# Set the security context for the init process.
# This should occur before anything else (e.g. ueventd) is started.
setcon u:r:init:s0
start ueventd
# create mountpoints
mkdir /mnt 0775 root system
root@master:/tmp# cat init.arm-versatileexpress.rc
on init
export EXTERNAL_STORAGE /mnt/sdcard
symlink /mnt/sdcard /storage/sdcard0
symlink /mnt/sdcard /sdcard
# mount debugfs
mount debugfs /sys/kernel/debug /sys/kernel/debug
# power management
# Enable off mode by default
#write /sys/kernel/debug/pm_debug/enable_off_mode 1
on boot
# create dhcpcd dir
mkdir /data/misc/dhcp 0770 dhcp dhcp
chmod 0770 /data/misc/dhcp
# For TC2, set A15 and A7 clusters A7s to interactive governor
# (Other CoreTiles don't have cpu_freq so this doesn't affect them.)
write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor interactive
write /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor interactive
# change permissions for alsa nodes
chmod 0777 /dev/snd/pcmC0D0c
chmod 0777 /dev/snd/pcmC0D0p
chmod 0777 /dev/snd/controlC0
chmod 0777 /dev/snd/timer
#change permissions for alsa nodes for audio modem
chmod 0777 /dev/snd/pcmC0D5c
chmod 0777 /dev/snd/pcmC0D5p
#change permissions for alsa nodes for HDMI
chmod 777 /dev/snd/pcmC0D7p
chown system system /sys/class/graphics/fb0/overlays
chown system system /sys/class/graphics/fb0/fit_to_screen
chown system system /sys/class/graphics/fb1/overlays
on fs
mount_all /fstab.arm-versatileexpress
# setup IRQ affinity to the A7s
service setirqaffinity /sbin/set_irq_affinity.sh 0xc07
class main
user root
oneshot
service faketsd /system/bin/faketsd
class main
user bluetooth
group bluetooth
oneshot
# hack to start networking early during boot, this will enable use of
# ADB and gator without further manual intervention
service netcfghack /system/bin/netcfg eth0 dhcp
class main
user root
oneshot
root@master:/tmp# grep fstab *.rc
init.arm-versatileexpress.rc: mount_all /fstab.arm-versatileexpress
init.v2p-aarch64.rc: mount_all /fstab.v2p-aarch64
root@master:/tmp# cat fstab.arm-versatileexpress
# Android fstab file.
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
# The filesystem that contains the filesystem checker binary (typically /system) cannot
# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
/dev/block/mmcblk0p2 /system ext4 ro wait
/dev/block/mmcblk0p3 /cache ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait
/dev/block/mmcblk0p5 /data ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait
root@master:/tmp# ls -la
total 484
drwxrwxrwt 8 root root 4096 Feb 14 11:49 .
drwxr-xr-x 23 root root 4096 Oct 12 08:30 ..
drwxrwx--x 2 root root 4096 Feb 14 11:49 data
-rw-r--r-- 1 root root 116 Feb 14 11:49 default.prop
drwxr-xr-x 2 root root 4096 Feb 14 11:49 dev
-rw-r----- 1 root root 688 Feb 14 11:49 fstab.arm-versatileexpress
-rw-r----- 1 root root 688 Feb 14 11:49 fstab.v2p-aarch64
-rwxr-x--- 1 root root 129908 Feb 14 11:49 init
-rwxr-x--- 1 root root 1744 Feb 14 11:49 init.arm-versatileexpress.rc
-rwxr-x--- 1 root root 2487 Feb 14 11:49 init.goldfish.rc
-rwxr-x--- 1 root root 21091 Feb 14 11:49 init.rc
-rwxr-x--- 1 root root 1795 Feb 14 11:49 init.trace.rc
-rwxr-x--- 1 root root 3915 Feb 14 11:49 init.usb.rc
-rwxr-x--- 1 root root 1595 Feb 14 11:49 init.v2p-aarch64.rc
-rwxr-x--- 1 root root 27288 Feb 14 11:49 initlogo.rle
-rw-r--r-- 1 root root 226572 Feb 14 11:46 initrd.data
drwxr-xr-x 2 root root 4096 Feb 14 11:49 proc
drwxr-x--- 2 root root 4096 Feb 14 11:49 sbin
drwxr-xr-x 2 root root 4096 Feb 14 11:49 sys
drwxr-xr-x 2 root root 4096 Feb 14 11:49 system
-rw-r--r-- 1 root root 45 Feb 14 11:49 ueventd.arm-versatileexpress.rc
-rw-r--r-- 1 root root 272 Feb 14 11:49 ueventd.goldfish.rc
-rw-r--r-- 1 root root 4024 Feb 14 11:49 ueventd.rc
-rw-r--r-- 1 root root 45 Feb 14 11:49 ueventd.v2p-aarch64.rc
root@master:/tmp#
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯