pbuf_free() function
Dereference a pbuf chain or queue and deallocate any no-longer-used pbufs at the head of this chain or queue. Decrements the pbuf reference count. If it reaches zero, the pbuf is deallocated. For a pbuf chain, this is repeated for each pbuf in the chain, up to the first pbuf which has a non-zero reference count after decrementing. So, when all reference counts are one, the whole chain is free'd. @internal examples: Assuming existing chains a->b->c with the following reference counts, calling pbuf_free(a) results in: 1->2->3 becomes ...1->3 3->3->3 becomes 2->3->3 1->1->2 becomes ......1 2->1->1 becomes 1->1->1 1->1->1 becomes .......
Arguments
p
The pbuf (chain) to be dereferenced.
Return value
the number of pbufs that were de-allocated from the head of the chain.
Notes
MUST NOT be called on a packet queue (Not verified to work yet). the reference counter of a pbuf equals the number of pointers that refer to the pbuf (or into the pbuf).
Examples
pbuf_free() is referenced by
35 libraries and example projects.
Functions calling pbuf_free()
Functions called by pbuf_free()
pbuf_free()
printf() all items filtered out
Data read by pbuf_free()
Data written by pbuf_free()
pbuf_free()
Type of pbuf_free()
pbuf_free()