Re: [PATCH 0122/1285] Replace numeric parameter like 0444 with macro

From: Alan Stern
Date: Tue Aug 02 2016 - 10:05:31 EST


On Tue, 2 Aug 2016, Baole Ni wrote:

> I find that the developers often just specified the numeric value
> when calling a macro which is defined with a parameter for access permission.
> As we know, these numeric value for access permission have had the corresponding macro,
> and that using macro can improve the robustness and readability of the code,
> thus, I suggest replacing the numeric parameter with the macro.

This reasoning is highly questionable. How does using a macro improve
either robustness or readability?

> Signed-off-by: Chuansheng Liu <chuansheng.liu@xxxxxxxxx>
> Signed-off-by: Baole Ni <baolex.ni@xxxxxxxxx>
> ---
> drivers/cpufreq/powernow-k7.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/cpufreq/powernow-k7.c b/drivers/cpufreq/powernow-k7.c
> index 9f013ed..2c7d73a 100644
> --- a/drivers/cpufreq/powernow-k7.c
> +++ b/drivers/cpufreq/powernow-k7.c
> @@ -683,7 +683,7 @@ static void __exit powernow_exit(void)
> cpufreq_unregister_driver(&powernow_driver);
> }
>
> -module_param(acpi_force, int, 0444);
> +module_param(acpi_force, int, S_IRUSR | S_IRGRP | S_IROTH);

This is an excellent example. To me, 0444 is _much_ more readable and
understandable than S_IRUSR | S_IRGRP | S_IROTH.

Alan Stern