On Wed, Jul 25, 2018 at 5:44 AM Joe Hershberger <joe.hershber...@ni.com> wrote: > > Peter originally sent a fix, but it breaks a number of other things. > This addresses the original reported issue in a different way. > > That report was: > > > U-Boot has 1 common buffer to send Ethernet frames, pointed to by > > net_tx_packet. When sending to an IP address without knowing the MAC > > address, U-Boot makes an ARP request (using the arp_tx_packet buffer) > > to find out the MAC address of the IP addressr. When a matching ARP > > reply is received, U-Boot continues sending the frame stored in the > > net_tx_packet buffer. > > > > However, in the mean time, if U-Boot needs to send out any network > > packets (e.g. replying ping packets or ARP requests for its own IP > > address etc.), it will use the net_tx_packet buffer to prepare the > > new packet. Thus this buffer is no longer the original packet meant > > to be transmitted after the ARP reply. The original packet will be > > lost. > > This instead uses the ARP tx buffer to send async replies in the case > where we are actively waiting for an ARP reply. > > Signed-off-by: Joe Hershberger <joe.hershber...@ni.com> > > Reported-by: Tran Tien Dat <peter.trantien...@gmail.com> > --- > > include/net.h | 8 ++++++++ > net/arp.c | 9 +++++---- > net/arp.h | 1 + > net/net.c | 8 ++++++++ > net/ping.c | 7 +++++-- > test/dm/eth.c | 6 ++---- > 6 files changed, 29 insertions(+), 10 deletions(-) >
Reviewed-by: Bin Meng <bmeng...@gmail.com> Tested-by: Bin Meng <bmeng...@gmail.com> _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot