HID: amd_sfh: Add NULL check for hid device
authorBasavaraj Natikar <Basavaraj.Natikar@amd.com>
Tue, 12 Jul 2022 18:18:26 +0000 (23:48 +0530)
committerJiri Kosina <jkosina@suse.cz>
Thu, 21 Jul 2022 11:43:58 +0000 (13:43 +0200)
On removal of hid device during SFH set report may cause NULL pointer
exception. Hence add NULL check for hid device before accessing.

Fixes: 4b2c53d93a4b ("SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH)")
Signed-off-by: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/amd-sfh-hid/amd_sfh_hid.c

index 1089134..1b18291 100644 (file)
@@ -101,11 +101,15 @@ static int amdtp_wait_for_response(struct hid_device *hid)
 
 void amdtp_hid_wakeup(struct hid_device *hid)
 {
-       struct amdtp_hid_data *hid_data = hid->driver_data;
-       struct amdtp_cl_data *cli_data = hid_data->cli_data;
+       struct amdtp_hid_data *hid_data;
+       struct amdtp_cl_data *cli_data;
 
-       cli_data->request_done[cli_data->cur_hid_dev] = true;
-       wake_up_interruptible(&hid_data->hid_wait);
+       if (hid) {
+               hid_data = hid->driver_data;
+               cli_data = hid_data->cli_data;
+               cli_data->request_done[cli_data->cur_hid_dev] = true;
+               wake_up_interruptible(&hid_data->hid_wait);
+       }
 }
 
 static struct hid_ll_driver amdtp_hid_ll_driver = {