Simple mutex_destroy question
Lucas Tanure
tanure at linux.com
Fri Nov 14 05:42:21 EST 2025
Hi,
Do I need to call mutex_destroy in a failed probe exit, or in the remove
module function, if the mutex is located in memory allocated with
devm_kzalloc and family?
Like:
static int mychip_i2c_probe(struct i2c_client *client)
{
struct chip *chip;
int ret;
chip = devm_kzalloc(&client->dev, sizeof(*chip), GFP_KERNEL);
if (!chip)
return -ENOMEM;
mutex_init(&chip->lock);
i2c_set_clientdata(client, chip);
/* Do my chip stuf
*/
return ret;
probe_fail:
mutex_destroy(&chip->lock);
return ret;
}
I understand that mutex_destroy will only invalidate the memory, but as
I am freeing this is not necessary?
Thanks
Lucas Tanure
More information about the Kernelnewbies
mailing list