affs: stop using lock_super
Artem Bityutskiy [Wed, 6 Jun 2012 15:56:55 +0000 (18:56 +0300)]
The VFS's 'lock_super()' and 'unlock_super()' calls are deprecated and unwanted
and just wait for a brave knight who'd kill them. This patch makes AFFS stop
using them and use the buffer-head's own lock instead.

Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

fs/affs/super.c

index 4ceec56..da7498d 100644 (file)
@@ -31,13 +31,14 @@ affs_commit_super(struct super_block *sb, int wait)
        struct buffer_head *bh = sbi->s_root_bh;
        struct affs_root_tail *tail = AFFS_ROOT_TAIL(sb, bh);
 
-       lock_super(sb);
+       lock_buffer(bh);
        secs_to_datestamp(get_seconds(), &tail->disk_change);
        affs_fix_checksum(sb, bh);
+       unlock_buffer(bh);
+
        mark_buffer_dirty(bh);
        if (wait)
                sync_dirty_buffer(bh);
-       unlock_super(sb);
 }
 
 static void