English Community

Re: X1 Carbon 6th Gen does not boot from gpt in legacy mode

X1 Carbon 6th Gen with up to date BIOS (1.38) does not boot from gpt in legacy mode. Neither from internal ssd nor from flash drive.

 

The following creates a gpt formated drive with grub2:

parted -s /dev/sdX mklabel gpt\ unit mib\ mkpart boot ext2 1 129\ mkpart biosdisk 129 130\ set 2 bios_grub on
mke2fs -t ext2 -F /dev/sdX1
mkdir /media/grub-test
mount -t ext2 /dev/sdX1 /media/grub-test
grub-install --target=i386-pc --no-floppy --boot-directory="/media/grub-test" --debug /dev/sdX
umount /media/grub-test

This drive works fine in legacy mode with every laptop I've tried including e.g a X250. It appears the X1C refuses to execute boot code in legacy mode when gpt is detected. The screen stays blank before jumping back to the boot device list.

 

0
0

Re: X1 Carbon 6th Gen does not boot from gpt in legacy mode

I'm surprised to know that ThinkPad X250 can boot to GPT disk in legacy mode.  As far as I understand, it's not supposed to work.  If you want to boot to a GPT disk, use UEFI mode.  Otherwise use MBR disk to boot in legacy mode.

0
0

Re: X1 Carbon 6th Gen does not boot from gpt in legacy mode


 wrote:

As far as I understand, it's not supposed to work.


I have to disagree for 2 reasons:

1) UEFI specification, section 5.2.3 (GPT Layout):
"For a bootable disk, a Protective MBR must be located at LBA 0 (i.e., the first logical block) of the disk if it is using the GPT disk layout."

2) BIOS (Legacy) Boot:
A BIOS is supposed to load boot code located at LBA 0 of the disk it is directed to - no questions asked!


The latter point alone is reason enough I would consider this issue a bug! Do you know where to file a report?

0
0

Re: X1 Carbon 6th Gen does not boot from gpt in legacy mode

I can tell you with 100% certainty that X1 Carbon 6th BIOS won't be modified to support legacy boot to GPT disk.  The legacy BIOS int13h protocol doesn't define this behavior.  https://wiki.syslinux.org/wiki/index.php?title=Doc/gpt

0
0

Re: X1 Carbon 6th Gen does not boot from gpt in legacy mode


 wrote:
The legacy BIOS int13h protocol doesn't define this behavior.  https://wiki.syslinux.org/wiki/index.php?title=Doc/gpt

It actually does.

The document you've linked has long been updated: https://git.kernel.org/pub/scm/boot/syslinux/syslinux.git/tree/doc/gpt.txt with the protocol being adopted and approved by the T13 committee as part of the EDD-4 standard, home for legacy BIOS INT 13h function definition: http://www.t13.org/Documents/UploadedDocuments/docs2010/e09127r3-EDD-4_Hybrid_MBR_boot_code_annex.pdf

 

Hell, It even made it into the UEFI Specification, even though efi couldn't care less about legacy booting.

 

 


 wrote:

X1 Carbon 6th BIOS won't be modified to support legacy boot to GPT disk.


There is no such thing as gpt "support" for legacy boot. The BIOS is not supposed to know anything about partition layouts. It's directed to a disks mbr and to execute its boot code. It's up to the boot code to find and load stage2 boot code on the disk to ultimately learn about partitions.

 

What the firmware of the X1C does is checking the partition table of the (p)mbr for the protective gpt partition, and if found it refuses to execute the boot code.

What protocol does the X1Cs firmware follow that defines such a restrictive behaviour?

 

 

PS: I did my best to sound smart here :)

0
0

Identify Your Device

OR

Don't want to provide your serial number? You can also Browse by product

Find your Device

Problem solved or need help? Click here.