[OE-core] [PATCH 1/1] wic: fix extended/logical partition layout

Tom Zanussi tom.zanussi at linux.intel.com
Tue Feb 3 12:49:54 UTC 2015


On Tue, 2015-02-03 at 11:05 +0100, Maciej Borzecki wrote:
> On 02/02 08:29, Tom Zanussi wrote:
> > On Mon, 2015-02-02 at 08:37 +0100, Maciej Borzecki wrote:
> > > ping
> > >
> >
> > This looks reasonable, but I haven't been able to verify it due to wic
> > problems introduced by the recent kernel changes in oe-core.
> >
> > If you have test cases e.g. the kickstart file(s) that you used for
> > testing the fix, please include them.  Also, any testing you may have
> > done to show it doesn't cause regressions in existing use cases.
> 
> Kickstart that fails without the patch:
> 
> part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --size 16
> part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4
> part /var/lib/misc --ondisk mmcblk0 --fstype=ext4 --label misc --size 128
> part /mnt --ondisk mmcblk0 --fstype=ext4 --label fakedata --size 128
> 
> When mounting kernel ext4 complains about bad geometry of the 3rd
> partition (i.e. ext4 partition image was exactly 131072 blocks, but
> parted entry states 131071 blocks, wic stole the last sector of this
> partition, to account for EBR for the first extended):
> 
> EXT4-fs (mmcblk0p3): bad geometry: block count 131072 exceeds size of
> device (131071 blocks)
> 
> Then the first extended partition is not found, logical partition
> /dev/mmcblk0p4 is the last one visible. I'm guessing the EBR was
> overwritten by the last block of the 3rd partition image, hence the
> kerel cannot figure out the location of the extended partition.
> 
> The problem won't be triggered unless there is a logical parition in
> kickstart. The only other kickstart using MBR is directdisk.wks, but it
> has only 2 partitions defined there.
> 
> With the patch you can go on and define more crazy layout like this one
> below and it mounts properly:
> 
> part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --size 16
> part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4
> part /var/lib/misc --ondisk mmcblk0 --fstype=ext4 --label misc --size 128
> part /mnt --ondisk mmcblk0 --fstype=ext4 --label fakedata --size 128
> part /mnt2 --ondisk mmcblk0 --fstype=ext4 --label fakedata2 --size 13
> part /mnt3 --ondisk mmcblk0 --fstype=ext4 --label fakedata3 --size 64
> 
> 

Great, thanks for the detailed info.

Acked-by: Tom Zanussi <tom.zanussi at linux.intel.com>

> --
> Maciej Borzęcki
> Senior Software Developer at Open-RnD Sp. z o.o., Poland
> www.open-rnd.pl
> mobile: +48 889 117 365, fax: +48 42 657 9079
> 
> 
> Niniejsza wiadomość wraz z załącznikami może
> zawierać chronione prawem lub poufne informacje i została
> wysłana wyłącznie do wiadomości i użytku osób, do których
> została zaadresowana. Jeśli wiadomość została otrzymana
> przypadkowo zabrania się jej kopiowania lub rozsyłania do osób
> trzecich. W takim przypadku uprasza się o natychmiastowe
> zniszczenie wiadomości oraz poinformowanie nadawcy o
> zaistniałej sytuacji za pomocą wiadomości zwrotnej.
> Dziękujemy.
> 
> This message, including any attachments hereto,
> may contain privileged or confidential information and is sent
> solely for the attention and use of the intended addressee(s).
> If you are not an intended addressee, you may neither use this
> message nor copy or deliver it to anyone. In such case, you
> should immediately destroy this message and kindly notify the
> sender by reply email. Thank you.





More information about the Openembedded-core mailing list