Hi, On 3/20/23 11:38, Hans de Goede wrote: > On auxiliary_device_init(auxdev) failure we need to do the exact same > cleanup steps as on device.release(), so use the intel_vsec_dev_release() > callback for this. > > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> I've added this to my review-hans (soon to be for-next) branch now. Regards, Hans > --- > drivers/platform/x86/intel/vsec.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/drivers/platform/x86/intel/vsec.c b/drivers/platform/x86/intel/vsec.c > index 2311c16cb975..cf2a20088f6b 100644 > --- a/drivers/platform/x86/intel/vsec.c > +++ b/drivers/platform/x86/intel/vsec.c > @@ -169,11 +169,7 @@ int intel_vsec_add_aux(struct pci_dev *pdev, struct device *parent, > > ret = auxiliary_device_init(auxdev); > if (ret < 0) { > - mutex_lock(&vsec_ida_lock); > - ida_free(intel_vsec_dev->ida, auxdev->id); > - mutex_unlock(&vsec_ida_lock); > - kfree(intel_vsec_dev->resource); > - kfree(intel_vsec_dev); > + intel_vsec_dev_release(&auxdev->dev); > return ret; > } >