lwip-devel
[Top][All Lists]
Advanced

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

Re: [lwip-devel] (no subject)


From: Leon Woestenberg
Subject: Re: [lwip-devel] (no subject)
Date: Fri, 19 Mar 2004 14:03:21 +0100
User-agent: Mozilla Thunderbird 0.5 (Windows/20040207)

Hello Luke,

address@hidden wrote:
On Thu, 18 Mar 2004, Leon Woestenberg wrote:

Does copy-on-queue work correctly for non-ROM REF pbufs?

Are you referring to pbuf_take()? The only place this seems to used is in
etharp.c - I currently just assert if pbuf_take() is called, though I have
never seen it happen yet. It should be very easy to implement this
function though.

lwIP operates in zero-copy mode by default (i.e. it tries to do zero memory/buffer copies when the user application is providing data to
sent).

In some cases where the data cannot be put on the link, it can be queued
inside lwIP (copy-on-queue). Currently only etharp.c does this, but the link layer driver itself can also queue for outgoing packets (work in progress for some drivers).

If it does not happen in your case, that either means you are not using
referenced application data, or your ARP cache always has the destination address cached.

Main point is, you cannot count on this.

This leads me to wonder about the implementation of ping - what if the
ping payload is not a RAM pbuf? My guess is at the moment it gets modified
in place, which might not be such a good idea. Should ping be calling
pbuf_take() as well?

Good point, will look into this when I'm less busy.

Leon.




reply via email to

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