Messages in this thread | | | Date | Tue, 16 Aug 2016 11:08:45 +0000 | From | Nicholas Mc Guire <> | Subject | Re: [PATCH 1149/1285] Replace numeric parameter like 0444 with macro |
| |
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
| |