• Jan Kara's avatar
    jbd: Remove j_barrier mutex · 00482785
    Jan Kara authored
    j_barrier mutex is used for serializing different journal lock operations.  The
    problem with it is that e.g. FIFREEZE ioctl results in process leaving kernel
    with j_barrier mutex held which makes lockdep freak out. Also hibernation code
    wants to freeze filesystem but it cannot do so because it then cannot hibernate
    the system because of mutex being locked.
    
    So we remove j_barrier mutex and use direct wait on j_barrier_count instead.
    Since locking journal is a rare operation we don't have to care about fairness
    or such things.
    
    CC: Andrew Morton <akpm@linux-foundation.org>
    Acked-by: default avatarJoel Becker <jlbec@evilplan.org>
    Signed-off-by: default avatarJan Kara <jack@suse.cz>
    00482785
journal.c 55.2 KB