Message ID | 20190111161703.7972-1-kieran.bingham+renesas@ideasonboard.com (mailing list archive) |
---|---|
State | Mainlined |
Delegated to: | Kieran Bingham |
Headers | show |
Series | [v2] media: i2c: adv748x: Use devm to allocate the device struct | expand |
Hi Kieran, Thanks for your work. On 2019-01-11 16:17:03 +0000, Kieran Bingham wrote: > From: Steve Longerbeam <steve_longerbeam@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. I would put this under a changes since v1 section and not for inclusion on the commit message upstream. Apart from that Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> > > Signed-off-by: Steve Longerbeam <steve_longerbeam@mentor.com> > Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> > [Kieran: Change sizeof() to dereference the pointer type] > Signed-off-by: Kieran Bingham <kieran.bingham+renesas@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 >
Hi Niklas, On 14/01/2019 13:06, Niklas Söderlund wrote: > Hi Kieran, > > Thanks for your work. > > On 2019-01-11 16:17:03 +0000, Kieran Bingham wrote: >> From: Steve Longerbeam <steve_longerbeam@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. > > I would put this under a changes since v1 section and not for inclusion > on the commit message upstream. Apart from that I considered that, but this is an actual change as well as the s/kzalloc/devm_kzalloc/ on top of the existing code - so I felt it was worthy of keeping in the changelog. (The original code uses sizeof(struct...) instead of sizeof(*s)) > Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Thanks Kieran > >> >> Signed-off-by: Steve Longerbeam <steve_longerbeam@mentor.com> >> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> >> [Kieran: Change sizeof() to dereference the pointer type] >> Signed-off-by: Kieran Bingham <kieran.bingham+renesas@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 >> >
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; }