Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

HID: nintendo: unlock on error in joycon_leds_create()

These two error paths need to drop the lock before returning.

Fixes: c5e626769563 ("HID: nintendo: add player led support")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>

authored by

Dan Carpenter and committed by
Jiri Kosina
304dd368 f155dfea

+4 -1
+4 -1
drivers/hid/hid-nintendo.c
··· 1850 1850 d_name, 1851 1851 "green", 1852 1852 joycon_player_led_names[i]); 1853 - if (!name) 1853 + if (!name) { 1854 + mutex_unlock(&joycon_input_num_mutex); 1854 1855 return -ENOMEM; 1856 + } 1855 1857 1856 1858 led = &ctlr->leds[i]; 1857 1859 led->name = name; ··· 1866 1864 ret = devm_led_classdev_register(&hdev->dev, led); 1867 1865 if (ret) { 1868 1866 hid_err(hdev, "Failed registering %s LED\n", led->name); 1867 + mutex_unlock(&joycon_input_num_mutex); 1869 1868 return ret; 1870 1869 } 1871 1870 }