[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug #46716] Protective MBR partition is not marked as bootable
From: |
Andrei Borzenkov |
Subject: |
Re: [bug #46716] Protective MBR partition is not marked as bootable |
Date: |
Sat, 19 Dec 2015 19:47:27 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 |
19.12.2015 18:50, Thomas Schmitt пишет:
> Hi,
>
> [resending to bug-grub after rejection message]
>
> Alexander E. Patrakov wrote:
>>> http://www.syslinux.org/wiki/index.php/Isohybrid
>
> This is quite independent of what GRUB2 does.
> (SYSLINUX and GRUB2 meet at BIOS and EFI, of course.)
>
>
> Andrei Borzenkov wrote:
>> Command from syslinux wiki does not create protective MBR; it creates
>> normal DOS partition of type 17 and marks it as bootable.
>
> Especially the SYSLINUX partition is mountable as it starts
> at the begin of the ISO filesystem. :))
>
>
> Looking at the source code of libisofs, i'd expect that the
> bootability flag is set if GRUB2 related option
> --protective-msdos-label
> is given. At least Vladimir Serbinenko prescribed it to me.
>
> https://lists.gnu.org/archive/html/grub-devel/2010-04/msg00014.html
>
>>>> 3) Put 0x80 (for bootable partition), 0, 2, 0 (C/H/S of the start), 0xcd
>>>> (partition type), [3 bytes of C/H/S end], 0x01, 0x00, 0x00, 0x00 (LBA
>>>> start in little endian), [LBA end in little endian] at 446-462
>
> This might be a regression which nobody noticed yet.
>
There is no regression. This is exactly what happens for pure BIOS
platform (i386-pc). If we (additionally) want EFI, it will create PMBR +
GPT instead.
>
>> Marking protective partition as bootable may trigger bugs on EFI, so I
>> am not sure if it is reallu desirable.
>
> If the needs for BIOS and EFI are incompatible, then we should
> add an option to xorriso which controls this.
> Probably an alternative to --protective-msdos-label.
> But first i must find out what's going on inside libisofs.
>
That makes little sense. You already can tell grub-mkresecue to use only
i386-pc platform which will automatically create normal MBR with single
active partition. As I understand Alexander would like to have single
ISO suitable for every platform.
UEFI spec is highly ambiguous how to interpret 0x80 flag in MBR:
"BootIndicator ... Set to 0x00 to indicate a non-bootable partition. If
set to any value other than 0x00 the behavior of this flag on non-UEFI
systems is undefined. Must be ignored by UEFI implementations"
EDK2 interprets it "[Partition] must be ignored". This can just as well
be interpreted as "[BootIndicator] must be ignored" which I find better
suiting overall context. Anyone has good contacts to ask for clarification?
But of course as we have precedent we cannot simply go and set it now.
- [bug #46716] Protective MBR partition is not marked as bootable, (continued)
Re: [bug #46716] Protective MBR partition is not marked as bootable, Andrei Borzenkov, 2015/12/19
Re: [bug #46716] Protective MBR partition is not marked as bootable, Thomas Schmitt, 2015/12/19
Message not available
- Re: [bug #46716] Protective MBR partition is not marked as bootable, Alexander E. Patrakov, 2015/12/19
- Re: [bug #46716] Protective MBR partition is not marked as bootable, Alexander E. Patrakov, 2015/12/19
- Re: [bug #46716] Protective MBR partition is not marked as bootable, Thomas Schmitt, 2015/12/19
- Re: [Bug-xorriso] [bug #46716] Protective MBR partition is not marked as bootable, Andrei Borzenkov, 2015/12/19
- Re: [bug #46716] Protective MBR partition is not marked as bootable, Thomas Schmitt, 2015/12/19
- Re: [Bug-xorriso] [bug #46716] Protective MBR partition is not marked as bootable, Andrei Borzenkov, 2015/12/20
- Re: [bug #46716] Protective MBR partition is not marked as bootable, Thomas Schmitt, 2015/12/20
- Test Proposal for [bug #46716] Protective MBR partition is not marked as bootable, Thomas Schmitt, 2015/12/20