English Community

ThinkPad NotebooksThinkPad: X Series Laptops
All Forum Topics
Options

4 Posts

06-22-2019

US

8 Signins

119 Page Views

  • Posts: 4
  • Registered: ‎06-22-2019
  • Location: US
  • Views: 119
  • Message 1 of 5

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

2019-06-22, 4:53 AM

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.

 

Reply
Options

6087 Posts

10-29-2009

NC

17515 Signins

157141 Page Views

  • Posts: 6087
  • Registered: ‎10-29-2009
  • Location: NC
  • Views: 157141
  • Message 2 of 5

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

2019-06-25, 17:39 PM

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.

Reply
Options

4 Posts

06-22-2019

US

8 Signins

119 Page Views

  • Posts: 4
  • Registered: ‎06-22-2019
  • Location: US
  • Views: 119
  • Message 3 of 5

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

2019-06-25, 21:08 PM

 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?

Reply
Options

6087 Posts

10-29-2009

NC

17515 Signins

157141 Page Views

  • Posts: 6087
  • Registered: ‎10-29-2009
  • Location: NC
  • Views: 157141
  • Message 4 of 5

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

2019-06-25, 22:29 PM

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

Reply
Options

4 Posts

06-22-2019

US

8 Signins

119 Page Views

  • Posts: 4
  • Registered: ‎06-22-2019
  • Location: US
  • Views: 119
  • Message 5 of 5

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

2019-06-27, 0:25 AM

 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 :)

Reply
Forum Home

Community Guidelines

Please review our Guidelines before posting.

Learn More

Check out current deals!

Go Shop
X

Save