To further simplify pinconf_generic_parse_dt_config(), eliminate the handling of the case where no configuration is found. When ncfg is zero, krealloc_array() will set ZERO_SIZE_PTR to *configs, which is a natural approach for managing a zero-size buffer. This should have no impact because none of the callers accesses 'configs' when ncfg is zero. Also, it is safe to pass ZERO_SIZE_PTR to kfree(). Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> --- drivers/pinctrl/pinconf-generic.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/drivers/pinctrl/pinconf-generic.c b/drivers/pinctrl/pinconf-generic.c index ba4fe2466e78..252d69ee2b68 100644 --- a/drivers/pinctrl/pinconf-generic.c +++ b/drivers/pinctrl/pinconf-generic.c @@ -265,14 +265,6 @@ int pinconf_generic_parse_dt_config(struct device_node *np, parse_dt_cfg(np, pctldev->desc->custom_params, pctldev->desc->num_custom_params, cfg, &ncfg); - /* no configs found at all */ - if (ncfg == 0) { - kfree(cfg); - *configs = NULL; - *nconfigs = 0; - return 0; - } - /* Now resize the array to store the real number of found properties. */ *configs = krealloc_array(cfg, ncfg, sizeof(unsigned long), GFP_KERNEL); if (!*configs) -- 2.40.1