Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1463701 > unrolled thread
| Started by | Nicholas Mc Guire <der.herr@hofr.at> |
|---|---|
| First post | 2016-08-16 13:20 +0200 |
| Last post | 2016-08-16 13:20 +0200 |
| Articles | 1 — 1 participant |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH 1149/1285] Replace numeric parameter like 0444 with macro Nicholas Mc Guire <der.herr@hofr.at> - 2016-08-16 13:20 +0200
| From | Nicholas Mc Guire <der.herr@hofr.at> |
|---|---|
| Date | 2016-08-16 13:20 +0200 |
| Subject | Re: [PATCH 1149/1285] Replace numeric parameter like 0444 with macro |
| Message-ID | <s6Kzv-2mV-1@gated-at.bofh.it> |
On Tue, Aug 02, 2016 at 08:20:44PM +0800, 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 is actually a quite common issue - taking your example and generalizing
it into a simple coccinelle scanner shows aproximately 1400 cases for
module_param, module_param_array and module_param_named.
>
> Signed-off-by: Chuansheng Liu <chuansheng.liu@intel.com>
> Signed-off-by: Baole Ni <baolex.ni@intel.com>
> ---
> sound/core/oss/pcm_oss.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/sound/core/oss/pcm_oss.c b/sound/core/oss/pcm_oss.c
> index ebc9fdf..0ff0dd8 100644
> --- a/sound/core/oss/pcm_oss.c
> +++ b/sound/core/oss/pcm_oss.c
> @@ -53,11 +53,11 @@ static bool nonblock_open = 1;
> MODULE_AUTHOR("Jaroslav Kysela <perex@perex.cz>, Abramo Bagnara <abramo@alsa-project.org>");
> MODULE_DESCRIPTION("PCM OSS emulation for ALSA.");
> MODULE_LICENSE("GPL");
> -module_param_array(dsp_map, int, NULL, 0444);
> +module_param_array(dsp_map, int, NULL, S_IRUSR | S_IRGRP | S_IROTH);
as S_IRUSR | S_IRGRP | S_IROTH == S_IRUGO this (and the others below
could be simplfied
+module_param_array(dsp_map, int, NULL, S_IRUGO);
> MODULE_PARM_DESC(dsp_map, "PCM device number assigned to 1st OSS device.");
> -module_param_array(adsp_map, int, NULL, 0444);
> +module_param_array(adsp_map, int, NULL, S_IRUSR | S_IRGRP | S_IROTH);
> MODULE_PARM_DESC(adsp_map, "PCM device number assigned to 2nd OSS device.");
> -module_param(nonblock_open, bool, 0644);
> +module_param(nonblock_open, bool, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
for 0644 one could also use S_IWUSR | S_IRUGO which might be more redaable
here as well.
> MODULE_PARM_DESC(nonblock_open, "Don't block opening busy PCM devices.");
> MODULE_ALIAS_SNDRV_MINOR(SNDRV_MINOR_OSS_PCM);
> MODULE_ALIAS_SNDRV_MINOR(SNDRV_MINOR_OSS_PCM1);
thx!
hofrat
Back to top | Article view | linux.kernel
csiph-web