LKML Archive on lore.kernel.org help / color / mirror / Atom feed
From: Mark Fasheh <mfasheh@suse.de> To: linux-fsdevel@vger.kernel.org Cc: linux-kernel@vger.kernel.org, linux-btrfs@vger.kernel.org, Mark Fasheh <mfasheh@suse.de> Subject: [PATCH 35/76] fs/fuse: Use inode_sb() helper instead of inode->i_sb Date: Tue, 8 May 2018 11:03:55 -0700 [thread overview] Message-ID: <20180508180436.716-36-mfasheh@suse.de> (raw) In-Reply-To: <20180508180436.716-1-mfasheh@suse.de> Signed-off-by: Mark Fasheh <mfasheh@suse.de> --- fs/fuse/dir.c | 13 +++++++------ fs/fuse/file.c | 6 +++--- fs/fuse/fuse_i.h | 2 +- fs/fuse/inode.c | 7 ++++--- 4 files changed, 15 insertions(+), 13 deletions(-) diff --git a/fs/fuse/dir.c b/fs/fuse/dir.c index 24967382a7b1..b68adb3bd70d 100644 --- a/fs/fuse/dir.c +++ b/fs/fuse/dir.c @@ -357,7 +357,8 @@ static struct dentry *fuse_lookup(struct inode *dir, struct dentry *entry, bool outarg_valid = true; fuse_lock_inode(dir); - err = fuse_lookup_name(dir->i_sb, get_node_id(dir), &entry->d_name, + err = fuse_lookup_name(inode_sb(dir), get_node_id(dir), + &entry->d_name, &outarg, &inode); fuse_unlock_inode(dir); if (err == -ENOENT) { @@ -456,7 +457,7 @@ static int fuse_create_open(struct inode *dir, struct dentry *entry, ff->fh = outopen.fh; ff->nodeid = outentry.nodeid; ff->open_flags = outopen.open_flags; - inode = fuse_iget(dir->i_sb, outentry.nodeid, outentry.generation, + inode = fuse_iget(inode_sb(dir), outentry.nodeid, outentry.generation, &outentry.attr, entry_attr_timeout(&outentry), 0); if (!inode) { flags &= ~(O_CREAT | O_EXCL | O_TRUNC); @@ -562,7 +563,7 @@ static int create_new_entry(struct fuse_conn *fc, struct fuse_args *args, if ((outarg.attr.mode ^ mode) & S_IFMT) goto out_put_forget_req; - inode = fuse_iget(dir->i_sb, outarg.nodeid, outarg.generation, + inode = fuse_iget(inode_sb(dir), outarg.nodeid, outarg.generation, &outarg.attr, entry_attr_timeout(&outarg), 0); if (!inode) { fuse_queue_forget(fc, forget, outarg.nodeid, 1); @@ -854,7 +855,7 @@ static void fuse_fillattr(struct inode *inode, struct fuse_attr *attr, attr->ctimensec = inode->i_ctime.tv_nsec; } - stat->dev = inode->i_sb->s_dev; + stat->dev = inode_sb(inode)->s_dev; stat->ino = attr->ino; stat->mode = (inode->i_mode & S_IFMT) | (attr->mode & 07777); stat->nlink = attr->nlink; @@ -873,7 +874,7 @@ static void fuse_fillattr(struct inode *inode, struct fuse_attr *attr, if (attr->blksize != 0) blkbits = ilog2(attr->blksize); else - blkbits = inode->i_sb->s_blocksize_bits; + blkbits = inode_sb(inode)->s_blocksize_bits; stat->blksize = 1 << blkbits; } @@ -1255,7 +1256,7 @@ static int fuse_direntplus_link(struct file *file, * which bumps nlookup inside */ } else { - inode = fuse_iget(dir->i_sb, o->nodeid, o->generation, + inode = fuse_iget(inode_sb(dir), o->nodeid, o->generation, &o->attr, entry_attr_timeout(o), attr_version); if (!inode) diff --git a/fs/fuse/file.c b/fs/fuse/file.c index a201fb0ac64f..14e55c348da7 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c @@ -2250,12 +2250,12 @@ static sector_t fuse_bmap(struct address_space *mapping, sector_t block) struct fuse_bmap_out outarg; int err; - if (!inode->i_sb->s_bdev || fc->no_bmap) + if (!inode_sb(inode)->s_bdev || fc->no_bmap) return 0; memset(&inarg, 0, sizeof(inarg)); inarg.block = block; - inarg.blocksize = inode->i_sb->s_blocksize; + inarg.blocksize = inode_sb(inode)->s_blocksize; args.in.h.opcode = FUSE_BMAP; args.in.h.nodeid = get_node_id(inode); args.in.numargs = 1; @@ -2305,7 +2305,7 @@ static loff_t fuse_lseek(struct file *file, loff_t offset, int whence) return err; } - return vfs_setpos(file, outarg.offset, inode->i_sb->s_maxbytes); + return vfs_setpos(file, outarg.offset, inode_sb(inode)->s_maxbytes); fallback: err = fuse_update_attributes(inode, file); diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h index c4c093bbf456..5ea9ddb9fa19 100644 --- a/fs/fuse/fuse_i.h +++ b/fs/fuse/fuse_i.h @@ -674,7 +674,7 @@ static inline struct fuse_conn *get_fuse_conn_super(struct super_block *sb) static inline struct fuse_conn *get_fuse_conn(struct inode *inode) { - return get_fuse_conn_super(inode->i_sb); + return get_fuse_conn_super(inode_sb(inode)); } static inline struct fuse_inode *get_fuse_inode(struct inode *inode) diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index 624f18bbfd2b..d6d2fbe6c3ec 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c @@ -130,7 +130,7 @@ static void fuse_evict_inode(struct inode *inode) { truncate_inode_pages_final(&inode->i_data); clear_inode(inode); - if (inode->i_sb->s_flags & SB_ACTIVE) { + if (inode_sb(inode)->s_flags & SB_ACTIVE) { struct fuse_conn *fc = get_fuse_conn(inode); struct fuse_inode *fi = get_fuse_inode(inode); fuse_queue_forget(fc, fi->forget, fi->nodeid, fi->nlookup); @@ -187,7 +187,7 @@ void fuse_change_attributes_common(struct inode *inode, struct fuse_attr *attr, if (attr->blksize != 0) inode->i_blkbits = ilog2(attr->blksize); else - inode->i_blkbits = inode->i_sb->s_blocksize_bits; + inode->i_blkbits = inode_sb(inode)->s_blocksize_bits; /* * Don't set the sticky bit in i_mode, unless we want the VFS @@ -778,7 +778,8 @@ static struct dentry *fuse_get_parent(struct dentry *child) if (!fc->export_support) return ERR_PTR(-ESTALE); - err = fuse_lookup_name(child_inode->i_sb, get_node_id(child_inode), + err = fuse_lookup_name(inode_sb(child_inode), + get_node_id(child_inode), &name, &outarg, &inode); if (err) { if (err == -ENOENT) -- 2.15.1
next prev parent reply other threads:[~2018-05-08 18:30 UTC|newest] Thread overview: 88+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-05-08 18:03 [RFC][PATCH 0/76] vfs: 'views' for filesystems with more than one root Mark Fasheh 2018-05-08 18:03 ` [PATCH 01/76] vfs: Introduce struct fs_view Mark Fasheh 2018-05-08 18:03 ` [PATCH 02/76] arch: Use inode_sb() helper instead of inode->i_sb Mark Fasheh 2018-05-08 18:03 ` [PATCH 03/76] drivers: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 04/76] fs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 05/76] include: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 06/76] ipc: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 07/76] kernel: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 08/76] mm: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 09/76] net: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 10/76] security: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 11/76] fs/9p: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 12/76] fs/adfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 13/76] fs/affs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 14/76] fs/afs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 15/76] fs/autofs4: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 16/76] fs/befs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 17/76] fs/bfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 18/76] fs/btrfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 19/76] fs/ceph: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 20/76] fs/cifs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 21/76] fs/coda: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 22/76] fs/configfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 23/76] fs/cramfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 24/76] fs/crypto: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 25/76] fs/ecryptfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 26/76] fs/efivarfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 27/76] fs/efs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 28/76] fs/exofs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 29/76] fs/exportfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 30/76] fs/ext2: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 31/76] fs/ext4: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 32/76] fs/f2fs: " Mark Fasheh 2018-05-10 10:10 ` Chao Yu 2018-05-08 18:03 ` [PATCH 33/76] fs/fat: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 34/76] fs/freevxfs: " Mark Fasheh 2018-05-08 18:03 ` Mark Fasheh [this message] 2018-05-08 18:03 ` [PATCH 36/76] fs/gfs2: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 37/76] fs/hfs: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 38/76] fs/hfsplus: " Mark Fasheh 2018-05-08 18:03 ` [PATCH 39/76] fs/hostfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 40/76] fs/hpfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 41/76] fs/hugetlbfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 42/76] fs/isofs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 43/76] fs/jbd2: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 44/76] fs/jffs2: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 45/76] fs/jfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 46/76] fs/kernfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 47/76] fs/lockd: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 48/76] fs/minix: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 49/76] fs/nfsd: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 50/76] fs/nfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 51/76] fs/nilfs2: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 52/76] fs/notify: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 53/76] fs/ntfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 54/76] fs/ocfs2: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 55/76] fs/omfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 56/76] fs/openpromfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 57/76] fs/orangefs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 58/76] fs/overlayfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 59/76] fs/proc: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 60/76] fs/qnx4: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 61/76] fs/qnx6: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 62/76] fs/quota: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 63/76] fs/ramfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 64/76] fs/read: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 65/76] fs/reiserfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 66/76] fs/romfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 67/76] fs/squashfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 68/76] fs/sysv: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 69/76] fs/ubifs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 70/76] fs/udf: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 71/76] fs/ufs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 72/76] fs/xfs: " Mark Fasheh 2018-05-08 18:04 ` [PATCH 73/76] vfs: Move s_dev to to struct fs_view Mark Fasheh 2018-05-08 18:04 ` [PATCH 74/76] fs: Use fs_view device from struct inode Mark Fasheh 2018-05-08 18:04 ` [PATCH 75/76] fs: Use fs view device from struct super_block Mark Fasheh 2018-05-08 18:04 ` [PATCH 76/76] btrfs: Use fs_view in roots, point inodes to it Mark Fasheh 2018-05-08 23:38 ` [RFC][PATCH 0/76] vfs: 'views' for filesystems with more than one root Dave Chinner 2018-05-09 2:06 ` Jeff Mahoney 2018-05-09 6:41 ` Dave Chinner 2018-06-05 20:17 ` Jeff Mahoney 2018-06-06 9:49 ` Amir Goldstein 2018-06-06 20:42 ` Mark Fasheh 2018-06-07 6:06 ` Amir Goldstein 2018-06-07 20:44 ` Mark Fasheh 2018-06-06 21:19 ` Jeff Mahoney 2018-06-07 6:17 ` Amir Goldstein
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20180508180436.716-36-mfasheh@suse.de \ --to=mfasheh@suse.de \ --cc=linux-btrfs@vger.kernel.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).