* Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> [230606 13:16]: > On Tue, Jun 06, 2023 at 11:26:25AM +0300, Dan Carpenter wrote: > > The put_device() function will call serial_base_ctrl_release() or > > serial_base_port_release() so these kfrees() are a double free bug. > > ... > > These labels are also called without device being even added. > So, this is not good enough as far as I can tell. I guess you mean the possibe error returned from the call to serial_base_device_init()? If serial_base_device_init() fails, we return error and end up doing the put_device(). We have serial_base_device_init() call device_initialize(), is that not enough for put_device()? Regards, Tony