diff options
Diffstat (limited to 'arch/s390/hypfs/inode.c')
| -rw-r--r-- | arch/s390/hypfs/inode.c | 9 | 
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/s390/hypfs/inode.c b/arch/s390/hypfs/inode.c index 06ea69bd387..5f7d7ba2874 100644 --- a/arch/s390/hypfs/inode.c +++ b/arch/s390/hypfs/inode.c @@ -119,7 +119,7 @@ static void hypfs_evict_inode(struct inode *inode)  static int hypfs_open(struct inode *inode, struct file *filp)  { -	char *data = filp->f_path.dentry->d_inode->i_private; +	char *data = file_inode(filp)->i_private;  	struct hypfs_sb_info *fs_info;  	if (filp->f_mode & FMODE_WRITE) { @@ -171,12 +171,10 @@ static ssize_t hypfs_aio_write(struct kiocb *iocb, const struct iovec *iov,  			      unsigned long nr_segs, loff_t offset)  {  	int rc; -	struct super_block *sb; -	struct hypfs_sb_info *fs_info; +	struct super_block *sb = file_inode(iocb->ki_filp)->i_sb; +	struct hypfs_sb_info *fs_info = sb->s_fs_info;  	size_t count = iov_length(iov, nr_segs); -	sb = iocb->ki_filp->f_path.dentry->d_inode->i_sb; -	fs_info = sb->s_fs_info;  	/*  	 * Currently we only allow one update per second for two reasons:  	 * 1. diag 204 is VERY expensive @@ -458,6 +456,7 @@ static struct file_system_type hypfs_type = {  	.mount		= hypfs_mount,  	.kill_sb	= hypfs_kill_super  }; +MODULE_ALIAS_FS("s390_hypfs");  static const struct super_operations hypfs_s_ops = {  	.statfs		= simple_statfs,  |