
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@denx.de wrote:
Dear Che-Liang Chiou,
In message 1319178708-10881-2-git-send-email-clchiou@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