HID: amd_sfh: Add missing check for dma_alloc_coherent
authorJiasheng Jiang <jiasheng@iscas.ac.cn>
Tue, 20 Dec 2022 02:49:21 +0000 (10:49 +0800)
committerBenjamin Tissoires <benjamin.tissoires@redhat.com>
Tue, 20 Dec 2022 08:45:53 +0000 (09:45 +0100)
Add check for the return value of the dma_alloc_coherent since
it may return NULL pointer if allocation fails.

Fixes: 4b2c53d93a4b ("SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH)")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Acked-by: Basavaraj Natikar <Basavaraj.Natikar@amd.com>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Link: https://lore.kernel.org/r/20221220024921.21992-1-jiasheng@iscas.ac.cn
drivers/hid/amd-sfh-hid/amd_sfh_client.c

index 8275bba..ab125f7 100644 (file)
@@ -237,6 +237,10 @@ int amd_sfh_hid_client_init(struct amd_mp2_dev *privdata)
                in_data->sensor_virt_addr[i] = dma_alloc_coherent(dev, sizeof(int) * 8,
                                                                  &cl_data->sensor_dma_addr[i],
                                                                  GFP_KERNEL);
+               if (!in_data->sensor_virt_addr[i]) {
+                       rc = -ENOMEM;
+                       goto cleanup;
+               }
                cl_data->sensor_sts[i] = SENSOR_DISABLED;
                cl_data->sensor_requested_cnt[i] = 0;
                cl_data->cur_hid_dev = i;