On Thu, Jan 21, 2021 at 12:13 AM Greg KH <gre...@linuxfoundation.org> wrote: > > On Wed, Jan 20, 2021 at 11:38:57AM -0800, Dan Williams wrote: > > -void cdev_del(struct cdev *p) > > +void cdev_del(struct cdev *cdev) > > { > > - cdev_unmap(p->dev, p->count); > > - kobject_put(&p->kobj); > > + cdev_unmap(cdev->dev, cdev->count); > > + kobject_put(&cdev->kobj); > > After Christoph's patch series, the kobject in struct cdev does nothing, > so I will be removing it. So I don't think this patch set is going to > do what you want :(
The proposal in this series has nothing to do with kobject lifetime. Please take another look at the file_operations shutdown coordination problem and the fact that it's not just cdev that has a use case to manage file_operations this way. I believe Christoph's only objection, correct me if I'm wrong, is that this proposal invents a new third way to do this relative to procfs and debugfs. Perhaps there's a way to generalize this for all three, and I'm going to put some thought there, but at this point I think I'm failing to describe the problem clearly.