On Tue, Jun 5, 2018 at 1:54 PM, Yann Ylavic <[email protected]> wrote: > On Tue, Jun 5, 2018 at 1:51 PM, Stefan Eissing > <[email protected]> wrote: >> >> >>> Am 05.06.2018 um 13:50 schrieb Yann Ylavic <[email protected]>: >>> >>> On Tue, Jun 5, 2018 at 1:26 PM, Stefan Eissing >>> <[email protected]> wrote: >>>> >>>>> Am 05.06.2018 um 10:46 schrieb Joe Orton <[email protected]>: >>>>> >>>>> Another choice is to allocate the brigade structure using the bucket >>>>> allocator and actually free it on _destroy(). Anybody around who can >>>>> remember why we used a pool allocation for that structure from the >>>>> beginning? >>>> >>>> How about having the apr_bucket_brigade struct on the stack as an option? >>> >>> I had similar issue for r1822596 and proposed to have a c->tmpbb >>> available (to be cleared after use, there are several similar places >>> where it could be useful), but the semantic wasn't really accepted so >>> Rüdiger proposed to use c->notes to create that brigade once only >>> where needed. >>> >>> It could work I think here too. >> >> How to avoid using the ->tmpbb in two locations on the "pass it" stack? Is >> it clear which code will use it? > > Yes this is clearly a good to not have accepted it :)
A "stack" of c->tmpbbs to acquire/release could work, maybe a bit overkill, but the more needs like this the less overkill (IMHO).
