Fix LVM snapshot deadlock Fix LVM snapshot deadlock: it is a bad idea to try to flush all running transactions while we already hold the superblock lock. Drop the sb lock while we flush. This only affects kernels that have the extra LVM VFS locking added in for filesystem quiescing on snapshots. --- linux-2.4.19-ext3/fs/ext3/super.c.=K0010=.orig Mon Feb 25 19:38:08 2002 +++ linux-2.4.19-ext3/fs/ext3/super.c Fri Oct 11 15:52:00 2002 @@ -1589,8 +1589,10 @@ journal_t *journal = EXT3_SB(sb)->s_journal; /* Now we set up the journal barrier. */ + unlock_super(sb); journal_lock_updates(journal); journal_flush(journal); + lock_super(sb); /* Journal blocked and flushed, clear needs_recovery flag. */ EXT3_CLEAR_INCOMPAT_FEATURE(sb, EXT3_FEATURE_INCOMPAT_RECOVER);