On Thu, Apr 29, 2021 at 01:54:46PM +0200, Greg Kroah-Hartman wrote: > On Thu, Apr 29, 2021 at 01:40:28PM +0200, Daniel Vetter wrote: > > On Wed, Apr 28, 2021 at 11:52:49PM +0200, Hans de Goede wrote: > > > Userspace could hold open a reference to the connector->kdev device, > > > through e.g. holding a sysfs-atrtribute open after > > > drm_sysfs_connector_remove() has been called. In this case the connector > > > could be free-ed while the connector->kdev device's drvdata is still > > > pointing to it. > > > > > > Give drm_connector devices there own device type, which allows > > > us to specify our own release function and make drm_sysfs_connector_add() > > > take a reference on the connector object, and have the new release > > > function put the reference when the device is released. > > > > > > Giving drm_connector devices there own device type, will also allow > > > checking if a device is a drm_connector device with a > > > "if (device->type == &drm_sysfs_device_connector)" check. > > > > > > Note that the setting of the name member of the device_type struct will > > > cause udev events for drm_connector-s to now contain DEVTYPE=drm_connector > > > as extra info. So this extends the uevent part of the userspace API. > > > > > > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > > > > Are you sure? I thought sysfs is supposed to flush out any pending > > operations (they complete fast) and handle open fd internally? > > Yes, it "should" :) Thanks for confirming my vague memories :-) Hans, pls drop this one. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch