[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [task #6735] Provide new pbuf type: PBUF_RAM_NOCOPY
From: |
Jonathan Larmour |
Subject: |
[lwip-devel] [task #6735] Provide new pbuf type: PBUF_RAM_NOCOPY |
Date: |
Tue, 10 Apr 2007 14:24:23 +0000 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.10) Gecko/20070223 Fedora/1.5.0.10-1.fc5 Firefox/1.5.0.10 |
URL:
<http://savannah.nongnu.org/task/?6735>
Summary: Provide new pbuf type: PBUF_RAM_NOCOPY
Project: lwIP - A Lightweight TCP/IP stack
Submitted by: jifl
Submitted on: Tuesday 04/10/2007 at 15:24
Category: None
Should Start On: Tuesday 04/10/2007 at 00:00
Should be Finished on: Sunday 06/10/2007 at 00:00
Priority: 5 - Normal
Status: None
Privacy: Public
Percent Complete: 0%
Assigned to: jifl
Open/Closed: Open
Discussion Lock: Any
Effort: 0.00
_______________________________________________________
Details:
As discussed in thread "Packet queues" on ecos-devel around 5th April.
We would add a PBUF_RAM_NOCOPY variant of pbuf which users can craete. The
effect of this is that the user is passing the pbuf to the stack for it to
free. With a normal PBUF_RAM, it is expected that the user will free - the
problem is that when the stack functions return, the user may change the pbuf
or its payload, rather than free.
This new pbuf type means the stack can queue the pbuf if needed, and free it
whenever it wants. Without the ability for a low level driver to hold the
data for a little while during transmission, it is not possible to safely
implement zero copy transmission.
This would be implemented as a different PBUF_FLAG bitfield. We would replace
current equality tests of the pbuf flag type with macro tests, e.g.
PBUF_IS_RAM(p), PBUF_NEEDS_COPY(p).
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/task/?6735>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
- [lwip-devel] [task #6735] Provide new pbuf type: PBUF_RAM_NOCOPY,
Jonathan Larmour <=