[syslog-ng] 3.3.0beta1 leaking memeory (Re: syslog-ng 3.3.0beta & ESX crashes)

Balazs Scheidler bazsi at balabit.hu
Mon Aug 1 20:15:16 CEST 2011


On Mon, 2011-08-01 at 12:39 +0200, Balazs Scheidler wrote:
> Hi,
> 
> Thanks for the info, I'll try to look at this today.
> 
> On Fri, 2011-07-22 at 14:04 +0200, Gergely Nagy wrote:
> > Gergely Nagy <algernon at balabit.hu> writes:
> > 
> > > Hendrik Visage <hvjunk at gmail.com> writes:

The patch wasn't the root cause for the leak, rather it was in the ref
counter cache used to spare some atomic operations in the log processing
fast path.

This patch fixes that (I've pushed it just now):

commit 13a87ed5548cb7b152b708d24bb5b3684771d7ca
Author: Balazs Scheidler <bazsi at balabit.hu>
Date:   Mon Aug 1 20:13:45 2011 +0200

    refcache: process the ref count differences in two steps
    
    The refcache may have caused a leak, when the ack callback performed an
    additional unref operation (which it does), because folding in the ref
    difference counter didn't take the additional unref into account.
    
    Thus the ref difference needs to be folded back into the atomic counter
    in two steps:
    
     1) we add in the difference that was present when entering the
        function (e.g. the diffs accumulated before the function was entered)
     2) we add in the difference that was created by the ACK callback
    
    Signed-off-by: Balazs Scheidler <bazsi at balabit.hu>


-- 
Bazsi




More information about the syslog-ng mailing list