From: Gao Xiang <gaoxiang25@huawei.com> To: Al Viro <viro@ZenIV.linux.org.uk> Cc: Linus Torvalds <torvalds@linux-foundation.org>, <linux-kernel@vger.kernel.org>, <linux-fsdevel@vger.kernel.org>, "linux-erofs@lists.ozlabs.org" <linux-erofs@lists.ozlabs.org>, Chao Yu <yuchao0@huawei.com>, Miao Xie <miaoxie@huawei.com> Subject: Re: [RFC PATCH 05/62] erofs: switch to ->free_inode() Date: Thu, 18 Apr 2019 22:01:51 +0800 [thread overview] Message-ID: <e6cddba8-7b0a-6f05-a71a-51b8219f2159@huawei.com> (raw) In-Reply-To: <20190416175340.21068-5-viro@ZenIV.linux.org.uk> On 2019/4/17 1:52, Al Viro wrote: > From: Al Viro <viro@zeniv.linux.org.uk> > > Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> It seems more clear than before :) Thanks for taking erofs into consideration as well, Acked-by: Gao Xiang <gaoxiang25@huawei.com> Thanks, Gao Xiang > --- > drivers/staging/erofs/super.c | 10 ++-------- > 1 file changed, 2 insertions(+), 8 deletions(-) > > diff --git a/drivers/staging/erofs/super.c b/drivers/staging/erofs/super.c > index 15c784fba879..700cbd460807 100644 > --- a/drivers/staging/erofs/super.c > +++ b/drivers/staging/erofs/super.c > @@ -57,9 +57,8 @@ static struct inode *alloc_inode(struct super_block *sb) > return &vi->vfs_inode; > } > > -static void i_callback(struct rcu_head *head) > +static void free_inode(struct inode *inode) > { > - struct inode *inode = container_of(head, struct inode, i_rcu); > struct erofs_vnode *vi = EROFS_V(inode); > > /* be careful RCU symlink path (see ext4_inode_info->i_data)! */ > @@ -71,11 +70,6 @@ static void i_callback(struct rcu_head *head) > kmem_cache_free(erofs_inode_cachep, vi); > } > > -static void destroy_inode(struct inode *inode) > -{ > - call_rcu(&inode->i_rcu, i_callback); > -} > - > static int superblock_read(struct super_block *sb) > { > struct erofs_sb_info *sbi; > @@ -668,7 +662,7 @@ static int erofs_remount(struct super_block *sb, int *flags, char *data) > const struct super_operations erofs_sops = { > .put_super = erofs_put_super, > .alloc_inode = alloc_inode, > - .destroy_inode = destroy_inode, > + .free_inode = free_inode, > .statfs = erofs_statfs, > .show_options = erofs_show_options, > .remount_fs = erofs_remount, >
WARNING: multiple messages have this Message-ID (diff)
From: gaoxiang25@huawei.com (Gao Xiang) Subject: [RFC PATCH 05/62] erofs: switch to ->free_inode() Date: Thu, 18 Apr 2019 22:01:51 +0800 [thread overview] Message-ID: <e6cddba8-7b0a-6f05-a71a-51b8219f2159@huawei.com> (raw) In-Reply-To: <20190416175340.21068-5-viro@ZenIV.linux.org.uk> On 2019/4/17 1:52, Al Viro wrote: > From: Al Viro <viro at zeniv.linux.org.uk> > > Signed-off-by: Al Viro <viro at zeniv.linux.org.uk> It seems more clear than before :) Thanks for taking erofs into consideration as well, Acked-by: Gao Xiang <gaoxiang25 at huawei.com> Thanks, Gao Xiang > --- > drivers/staging/erofs/super.c | 10 ++-------- > 1 file changed, 2 insertions(+), 8 deletions(-) > > diff --git a/drivers/staging/erofs/super.c b/drivers/staging/erofs/super.c > index 15c784fba879..700cbd460807 100644 > --- a/drivers/staging/erofs/super.c > +++ b/drivers/staging/erofs/super.c > @@ -57,9 +57,8 @@ static struct inode *alloc_inode(struct super_block *sb) > return &vi->vfs_inode; > } > > -static void i_callback(struct rcu_head *head) > +static void free_inode(struct inode *inode) > { > - struct inode *inode = container_of(head, struct inode, i_rcu); > struct erofs_vnode *vi = EROFS_V(inode); > > /* be careful RCU symlink path (see ext4_inode_info->i_data)! */ > @@ -71,11 +70,6 @@ static void i_callback(struct rcu_head *head) > kmem_cache_free(erofs_inode_cachep, vi); > } > > -static void destroy_inode(struct inode *inode) > -{ > - call_rcu(&inode->i_rcu, i_callback); > -} > - > static int superblock_read(struct super_block *sb) > { > struct erofs_sb_info *sbi; > @@ -668,7 +662,7 @@ static int erofs_remount(struct super_block *sb, int *flags, char *data) > const struct super_operations erofs_sops = { > .put_super = erofs_put_super, > .alloc_inode = alloc_inode, > - .destroy_inode = destroy_inode, > + .free_inode = free_inode, > .statfs = erofs_statfs, > .show_options = erofs_show_options, > .remount_fs = erofs_remount, >
next prev parent reply other threads:[~2019-04-18 14:02 UTC|newest] Thread overview: 83+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-04-16 17:49 [RFC][PATCHSET] sorting out RCU-delayed stuff in ->destroy_inode() Al Viro 2019-04-16 17:52 ` [RFC PATCH 01/62] securityfs: fix use-after-free on symlink traversal Al Viro 2019-04-16 17:52 ` [RFC PATCH 02/62] apparmorfs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 03/62] new inode method: ->free_inode() Al Viro 2019-04-16 17:52 ` [RFC PATCH 04/62] spufs: switch to ->free_inode() Al Viro 2019-04-16 17:52 ` [RFC PATCH 05/62] erofs: " Al Viro 2019-04-18 14:01 ` Gao Xiang [this message] 2019-04-18 14:01 ` Gao Xiang 2019-04-16 17:52 ` [RFC PATCH 06/62] 9p: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 07/62] adfs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 08/62] affs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 09/62] befs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 10/62] bfs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 11/62] bdev: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 12/62] cifs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 13/62] debugfs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 14/62] efs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 15/62] ext2: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 16/62] f2fs: " Al Viro 2019-04-20 2:52 ` Chao Yu 2019-04-16 17:52 ` [RFC PATCH 17/62] fat: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 18/62] freevxfs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 19/62] gfs2: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 20/62] hfs: " Al Viro 2019-04-16 17:52 ` [RFC PATCH 21/62] hfsplus: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 22/62] hostfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 23/62] hpfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 24/62] isofs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 25/62] jffs2: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 26/62] minix: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 27/62] nfs{,4}: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 28/62] nilfs2: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 29/62] dlmfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 30/62] ocfs2: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 31/62] openpromfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 32/62] procfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 33/62] qnx4: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 34/62] qnx6: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 35/62] reiserfs: convert " Al Viro 2019-04-16 17:53 ` [RFC PATCH 36/62] romfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 37/62] squashfs: switch " Al Viro 2019-04-16 17:53 ` [RFC PATCH 38/62] ubifs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 39/62] udf: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 40/62] sysv: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 41/62] coda: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 42/62] ufs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 43/62] mqueue: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 44/62] bpf: " Al Viro 2019-04-16 18:07 ` Alexei Starovoitov 2019-04-16 21:34 ` Song Liu 2019-04-16 17:53 ` [RFC PATCH 45/62] rpcpipe: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 46/62] apparmor: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 47/62] securityfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 48/62] ntfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 49/62] dax: make use of ->free_inode() Al Viro 2019-04-18 12:16 ` Jan Kara 2019-04-18 16:58 ` Dan Williams 2019-04-16 17:53 ` [RFC PATCH 50/62] afs: switch to " Al Viro 2019-04-16 17:53 ` [RFC PATCH 51/62] btrfs: use ->free_inode() Al Viro 2019-04-16 17:53 ` [RFC PATCH 52/62] ceph: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 53/62] ecryptfs: make use of ->free_inode() Al Viro 2019-04-16 17:53 ` [RFC PATCH 54/62] ext4: " Al Viro 2019-04-18 12:10 ` Jan Kara 2019-04-16 17:53 ` [RFC PATCH 55/62] fuse: switch to ->free_inode() Al Viro 2019-04-16 17:53 ` [RFC PATCH 56/62] jfs: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 57/62] overlayfs: make use of ->free_inode() Al Viro 2019-04-16 17:53 ` [RFC PATCH 58/62] hugetlb: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 59/62] shmem: " Al Viro 2019-04-16 17:53 ` [RFC PATCH 60/62] orangefs: " Al Viro 2019-04-22 21:14 ` Mike Marshall 2019-04-22 21:56 ` Linus Torvalds 2019-04-22 23:10 ` Al Viro 2019-04-22 23:17 ` Mike Marshall 2019-04-16 17:53 ` [RFC PATCH 61/62] sockfs: switch to ->free_inode() Al Viro 2019-04-16 17:53 ` [RFC PATCH 62/62] coallocate socket->wq with socket itself Al Viro 2019-04-16 18:01 ` [RFC][PATCHSET] sorting out RCU-delayed stuff in ->destroy_inode() Linus Torvalds 2019-04-30 3:09 ` Al Viro [not found] ` <CAHk-=wiMvCR0iENUVorfU-3EMC7G8RNSeHSQrz9tndP1uSg2BQ@mail.gmail.com> 2019-04-30 4:00 ` Al Viro 2019-05-01 1:59 ` Al Viro 2019-04-30 4:18 ` Andreas Dilger 2019-04-30 4:26 ` Al Viro 2019-04-30 5:26 ` Andreas Dilger 2019-04-17 15:55 ` David Sterba
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=e6cddba8-7b0a-6f05-a71a-51b8219f2159@huawei.com \ --to=gaoxiang25@huawei.com \ --cc=linux-erofs@lists.ozlabs.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=miaoxie@huawei.com \ --cc=torvalds@linux-foundation.org \ --cc=viro@ZenIV.linux.org.uk \ --cc=yuchao0@huawei.com \ /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 an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.