New crash: assertion "pbuf_free: p->ref > 0"
-
I haven't come across this one before. Is there a simple meaning to this?
"
assertion "pbuf_free: p->ref > 0" failed: file "/Users/ehlers/pycom/pycom-esp-idf/components/lwip/lwip/src/core/pbuf.c", line 765, function: pbuf_free
abort() was called at PC 0x40167e57 on core 1
"
-
@troy-salt You actually already had issues with it a year ago: https://forum.pycom.io/topic/6344/pbuf_free-crash-cause
Someone needs to decode the core dump to try to get to the root cause.
-
@troy-salt There is no simple meaning. p_buf is the buffer structure used to exchange data between the lwip stack and the hardware driver. It looks like either:
- the buffer was free'd by the driver, when this should be done by the lwip function, or
- a wrong pointer was supplied to lwip pbuf_free call. Maybe the result of an allocation attempt that was never checked for a failure.
Could be a spurious error, or more probable a software bug in the Pycom driver. I found lwip itself very reliable, but it could still contain errors.