lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: R: [lwip-users] ip_reass


From: Ed Sutter
Subject: Re: R: [lwip-users] ip_reass
Date: Fri, 10 Oct 2008 07:21:11 -0400
User-agent: Thunderbird 2.0.0.17 (Windows/20080914)

Ok, I am running with the BF537, I'll take a look at that setting.
However, it still seems to me that this is a problem in the code
because the combination of...

  1. MEM_ALIGNMENT = 4
  2. pbuf_alloc() setting payload buffers up to be aligned based on 
MEM_ALIGNMENT
  3. the increment of the payload pointer by 14 in ethernet_input()
and...
  4. the overlay of the "helper" structure in 
ip_reass_chain_frag_into_datagram_and_validate()

will cause the misaligned access.  If the option you mention fixes it for my
situation on the BF537, that doesn't resolve it for other systems.
Right?
Ed

Ceresoli Luca wrote:
Ed Sutter wrote:
I'm running LWIP 1.3.0 on a Blackfin, which is picky about ... The ethernet_input() function then sees that it is IP, increments the payload pointer by 14 (size of ethernet header) and passes the pbufs to ip_input(). Note that at this point, the payload pointer is no longer aligned on a 4-byte boundary because the original 4-byte-aligned payload pointer is incremented
by 14.

Which Blackfin are you using?
Tha Ethernet MAC of Blackfin 536/7 can optionally add two dummy bytes in front 
of incoming frames (setting bit RXDWA in the EMAC_SYSCTL register). This makes 
all TCP/IP headers 4-byte aligned.

Of course your driver must support it.

Luca


_______________________________________________
lwip-users mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/lwip-users





reply via email to

[Prev in Thread] Current Thread [Next in Thread]