On Mon, Aug 3, 2020 at 9:47 AM Qu Wenruo <quwenruo.btrfs@xxxxxxx> wrote: > On 2020/6/5 上午1:46, Rafael J. Wysocki wrote: ... > > +/** > > + * kobject_del() - Unlink kobject from hierarchy. > > + * @kobj: object. > > + * > > + * This is the function that should be called to delete an object > > + * successfully added via kobject_add(). > > + */ > > +void kobject_del(struct kobject *kobj) > > +{ > > + struct kobject *parent = kobj->parent; > > + > > + __kobject_del(kobj); > > + kobject_put(parent); > > Could you please add an extra check on kobj before accessing kobj->parent? I do not understand. Where do we access it? kobject_put() is NULL-aware. > This patch in fact removes the ability to call kobject_del() on NULL > pointer while not cause anything wrong. > > I know this is not a big deal, but such behavior change has already > caused some problem for the incoming btrfs code. > (Now I feels guilty just by looking into the old > kobject_del()/kobject_put() and utilize that feature in btrfs) > > Since the old kobject_del() accepts NULL pointer intentionally, it would > be much better to keep such behavior. Can you elaborate, please? -- With Best Regards, Andy Shevchenko