ext4: Convert ext4_lock_group to use sb_bgl_lock
We have sb_bgl_lock() and ext4_group_info.bb_state bit spinlock to protech group information. The later is only used within mballoc code. Consolidate them to use sb_bgl_lock(). This makes the mballoc.c code much simpler and also avoid confusion with two locks protecting same info. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
This commit is contained in:
committed by
Theodore Ts'o
parent
eefd7f03b8
commit
955ce5f5be
@@ -1784,18 +1784,18 @@ static int ext4_check_descriptors(struct super_block *sb)
|
||||
"(block %llu)!\n", i, inode_table);
|
||||
return 0;
|
||||
}
|
||||
spin_lock(sb_bgl_lock(sbi, i));
|
||||
ext4_lock_group(sb, i);
|
||||
if (!ext4_group_desc_csum_verify(sbi, i, gdp)) {
|
||||
printk(KERN_ERR "EXT4-fs: ext4_check_descriptors: "
|
||||
"Checksum for group %u failed (%u!=%u)\n",
|
||||
i, le16_to_cpu(ext4_group_desc_csum(sbi, i,
|
||||
gdp)), le16_to_cpu(gdp->bg_checksum));
|
||||
if (!(sb->s_flags & MS_RDONLY)) {
|
||||
spin_unlock(sb_bgl_lock(sbi, i));
|
||||
ext4_unlock_group(sb, i);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
spin_unlock(sb_bgl_lock(sbi, i));
|
||||
ext4_unlock_group(sb, i);
|
||||
if (!flexbg_flag)
|
||||
first_block += EXT4_BLOCKS_PER_GROUP(sb);
|
||||
}
|
||||
|
Reference in New Issue
Block a user