[U-Boot] [PATCH 1/2] Flatten and solidify block_dev_desc layout

Detlev Zundel dzu at denx.de
Mon Oct 24 12:49:53 CEST 2011


Hi Che-liang,

> I guess I have to put this patchset on hold. I will get you back if we
> could proceed with this patchset.

Please don't top-post.  The mails really are more difficult to read in
context.

> Regards,
> Che-Liang
>
> On Sat, Oct 22, 2011 at 3:09 AM, Wolfgang Denk <wd at denx.de> wrote:
>> Dear Che-Liang Chiou,
>>
>> In message <1319178708-10881-2-git-send-email-clchiou at chromium.org> you wrote:
>>> The block_dev_desc struct has #ifdef on lba48 and variable-size on lba
>>> and so its layout varies from config to config.  At least part_efi.c has
>>> partially complained about this.
>>>
>>> This patch makes lba48 be always defined and lba be fixed to largest
>>> size that an LBA would need so that the block_dev_desc layout would be
>>> an invariant with respect to configurations.
>>>
>>> Doing so would waste a few extra bytes per struct block_dev_desc, which
>>> I believe is not critical.
>>
>> How much exactly is "a few bytes"?

As far as I can see, the difference is 4 bytes _and_ it is a runtime
data structure, so it should not make any difference for the code size.
Che-liang can surely correct me if I'm wrong.

Moreover it seems we need to do something comparable sooner or later.
If we want to support large block devices and the partition code uses
block devices, that code needs to be prepared to work with that. So in
general I'm in favor of doing something like this.

On the other hand, the patch changes the datatype of a field which gets
used in lots of places - Che-liang, did you run a MAKEALL with this
patch and check that no more warnings/errors are introduced?

Cheers
  Detlev

-- 
The latest code  looks a bit similar to the old  [linux] big-reader-locks  hack
(which got dropped for good many eons ago and with which i deny any involvement
with, such as having authored it. [oh, did i say that out loud? crap.]), imple-
mented cleanly and properly.     -- Ingo Molnar <20090428124033.GA1655 at elte.hu>
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de


More information about the U-Boot mailing list