[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] Assertion "pbuf_free: p->ref > 0" failed at line 651 in

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
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.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]