Messages in this thread | | | Date | Thu, 6 Apr 2023 18:13:05 +0800 | Subject | Re: [PATCH 2/3] erofs: convert to use kobject_is_added() | From | Gao Xiang <> |
| |
Hi Greg,
On 2023/4/6 18:03, Greg KH wrote: > On Thu, Apr 06, 2023 at 05:30:55PM +0800, Yangtao Li wrote: >> Use kobject_is_added() instead of directly accessing the internal >> variables of kobject. BTW kill kobject_del() directly, because >> kobject_put() actually covers kobject removal automatically. >> >> Signed-off-by: Yangtao Li <frank.li@vivo.com> >> --- >> fs/erofs/sysfs.c | 3 +-- >> 1 file changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/fs/erofs/sysfs.c b/fs/erofs/sysfs.c >> index 435e515c0792..daac23e32026 100644 >> --- a/fs/erofs/sysfs.c >> +++ b/fs/erofs/sysfs.c >> @@ -240,8 +240,7 @@ void erofs_unregister_sysfs(struct super_block *sb) >> { >> struct erofs_sb_info *sbi = EROFS_SB(sb); >> >> - if (sbi->s_kobj.state_in_sysfs) { >> - kobject_del(&sbi->s_kobj); >> + if (kobject_is_added(&sbi->s_kobj)) { > > I do not understand why this check is even needed, I do not think it > should be there at all as obviously the kobject was registered if it now > needs to not be registered.
I think Yangtao sent a new patchset which missed the whole previous background discussions as below: https://lore.kernel.org/r/028a1b56-72c9-75f6-fb68-1dc5181bf2e8@linux.alibaba.com
It's needed because once a syzbot complaint as below: https://lore.kernel.org/r/CAD-N9QXNx=p3-QoWzk6pCznF32CZy8kM3vvo8mamfZZ9CpUKdw@mail.gmail.com
I'd suggest including the previous backgrounds at least in the newer patchset, otherwise it makes me explain again and again...
Thanks, Gao Xiang
> > Meta-comment, we need to come up with a "filesystem kobject type" to get > rid of lots of the boilerplate filesystem kobject logic as it's > duplicated in every filesystem in tiny different ways and lots of times > (like here), it's wrong. > > kobjects were not designed to be "used raw" like this, ideally they > would be wrapped in a subsystem that makes them easier to be used (like > the driver model), but filesystems decided to use them and that usage > just grew over the years. That's evolution for you...> > thanks, > > greg k-h
| |