• Nils Goroll's avatar
    Do not mutate dying objects · d4131883
    Nils Goroll authored
    Avoid memory LRU racing disk LRU.
    
    Disk LRU uses the varnish-cache LRU facility, which works by setting
    the OC_F_DYING and gaining one reference, resulting in two references.
    
    One is lost again by the thread initiating the LRU nuke, the other by
    the EXP thread. Between the two events, the refcnt is one again, thus
    stvfe_mutate could race.
    
    I believe this fixes #23 and #24. If not, please reopen
    d4131883
fellow_storage.c 71.6 KB