Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 953e622b authored by Eric Sandeen's avatar Eric Sandeen Committed by Theodore Ts'o
Browse files

ext4: use atomic functions to set bh_state



Use the BUFFER_FNS functions (set_buffer_foo) to set buffer
head state atomically instead of nonatomic __set_bit().

Signed-off-by: default avatarEric Sandeen <sandeen@redhat.com>
Signed-off-by: default avatarMingming Cao <cmm@us.ibm.com>
Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
parent 47b4a50b
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -2622,8 +2622,7 @@ int ext4_ext_get_blocks(handle_t *handle, struct inode *inode,
				 */
				if (allocated > max_blocks)
					allocated = max_blocks;
				/* mark the buffer unwritten */
				__set_bit(BH_Unwritten, &bh_result->b_state);
				set_buffer_unwritten(bh_result);
				goto out2;
			}

@@ -2729,7 +2728,7 @@ int ext4_ext_get_blocks(handle_t *handle, struct inode *inode,
	if (extend_disksize && inode->i_size > EXT4_I(inode)->i_disksize)
		EXT4_I(inode)->i_disksize = inode->i_size;

	__set_bit(BH_New, &bh_result->b_state);
	set_buffer_new(bh_result);

	/* Cache only when it is _not_ an uninitialized extent */
	if (create != EXT4_CREATE_UNINITIALIZED_EXT)
@@ -2739,7 +2738,7 @@ int ext4_ext_get_blocks(handle_t *handle, struct inode *inode,
	if (allocated > max_blocks)
		allocated = max_blocks;
	ext4_ext_show_leaf(inode, path);
	__set_bit(BH_Mapped, &bh_result->b_state);
	set_buffer_mapped(bh_result);
	bh_result->b_bdev = inode->i_sb->s_bdev;
	bh_result->b_blocknr = newblock;
out2: