gpio: aggregator: Fix gpio_aggregator_line_alloc() checking

The gpio_aggregator_line_alloc() function returns error pointers, but
the callers check for NULL.  Update the error checking in the callers.

Fixes: 83c8e3df64 ("gpio: aggregator: expose aggregator created via legacy sysfs to configfs")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Acked-by: Koichiro Den <koichiro.den@canonical.com>
Link: https://lore.kernel.org/r/cc71d8cf6e9bb4bb8cd9ae5050100081891d9345.1744452787.git.dan.carpenter@linaro.org
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
This commit is contained in:
Dan Carpenter
2025-04-14 22:25:20 +02:00
committed by Bartosz Golaszewski
parent eebfcb98cd
commit 2e8636ca34
+6 -6
View File
@@ -984,8 +984,8 @@ gpio_aggregator_device_make_group(struct config_group *group, const char *name)
return ERR_PTR(-EINVAL);
line = gpio_aggregator_line_alloc(aggr, idx, NULL, -1);
if (!line)
return ERR_PTR(-ENOMEM);
if (IS_ERR(line))
return ERR_CAST(line);
config_group_init_type_name(&line->group, name, &gpio_aggregator_line_type);
@@ -1074,8 +1074,8 @@ static int gpio_aggregator_parse(struct gpio_aggregator *aggr)
/* Named GPIO line */
scnprintf(name, sizeof(name), "line%u", n);
line = gpio_aggregator_line_alloc(aggr, n, key, -1);
if (!line) {
error = -ENOMEM;
if (IS_ERR(line)) {
error = PTR_ERR(line);
goto err;
}
config_group_init_type_name(&line->group, name,
@@ -1105,8 +1105,8 @@ static int gpio_aggregator_parse(struct gpio_aggregator *aggr)
for_each_set_bit(i, bitmap, AGGREGATOR_MAX_GPIOS) {
scnprintf(name, sizeof(name), "line%u", n);
line = gpio_aggregator_line_alloc(aggr, n, key, i);
if (!line) {
error = -ENOMEM;
if (IS_ERR(line)) {
error = PTR_ERR(line);
goto err;
}
config_group_init_type_name(&line->group, name,