[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [bug #51925] Replace the OOSEQ max bytes and pbufs constant
[lwip-devel] [bug #51925] Replace the OOSEQ max bytes and pbufs constants with functions.
Wed, 6 Sep 2017 09:20:45 -0400 (EDT)
Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0
Follow-up Comment #5, bug #51925 (project lwip):
The configuration does not use pbuf pools rather MEMP_MEM_MALLOC. The RX
buffers are allocated from a special pool, from a NMI handler that can not
call back into most of the library code, these later have a pbuf wrapper
allocated as a reference - so these are not using pbuf_alloc for their primary
allocation and the PBUF_POOL_IS_EMPTY does not help.
The PBUF_POOL_IS_EMPTY callback is interesting, but not effective on this
configuration. What would be needed is a callback when the RX pool is filling.
It is possible to copy the RX pool pbuf as an option, but that is not the
default. So the callback would need to trigger on the RX pool size, or trigger
on memory pressure. This could be explored separately, and probably in code
specific to this configuration.
A revised patch is attached. It attempts backwards compatibility, defining new
names for the functions, and defaulting them to return the prior constants. It
also passes the tcp segment to these to off load the walking of the list to
the callee, so that configurations returning a simple constant do not have
Additional Item Attachment:
File name: 0001-Replace-the-OOSEQ-max-bytes-and-pbufs-constants-with.patch
Reply to this item at:
Message sent via/by Savannah