From: Steve Longerbeam <steve_longerb...@mentor.com>

Switch to devm_kzalloc() when allocating the adv748x device struct.

The sizeof() is updated to determine the correct allocation size from
the dereferenced pointer type rather than hardcoding the struct type.

Signed-off-by: Steve Longerbeam <steve_longerb...@mentor.com>
Reviewed-by: Kieran Bingham <kieran.bingham+rene...@ideasonboard.com>
[Kieran: Change sizeof() to dereference the pointer type]
Signed-off-by: Kieran Bingham <kieran.bingham+rene...@ideasonboard.com>
---
 drivers/media/i2c/adv748x/adv748x-core.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/media/i2c/adv748x/adv748x-core.c 
b/drivers/media/i2c/adv748x/adv748x-core.c
index 060d0c5b4989..1e5c7bbcf6b2 100644
--- a/drivers/media/i2c/adv748x/adv748x-core.c
+++ b/drivers/media/i2c/adv748x/adv748x-core.c
@@ -674,7 +674,7 @@ static int adv748x_probe(struct i2c_client *client,
        if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE_DATA))
                return -EIO;
 
-       state = kzalloc(sizeof(struct adv748x_state), GFP_KERNEL);
+       state = devm_kzalloc(&client->dev, sizeof(*state), GFP_KERNEL);
        if (!state)
                return -ENOMEM;
 
@@ -772,7 +772,6 @@ static int adv748x_probe(struct i2c_client *client,
        adv748x_dt_cleanup(state);
 err_free_mutex:
        mutex_destroy(&state->mutex);
-       kfree(state);
 
        return ret;
 }
@@ -791,8 +790,6 @@ static int adv748x_remove(struct i2c_client *client)
        adv748x_dt_cleanup(state);
        mutex_destroy(&state->mutex);
 
-       kfree(state);
-
        return 0;
 }
 
-- 
2.17.1

Reply via email to