Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754279AbYGWRDr (ORCPT ); Wed, 23 Jul 2008 13:03:47 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751914AbYGWRDj (ORCPT ); Wed, 23 Jul 2008 13:03:39 -0400 Received: from fxip-0047f.externet.hu ([88.209.222.127]:46138 "EHLO pomaz-ex.szeredi.hu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751797AbYGWRDj (ORCPT ); Wed, 23 Jul 2008 13:03:39 -0400 To: mikulas@artax.karlin.mff.cuni.cz CC: miklos@szeredi.hu, viro@ZenIV.linux.org.uk, linux-kernel@vger.kernel.org In-reply-to: (message from Mikulas Patocka on Wed, 23 Jul 2008 14:13:01 +0200 (CEST)) Subject: Re: [patch 04/14] hpfs: dont call notify_change References: <20080722221259.866628660@szeredi.hu> <20080722221322.168296561@szeredi.hu> Message-Id: From: Miklos Szeredi Date: Wed, 23 Jul 2008 19:03:36 +0200 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2024 Lines: 54 On Wed, 23 Jul 2008, Mikulas Patocka wrote: > What about down_write on i_alloc_sem --- notify change takes that and your > patch bypasses that. i_alloc_sem is only relevant if filesystem uses blockdev_direct_IO() and friends. It is not used for anything else, so for hpfs there's no need to surround take that lock. Thanks, Miklos > > From: Miklos Szeredi > > > > 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 > > CC: Mikulas Patocka > > --- > > 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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/