From: NeilBrown Based on code from Terje Malmedal --- 25-akpm/fs/nfsd/vfs.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff -puN fs/nfsd/vfs.c~nfsd-04-add-dnotify-events fs/nfsd/vfs.c --- 25/fs/nfsd/vfs.c~nfsd-04-add-dnotify-events Thu Jan 15 17:43:52 2004 +++ 25-akpm/fs/nfsd/vfs.c Thu Jan 15 17:43:52 2004 @@ -43,6 +43,7 @@ #endif /* CONFIG_NFSD_V3 */ #include #include +#include #include @@ -680,6 +681,7 @@ nfsd_read(struct svc_rqst *rqstp, struct nfsdstats.io_read += err; *count = err; err = 0; + dnotify_parent(file.f_dentry, DN_ACCESS); } else err = nfserrno(err); out_close: @@ -745,9 +747,11 @@ nfsd_write(struct svc_rqst *rqstp, struc /* Write the data. */ oldfs = get_fs(); set_fs(KERNEL_DS); err = vfs_writev(&file, vec, vlen, &offset); - if (err >= 0) - nfsdstats.io_write += cnt; set_fs(oldfs); + if (err >= 0) { + nfsdstats.io_write += cnt; + dnotify_parent(file.f_dentry, DN_MODIFY); + } /* clear setuid/setgid flag after write */ if (err >= 0 && (inode->i_mode & (S_ISUID | S_ISGID))) { _