dentry->d_parent->d_name.name, dentry->d_name.name, 
file->f_dentry->d_parent->d_name.name, file->f_dentry->d_name.name, 
nfs_file_direct_read(struct kiocb *iocb, char __user *buf, size_t count, loff_t pos){	ssize_t retval = -EINVAL;	loff_t *ppos = &iocb->ki_pos;	struct file *file = iocb->ki_filp;	struct nfs_open_context *ctx =			(struct nfs_open_context *) file->private_data;	struct dentry *dentry = file->f_dentry;	struct address_space *mapping = file->f_mapping;	struct inode *inode = mapping->host;	struct iovec iov = {		.iov_base = buf,		.iov_len = count,	};	dprintk("nfs: direct read(%s/%s, %lu@%lu)\n",		dentry->d_parent->d_name.name, dentry->d_name.name,		(unsigned long) count, (unsigned long) pos);	if (!is_sync_kiocb(iocb))		goto out;	if (count < 0)		goto out;	retval = -EFAULT;	if (!access_ok(VERIFY_WRITE, iov.iov_base, iov.iov_len))		goto out;	retval = 0;	if (!count)		goto out;	if (mapping->nrpages) {		retval = filemap_fdatawrite(mapping);		if (retval == 0)			retval = nfs_wb_all(inode);		if (retval == 0)			retval = filemap_fdatawait(mapping);		if (retval)			goto out;	}	retval = nfs_direct_read(inode, ctx, &iov, pos, 1);	if (retval > 0)		*ppos = pos + retval;out:	return retval;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0bbacc402e67abca8794a8401c1621dc0c0202e9/direct.c/clean/fs/nfs/direct.c