On Sat, 26 Aug, 2023 19:42:18 +0200 Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> wrote: > The commit in Fixes updated the error handling path of > thunderstrike_create() and the remove function but not the error handling > path of shield_probe(), should an error occur after a successful > thunderstrike_create() call. > > Add the missing calls. > > Fixes: 3ab196f88237 ("HID: nvidia-shield: Add battery support for Thunderstrike") > Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> > --- > drivers/hid/hid-nvidia-shield.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/hid/hid-nvidia-shield.c b/drivers/hid/hid-nvidia-shield.c > index 66a7478e2c9d..849b3f8409a0 100644 > --- a/drivers/hid/hid-nvidia-shield.c > +++ b/drivers/hid/hid-nvidia-shield.c > @@ -1074,9 +1074,11 @@ static int shield_probe(struct hid_device *hdev, const struct hid_device_id *id) > err_stop: > hid_hw_stop(hdev); > err_haptics: Functionally, the change looks good to me. Can we update this label from err_haptics to err_ts_create? Because of the label name, I accidentally forgot to add other cleanup in this context originally... (Rust borrow checker please rescue me) > + power_supply_unregister(ts->base.battery_dev.psy); > if (ts->haptics_dev) > input_unregister_device(ts->haptics_dev); > led_classdev_unregister(&ts->led_dev); > + ida_free(&thunderstrike_ida, ts->id); > return ret; > } -- Thanks, Rahul Rameshbabu