Merge lp:~le-chi-thu/lava-dispatcher/fix-android-boot-problem into lp:lava-dispatcher

Proposed by Le Chi Thu
Status: Merged
Approved by: Zygmunt Krynicki
Approved revision: 268
Merged at revision: 268
Proposed branch: lp:~le-chi-thu/lava-dispatcher/fix-android-boot-problem
Merge into: lp:lava-dispatcher
Diff against target: 89 lines (+30/-20)
2 files modified
doc/changes.rst (+5/-0)
lava_dispatcher/client/master.py (+25/-20)
To merge this branch: bzr merge lp:~le-chi-thu/lava-dispatcher/fix-android-boot-problem
Reviewer Review Type Date Requested Status
Zygmunt Krynicki (community) Approve
Review via email: mp+100275@code.launchpad.net

Description of the change

Fixed boot android image problem caused by changing of init.rc file.

Please help me deploy it on production after approved.

All Android builds for all boards will failed without this fix.

To post a comment you must log in.
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

+1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'doc/changes.rst'
--- doc/changes.rst 2012-03-27 01:33:15 +0000
+++ doc/changes.rst 2012-03-31 09:49:19 +0000
@@ -1,6 +1,11 @@
1Version History1Version History
2***************2***************
33
4* Fixed boot android image problem caused by changing of init.rc file.
5
6Version 0.5.11
7==============
8
4.. _version_0_5_11:9.. _version_0_5_11:
510
6Version 0.5.1111Version 0.5.11
712
=== modified file 'lava_dispatcher/client/master.py'
--- lava_dispatcher/client/master.py 2012-03-20 06:59:13 +0000
+++ lava_dispatcher/client/master.py 2012-03-31 09:49:19 +0000
@@ -116,10 +116,7 @@
116116
117 _recreate_uInitrd(session)117 _recreate_uInitrd(session)
118118
119 session.run('umount /mnt/lava/boot')119def _update_uInitrd_partitions(session, rc_filename):
120
121def _recreate_uInitrd(session):
122 logging.debug("Recreate uInitrd")
123 # Original android sdcard partition layout by l-a-m-c120 # Original android sdcard partition layout by l-a-m-c
124 sys_part_org = session._client.device_option("sys_part_android_org")121 sys_part_org = session._client.device_option("sys_part_android_org")
125 cache_part_org = session._client.device_option("cache_part_android_org")122 cache_part_org = session._client.device_option("cache_part_android_org")
@@ -128,6 +125,23 @@
128 sys_part_lava = session._client.device_option("sys_part_android")125 sys_part_lava = session._client.device_option("sys_part_android")
129 data_part_lava = session._client.device_option("data_part_android")126 data_part_lava = session._client.device_option("data_part_android")
130127
128 session.run(
129 'sed -i "/mount ext4 \/dev\/block\/mmcblk0p%s/d" %s'
130 % (cache_part_org, rc_filename), failok=True)
131
132 session.run('sed -i "s/mmcblk0p%s/mmcblk0p%s/g" %s'
133 % (data_part_org, data_part_lava, rc_filename), failok=True)
134 session.run('sed -i "s/mmcblk0p%s/mmcblk0p%s/g" %s'
135 % (sys_part_org, sys_part_lava, rc_filename), failok=True)
136 # for snowball the mcvblk1 is used instead of mmcblk0.
137 session.run('sed -i "s/mmcblk1p%s/mmcblk1p%s/g" %s'
138 % (data_part_org, data_part_lava, rc_filename), failok=True)
139 session.run('sed -i "s/mmcblk1p%s/mmcblk1p%s/g" %s'
140 % (sys_part_org, sys_part_lava, rc_filename), failok=True)
141
142def _recreate_uInitrd(session):
143 logging.debug("Recreate uInitrd")
144
131 session.run('mkdir -p ~/tmp/')145 session.run('mkdir -p ~/tmp/')
132 session.run('mv /mnt/lava/boot/uInitrd ~/tmp')146 session.run('mv /mnt/lava/boot/uInitrd ~/tmp')
133 session.run('cd ~/tmp/')147 session.run('cd ~/tmp/')
@@ -136,26 +150,17 @@
136 session.run('mv uInitrd.data ramdisk.cpio.gz')150 session.run('mv uInitrd.data ramdisk.cpio.gz')
137 session.run(151 session.run(
138 'gzip -d -f ramdisk.cpio.gz; cpio -i -F ramdisk.cpio')152 'gzip -d -f ramdisk.cpio.gz; cpio -i -F ramdisk.cpio')
139 session.run(153
140 'sed -i "/mount ext4 \/dev\/block\/mmcblk0p%s/d" init.rc'154 # The mount partitions have moved from init.rc to init.partitions.rc
141 % cache_part_org)155 # For backward compatible with early android build, we updatep both rc files
142# session.run(156 _update_uInitrd_partitions(session, 'init.rc')
143# 'sed -i "/mount ext4 \/dev\/block\/mmcblk0p%s/d" init.rc'157 _update_uInitrd_partitions(session, 'init.partitions.rc')
144# % data_part_org)158
145 session.run('sed -i "s/mmcblk0p%s/mmcblk0p%s/g" init.rc'
146 % (data_part_org, data_part_lava))
147 session.run('sed -i "s/mmcblk0p%s/mmcblk0p%s/g" init.rc'
148 % (sys_part_org, sys_part_lava))
149 # for snowball the mcvblk1 is used instead of mmcblk0.
150 session.run('sed -i "s/mmcblk1p%s/mmcblk1p%s/g" init.rc'
151 % (data_part_org, data_part_lava))
152 session.run('sed -i "s/mmcblk1p%s/mmcblk1p%s/g" init.rc'
153 % (sys_part_org, sys_part_lava))
154 # failok true for this?:
155 session.run(159 session.run(
156 'sed -i "/export PATH/a \ \ \ \ export PS1 root@linaro: " init.rc')160 'sed -i "/export PATH/a \ \ \ \ export PS1 root@linaro: " init.rc')
157161
158 session.run("cat init.rc")162 session.run("cat init.rc")
163 session.run("cat init.partitions.rc", failok=True)
159164
160 session.run(165 session.run(
161 'cpio -i -t -F ramdisk.cpio | cpio -o -H newc | \166 'cpio -i -t -F ramdisk.cpio | cpio -o -H newc | \

Subscribers

People subscribed via source and target branches