|
From: | Sergio R. Caprile |
Subject: | Re: [lwip-users] Assertion "pbuf_free: p->ref > 0" failed at line 651 in ../src/lwip/core/pbuf.c |
Date: | Fri, 14 Nov 2014 09:57:55 -0300 |
User-agent: | Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 |
If I was you, I would: - make sure the port I'm using works, by first running known good examples. - study those examples to learn how to work with lwip. - read the wiki, it is great for bed reading. - trace assertions to my code, execute step by step and see what I'm doing wrong. - try to figure it out by myself, but if I can't, I would write a brief and concise description of what I'm doing, what I can't solve, and what I don't understand. That description would include a description of the system in which I'm doing that, stating that I followed the previous steps and the system works, and what type of lwIP API I'm using. With the data you provide, I can only direct you to line 651 of pbuf.c and see why something you are passing to that function is incorrect. OK, I feel like wasting some time today, here I go: $ vi src/core/pbuf.c 651 pbuf_free(struct pbuf *p) { [...] /* all pbufs in a chain are referenced at least once */ 651--> LWIP_ASSERT("pbuf_free: p->ref > 0", p->ref > 0); /* decrease reference count (number of pointers to pbuf) */ ref = --(p->ref); that means you are trying to free an already freed pbuf. |
[Prev in Thread] | Current Thread | [Next in Thread] |