I have made simple echo tcp server with bufferevent and tested with libent 2.0.21-stable and 2.1.5-beta. When clien connected I used bufferevent_get_input() and bufferevent_get_otput() at once to get pointer of evbuffer for working with evbuffer_get_length(). After that i used bufferevent_write() and bufferevent_read() at many cycles at the same connection, and then more cycles were are, then more memory used the program(memory leak). evbuffer_get_length() after reading and writing showed normal, not increased size of data.
Is it possible for you to post this here: https://github.com/libevent/libevent/issues ?
We are currently migrating to github, but if you cannot open an issue there, just say so; I'm quite sure the "bug" here has a simple answer.