diff options
| author | Francois Berder <[email protected]> | 2025-12-02 19:39:39 +0100 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2025-12-16 11:36:41 -0600 |
| commit | eb52d3fe8a591d6daf6d01570ed19ae88b1e934d (patch) | |
| tree | eab584d5cd2ed237ca3a5fa56b9c7312fc290eed /drivers | |
| parent | 87c0e413eb4077766eb9205fd73fa2e14ac0e053 (diff) | |
pinctrl: single: Add missing free in single_allocate_function
If func->pins could not be allocated, one must also free
func variable that was allocated previously.
Signed-off-by: Francois Berder <[email protected]>
Reviewed-by: Quentin Schulz <[email protected]>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/pinctrl/pinctrl-single.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c index c96b293aadf..42980e097e0 100644 --- a/drivers/pinctrl/pinctrl-single.c +++ b/drivers/pinctrl/pinctrl-single.c @@ -282,8 +282,10 @@ static struct single_func *single_allocate_function(struct udevice *dev, func->pins = devm_kmalloc(dev, sizeof(unsigned int) * group_pins, GFP_KERNEL); - if (!func->pins) + if (!func->pins) { + devm_kfree(dev, func); return ERR_PTR(-ENOMEM); + } return func; } |
