• A
    gfs2: Fix deadlock dumping resource group glocks · 16e6281b
    Alexander Aring 提交于
    Commit 0e539ca1 ("gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump")
    introduced additional locking in gfs2_rgrp_go_dump, which is also used for
    dumping resource group glocks via debugfs.  However, on that code path, the
    glock spin lock is already taken in dump_glock, and taking it again in
    gfs2_glock2rgrp leads to deadlock.  This can be reproduced with:
    
      $ mkfs.gfs2 -O -p lock_nolock /dev/FOO
      $ mount /dev/FOO /mnt/foo
      $ touch /mnt/foo/bar
      $ cat /sys/kernel/debug/gfs2/FOO/glocks
    
    Fix that by not taking the glock spin lock inside the go_dump callback.
    
    Fixes: 0e539ca1 ("gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump")
    Signed-off-by: NAlexander Aring <aahringo@redhat.com>
    Signed-off-by: NAndreas Gruenbacher <agruenba@redhat.com>
    16e6281b
glops.c 21.7 KB