[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#987569: partman-base: default partition offset should start at 16MB on armhf/arm64



Package: partman-base
Severity: normal
X-Debbugs-Cc: vagrant@debian.org, alkisg@gmail.com

For armhf/arm64 rockchip platforms, the bootloader may be installed
somewhere past the typical initial partition of 2048, but some platforms
install parts of the boot firmware past this boundary.

This was fixed for debian-installer SD-card-images in several commits:

  fc98c316ad3a25bda1920e5c842c0825263b6bc1
  5cc51b55d9ce2504765227f927077b672c6e863e

If someone uses one of those SD-card-images to install Debian on the
same media it was booted from, and selects the "use whole disk" option,
partman will write out a partition table that likely clobbers where the
bootloader is stored, rendering the system unbootable. Re-installing the
bootloader on this media *might* work, although there is potential to
clobber files on the filesystem then.


The default partition layout for rockchip systems is:

  http://opensource.rock-chips.com/wiki_Partitions

Other platforms also may also install bootloaders that are large enough
to extend past the default partition offset, though to my knowledge
rockchip offset requirements are the largest, extending up to 16MB.


A workaround for now is to either install Debian to alternate media, or
select one of the "use largest free space" partitioning options when
installing to the boot media. This also requires marking a different
partition as bootable, as u-boot defaults to booting from the first
partition if not partitions are marked bootable.

Another option for some platforms is to install the boot firmware to SPI
flash instead of relying on boot media(some systems may do this or
something similar out of the box), which entirely avoids the problem.


live well,
  vagrant

Attachment: signature.asc
Description: PGP signature


Reply to: