[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <523354F3.70001@linaro.org>
Date: Fri, 13 Sep 2013 14:09:55 -0400
From: Matt Porter <matt.porter@...aro.org>
To: Davidlohr Bueso <davidlohr@...com>
CC: Karel Zak <kzak@...hat.com>, Matt Fleming <matt.fleming@...el.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
torvalds@...ux-foundation.org
Subject: Re: GPT detection regression in efi.c from commit 27a7c64
On 09/13/2013 02:07 PM, Davidlohr Bueso wrote:
> On Fri, 2013-09-13 at 13:01 -0400, Matt Porter wrote:
>> On 09/13/2013 12:28 PM, Davidlohr Bueso wrote:
>>> Cc'ing Linus.
>>>
>>> On Fri, 2013-09-13 at 10:50 -0400, Matt Porter wrote:
>>>> The commit, "27a7c64 partitions/efi: account for pmbr size in lba", that
>>>> was just merged in 3.12-rc caused a regression on my system with a GPT
>>>> formatted eMMC device. In 3.11, the GPT partition table was detected
>>>> fine but now a partition table is not detected.
>>>>
>>>> Not being a GPT expert, I did some research and found that the tool used
>>>> to create the PMBR on my system shares characteristics with what is
>>>> mentioned in an explanation of Microsoft created PMBRs [1]. In short,
>>>> the size_in_lba field incorrectly has 0xffffffff even though I have a
>>>> <2TiB drive (16GiB eMMC).
>>>
>>> *sigh*. So Microsoft decided to do its own version of the GPT specs.
>>
>> Don't sound so surprised. :)
>>
>>> Up until now, Linux was incorrectly enforcing pMBR checks: not
>>> recognizing valid labels and vice versa, as with the case you are
>>> mentioning now. The changes that went in the 3.12 merge window attempt
>>> to address those concerns, enforcing the correct checks - which is also
>>> how Linux partitioning tools do it (fdisk, parted).
>>
>> Understood, and we are fixing our own manufacturing tool that was used
>> to prepopulate the eMMC. I definitely prefer to have this correct for my
>> case.
>
> Come to think of it, we do have a long existing workaround: the
> force_gpt option. Setting it will bypass any MBR checking
> (is_pmbr_valid(), specifically).
Yes, that's what I used at first after seeing what the problem was. But
then I opted to fix my PMBR.
I felt like it was a regression since it required a new option passed on
the cmdline.
-Matt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists