• Bob Peterson's avatar
    gfs2: fix glock shrinker ref issues · 62862485
    Bob Peterson authored
    Before this patch, function gfs2_scan_glock_lru would only try to free
    glocks that had a reference count of 0. But if the reference count ever
    got to 0, the glock should have already been freed.
    
    Shrinker function gfs2_dispose_glock_lru checks whether glocks on the
    LRU are demote_ok, and if so, tries to demote them. But that's only
    possible if the reference count is at least 1.
    
    This patch changes gfs2_scan_glock_lru so it will try to demote and/or
    dispose of glocks that have a reference count of 1 and which are either
    demotable, or are already unlocked.
    Signed-off-by: default avatarBob Peterson <rpeterso@redhat.com>
    Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
    62862485
glock.c 73 KB