Re: [ 64/82] ext4: dont trash state flags in EXT4_IOC_SETFLAGS

From: Ted Ts'o
Date: Thu Jun 07 2012 - 23:11:45 EST


On Fri, Jun 08, 2012 at 04:03:09AM +0100, Ben Hutchings wrote:
> > ei->i_flags = flags;
> [...]
>
> Shouldn't this last assignment have been deleted?

Yes, I'm testing two patches to push to Linus. One of them deletes
the last assignment.

The testing cycle should be over by tomorrow morning; in the mean
time, this commit is harmless in its current form (although it won't
fix the problem it was intending to fix until we delete the last
line).


- Ted

commit b22b1f178f6799278d3178d894f37facb2085765
Author: Tao Ma <boyu.mt@xxxxxxxxxx>
Date: Thu Jun 7 19:04:19 2012 -0400

ext4: don't set i_flags in EXT4_IOC_SETFLAGS

Commit 7990696 uses the ext4_{set,clear}_inode_flags() functions to
change the i_flags automatically but fails to remove the error setting
of i_flags. So we still have the problem of trashing state flags.
Fix this by removing the assignment.

Signed-off-by: Tao Ma <boyu.mt@xxxxxxxxxx>
Signed-off-by: "Theodore Ts'o" <tytso@xxxxxxx>
Cc: stable@xxxxxxxxxx

diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
index 8ad112a..e34deac 100644
--- a/fs/ext4/ioctl.c
+++ b/fs/ext4/ioctl.c
@@ -123,7 +123,6 @@ long ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
else
ext4_clear_inode_flag(inode, i);
}
- ei->i_flags = flags;

ext4_set_inode_flags(inode);
inode->i_ctime = ext4_current_time(inode);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/