media: atomisp: add a notice about possible leak resources
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 12 May 2020 12:23:28 +0000 (14:23 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 20 May 2020 13:02:34 +0000 (15:02 +0200)
Calling acpi_bus_get_device() may end allocating resources that
aren't freed. So, add a notice about that, as, if those drivers
get out of staging, we may need some changes.

Fixes: 0d64e9420583 ("media: atomisp: Add some ACPI detection info")
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/atomisp/i2c/atomisp-gc0310.c
drivers/staging/media/atomisp/i2c/atomisp-gc2235.c
drivers/staging/media/atomisp/i2c/atomisp-lm3554.c
drivers/staging/media/atomisp/i2c/atomisp-mt9m114.c
drivers/staging/media/atomisp/i2c/atomisp-ov2680.c
drivers/staging/media/atomisp/i2c/atomisp-ov2722.c
drivers/staging/media/atomisp/i2c/ov5693/atomisp-ov5693.c

index b69a5b5..ad1bd7d 100644 (file)
@@ -1317,9 +1317,10 @@ static int gc0310_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        pr_info("%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
+
 
        dev = kzalloc(sizeof(*dev), GFP_KERNEL);
        if (!dev)
index e863e19..a12dd0e 100644 (file)
@@ -1059,9 +1059,9 @@ static int gc2235_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        pr_info("%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
 
        dev = kzalloc(sizeof(*dev), GFP_KERNEL);
        if (!dev)
index 0e9f802..a899145 100644 (file)
@@ -858,9 +858,9 @@ static int lm3554_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        pr_info("%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
 
        flash = kzalloc(sizeof(*flash), GFP_KERNEL);
        if (!flash)
index e7af4bb..ac61b39 100644 (file)
@@ -1824,9 +1824,9 @@ static int mt9m114_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        pr_info("%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
 
        /* Setup sensor configuration structure */
        dev = kzalloc(sizeof(*dev), GFP_KERNEL);
index 334f23f..1b60f6a 100644 (file)
@@ -1251,9 +1251,9 @@ static int ov2680_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        dev_info(&client->dev, "%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
 
        dev = kzalloc(sizeof(*dev), GFP_KERNEL);
        if (!dev)
index 0879905..718d10f 100644 (file)
@@ -1222,9 +1222,9 @@ static int ov2722_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        pr_info("%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
 
        dev = kzalloc(sizeof(*dev), GFP_KERNEL);
        if (!dev)
index 886f9fd..2be0ef1 100644 (file)
@@ -1909,9 +1909,9 @@ static int ov5693_probe(struct i2c_client *client)
                dev_err(&client->dev, "Error could not get ACPI device\n");
                return -ENODEV;
        }
-
        pr_info("%s: ACPI detected it on bus ID=%s, HID=%s\n",
                __func__, acpi_device_bid(adev), acpi_device_hid(adev));
+       // FIXME: may need to release resources allocated by acpi_bus_get_device()
 
        /*
         * Firmware workaround: Some modules use a "secondary default"