From mboxrd@z Thu Jan 1 00:00:00 1970 From: "J. Bruce Fields" Subject: Re: A possible fsnotify bug. Date: Mon, 15 Nov 2010 12:24:17 -0500 Message-ID: <20101115172416.GA10044@fieldses.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: linux-fsdevel@vger.kernel.org, Eric Paris , Neil Brown , linux-nfs@vger.kernel.org, Robert Love To: Alexey Zaytsev Return-path: Received: from fieldses.org ([174.143.236.118]:36904 "EHLO fieldses.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932948Ab0KORYW (ORCPT ); Mon, 15 Nov 2010 12:24:22 -0500 Content-Disposition: inline In-Reply-To: Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Mon, Nov 15, 2010 at 02:15:55AM +0300, Alexey Zaytsev wrote: > Confirmed, the user is getting duplicate notifications. Looks like > this has been working this way since the original inotify patch. Is > this the intended behavior? I can't think of any reason for the nfsd code to be diong the notification itself--looks like just a mistake to me. --b. >=20 > On Sun, Nov 14, 2010 at 08:14, Alexey Zaytsev wrote: > > Hi. > > > > Have not tested, but this code in fs/nfsd/vfs.c looks suspicious: > > http://git.kernel.org/?p=3Dlinux/kernel/git/torvalds/linux-2.6.git;= a=3Dblob;f=3Dfs/nfsd/vfs.c;h=3D184938fcff04d5dff712b8bee01f5d7e41bb20ad= ;hb=3DHEAD#l1032 > > > > 1032 =C2=A0 =C2=A0 =C2=A0 =C2=A0 host_err =3D vfs_writev(file, (str= uct iovec __user *)vec, > > vlen, &offset); > > 1033 =C2=A0 =C2=A0 =C2=A0 =C2=A0 set_fs(oldfs); > > 1034 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (host_err < 0) > > 1035 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 goto o= ut_nfserr; > > 1036 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *cnt =3D host_err; > > 1037 =C2=A0 =C2=A0 =C2=A0 =C2=A0 nfsdstats.io_write +=3D host_err; > > 1038 =C2=A0 =C2=A0 =C2=A0 =C2=A0 fsnotify_modify(file); > > > > fsnotify_modify() is called from vfs_writev() -> do_readv_writev(), > > and the users are probably getting duplicate events, right? > > -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel= " in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html