Re: [PATCH] drm/i915/display: Remove kstrdup_const() and kfree_const() usage

From: Jani Nikula
Date: Fri Oct 04 2024 - 05:35:35 EST


On Thu, 03 Oct 2024, Christophe JAILLET <christophe.jaillet@xxxxxxxxxx> wrote:
> kstrdup_const() and kfree_const() can be confusing in code built as a
> module. In such a case, it does not do what one could expect from the name
> of the functions.
>
> The code is not wrong by itself, but in such a case, it is equivalent to
> kstrdup() and kfree().
>
> So, keep thinks simple and straightforward.
>
> This reverts commit 379b63e7e682 ("drm/i915/display: Save a few bytes of
> memory in intel_backlight_device_register()")

Sorry, I guess I'm confused here. Or I just didn't read the commit
message to [1] properly. Or both.

So the whole point of [1] was that the _const versions can be confusing
if i915 is builtin? But not wrong?

BR,
Jani.


[1] https://lore.kernel.org/r/3b3d3af8739e3016f3f80df0aa85b3c06230a385.1727533674.git.christophe.jaillet@xxxxxxxxxx



>
> Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> ---
> drivers/gpu/drm/i915/display/intel_backlight.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_backlight.c b/drivers/gpu/drm/i915/display/intel_backlight.c
> index 9e05745d797d..3f81a726cc7d 100644
> --- a/drivers/gpu/drm/i915/display/intel_backlight.c
> +++ b/drivers/gpu/drm/i915/display/intel_backlight.c
> @@ -949,7 +949,7 @@ int intel_backlight_device_register(struct intel_connector *connector)
> else
> props.power = BACKLIGHT_POWER_OFF;
>
> - name = kstrdup_const("intel_backlight", GFP_KERNEL);
> + name = kstrdup("intel_backlight", GFP_KERNEL);
> if (!name)
> return -ENOMEM;
>
> @@ -963,7 +963,7 @@ int intel_backlight_device_register(struct intel_connector *connector)
> * compatibility. Use unique names for subsequent backlight devices as a
> * fallback when the default name already exists.
> */
> - kfree_const(name);
> + kfree(name);
> name = kasprintf(GFP_KERNEL, "card%d-%s-backlight",
> i915->drm.primary->index, connector->base.name);
> if (!name)
> @@ -987,7 +987,7 @@ int intel_backlight_device_register(struct intel_connector *connector)
> connector->base.base.id, connector->base.name, name);
>
> out:
> - kfree_const(name);
> + kfree(name);
>
> return ret;
> }

--
Jani Nikula, Intel