On Mon, Feb 20, 2017 at 10:35 PM, Logan Gunthorpe [off-list ref] wrote:
On 20/02/17 10:35 PM, Dmitry Torokhov wrote:
quoted
My only objection is to this statement. There is absolutely nothing that
prevents from calling device_unregister() first and cdev_del() later.
Refcounting will sort it all out.
Yeah, I was really trying to warn people against calling cdev_del within
the release function of the device. If you do that, then the cdev
reference will block the device from ever getting released.
Certainly, you could call device_unregister followed by cdev_del. I
could reword this if you feel it necessary.
I agree with Dmitry, just delete the statement in parenthesis and the
rest is fine. If you're modifying this patch it might be good to take
the opportunity to add a WARN_ON(!parent->kobj.state_initialized) to
catch attempts to call device_add_cdev() with an uninitialized device.
You can also add:
Signed-off-by: Dan Williams <redacted>