It looks like pbuf_free tries to re-enter critical section from within pbuf_cleanup, causing deadlock.  The offending commit is 2 years old, however.  Seems like it would have been detected... :-/