Messages in this thread | | | From | Jon Nettleton <> | Date | Fri, 16 Jul 2021 19:21:53 +0200 | Subject | Re: [PATCH] software node: balance refcount for managed sw nodes |
| |
On Fri, Jul 16, 2021 at 2:17 PM Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: > > On Fri, Jul 16, 2021 at 01:16:02PM +0300, laurentiu.tudor@nxp.com wrote: > > From: Laurentiu Tudor <laurentiu.tudor@nxp.com> > > > > software_node_notify(), on KOBJ_REMOVE drops the refcount twice on managed > > software nodes, thus leading to underflow errors. Balance the refcount by > > bumping it in the device_create_managed_software_node() function. > > > > The error [1] was encountered after adding a .shutdown() op to our > > fsl-mc-bus driver. > > Looking into the history of adding ->shutdown() to dwc3 driver (it got reverted > later on), I can tell that probably something is wrong in the ->shutdown() > method itself. > > -- > With Best Regards, > Andy Shevchenko > >
Isn't the other alternative to just remove the second kobject_put from KOBJ_REMOVE ?
@@ -1149,7 +1147,6 @@ int software_node_notify(struct device *dev, unsigned long action)
if (swnode->managed) { set_secondary_fwnode(dev, NULL); - kobject_put(&swnode->kobj); } break; default:
If we aren't being incremented in device_create_managed_software_node() then should we be decremented here?
-Jon
| |