Is this just adding dead-code then? (I know I'm conflicting with my no silent errors motto -- but I'm keen to keep our line-count down) By what path would we normally end up in this function? If caches were enabled? -eric On Tue, Aug 17, 2010 at 12:19 PM, Venkateswararao Jujjuri (JV) <jvrao@xxxxxxxxxxxxxxxxxx> wrote: > The presence of v9fs_direct_IO() in the address space ops vector means > the 9P client supports direct I/O. However, we shunt off direct > read and write requests before the VFS gets them, so this method > should never be called. > > Signed-off-by: Venkateswararao Jujjuri <jvrao@xxxxxxxxxxxxxxxxxx> > --- > fs/9p/vfs_addr.c | 24 ++++++++++++++++++++++++ > 1 files changed, 24 insertions(+), 0 deletions(-) > > diff --git a/fs/9p/vfs_addr.c b/fs/9p/vfs_addr.c > index 90e3844..fedcf90 100644 > --- a/fs/9p/vfs_addr.c > +++ b/fs/9p/vfs_addr.c > @@ -154,10 +154,34 @@ static int v9fs_launder_page(struct page *page) > return 0; > } > > +/** > + * v9fs_direct_IO - 9P address space operation for direct I/O > + * @rw: direction (read or write) > + * @iocb: target I/O control block > + * @iov: array of vectors that define I/O buffer > + * @pos: offset in file to begin the operation > + * @nr_segs: size of iovec array > + * > + * The presence of this routine in the address space ops vector means > + * the 9P client supports direct I/O. However, we shunt off direct > + * read and write requests before the VFS gets them, so this method > + * should never be called. > + */ > +ssize_t v9fs_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov, > + loff_t pos, unsigned long nr_segs) > +{ > + P9_DPRINTK(P9_DEBUG_VFS, "v9fs_direct_IO: v9fs_direct_IO (%s) " > + "off/no(%lld/%lu) EINVAL\n", > + iocb->ki_filp->f_path.dentry->d_name.name, > + (long long) pos, nr_segs); > + > + return -EINVAL; > +} > const struct address_space_operations v9fs_addr_operations = { > .readpage = v9fs_vfs_readpage, > .readpages = v9fs_vfs_readpages, > .releasepage = v9fs_release_page, > .invalidatepage = v9fs_invalidate_page, > .launder_page = v9fs_launder_page, > + .direct_IO = v9fs_direct_IO, > }; > -- > 1.6.5.2 > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by > > Make an app they can't live without > Enter the BlackBerry Developer Challenge > http://p.sf.net/sfu/RIM-dev2dev > _______________________________________________ > V9fs-developer mailing list > V9fs-developer@xxxxxxxxxxxxxxxxxxxxx > https://lists.sourceforge.net/lists/listinfo/v9fs-developer > -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html