[U-Boot] [PATCH 01/10] Fix IP alignement problem

Olav Morken olavmrk at gmail.com
Wed Oct 15 17:11:45 CEST 2008


On Wed, Oct 15, 2008 at 07:07, Ben Warren <biggerbadderben at gmail.com> wrote:
> Hi Olav,
>
> On Fri, Oct 10, 2008 at 11:53 AM, Olav Morken <olavmrk at gmail.com> wrote:
>>
>> On Fri, Oct 10, 2008 at 7:01 PM, Ben Warren <biggerbadderben at gmail.com>
>> wrote:
>> > What other architectures have you tried this on?
>>
>> None, as we don't have any other boards to test on. I do however believe
>> that this change should have no side-effects. If any architectures
>> relied on this function working as some sort of memory/io barrier, they
>> would have problems with other functions such as ArpRequest, which
>> doesn't have anything that will work as a memory/io barrier before the
>> eth_send function.
>>
>> Of course, I could be wrong. I would certainly not suggest including
>> this change without some more testing.
>>
>> The bug which causes this problem is in avr32-gcc, which makes
>> assumptions about the alignement of IP_t when using volatile, and this
>> change shouldn't be necessary once that bug is fixed. Until that bug
>> is fixed, this change is needed for anyone trying to run U-Boot on
>> this microcontroller.
>
> I don't mean to be a pain, it's just that this code is shared by everything,
> so we need to be really careful.  I agree with Haavard that the volatile
> keyword is probably used much more than it should be in the networking
> library.
>
> I'll pull this into the net/testing branch in the next couple of days, and
> hopefully we'll get some volunteers to try it out on different
> architectures.

That is great.

FWIW: I have now tested it in qemu_mips, where it appears to work. (Had
to revert "qemu-mips.h: Add CFI support" before I could test it.)

-- 
Olav Morken


More information about the U-Boot mailing list