[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0807231412070.1841@artax.karlin.mff.cuni.cz>
Date: Wed, 23 Jul 2008 14:13:01 +0200 (CEST)
From: Mikulas Patocka <mikulas@...ax.karlin.mff.cuni.cz>
To: Miklos Szeredi <miklos@...redi.hu>
cc: viro@...IV.linux.org.uk, linux-kernel@...r.kernel.org
Subject: Re: [patch 04/14] hpfs: dont call notify_change
What about down_write on i_alloc_sem --- notify change takes that and your
patch bypasses that.
Mikulas
> From: Miklos Szeredi <mszeredi@...e.cz>
>
> hpfs_unlink() calls notify_change() to truncate the file before
> deleting. Replace with explicit call to hpfs_notify_change().
>
> This is equivalent, except that:
> - security_inode_setattr() is not called before hpfs_notify_change()
> - fsnotify_change() is not called after hpfs_notify_change()
>
> The truncation is just an implementation detail, so both the security
> check and the notification are unnecessary.
>
> Possibly even the ctime modification is wrong?
>
> Signed-off-by: Miklos Szeredi <mszeredi@...e.cz>
> CC: Mikulas Patocka <mikulas@...ax.karlin.mff.cuni.cz>
> ---
> fs/hpfs/namei.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> Index: linux-2.6/fs/hpfs/namei.c
> ===================================================================
> --- linux-2.6.orig/fs/hpfs/namei.c 2008-07-23 00:10:13.000000000 +0200
> +++ linux-2.6/fs/hpfs/namei.c 2008-07-23 00:10:22.000000000 +0200
> @@ -426,7 +426,8 @@ again:
> /*printk("HPFS: truncating file before delete.\n");*/
> newattrs.ia_size = 0;
> newattrs.ia_valid = ATTR_SIZE | ATTR_CTIME;
> - err = notify_change(dentry, &newattrs);
> + newattrs.ia_ctime = current_fs_time(inode->i_sb);
> + err = hpfs_notify_change(dentry, &newattrs);
> put_write_access(inode);
> if (!err)
> goto again;
>
> --
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists