lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 2 Aug 2016 09:24:59 -0400
From:	Steven Rostedt <rostedt@...dmis.org>
To:	Baole Ni <baolex.ni@...el.com>
Cc:	paulmck@...ux.vnet.ibm.com, josh@...htriplett.org,
	mathieu.desnoyers@...icios.com, jiangshanlai@...il.com,
	m.chehab@...sung.com, gregkh@...uxfoundation.org,
	m.szyprowski@...sung.com, kyungmin.park@...sung.com,
	k.kozlowski@...sung.com, linux-kernel@...r.kernel.org,
	chuansheng.liu@...el.com, mhocko@...e.com, tglx@...utronix.de,
	vkuznets@...hat.com, pmladek@...e.com, tj@...nel.org,
	jpoimboe@...hat.com
Subject: Re: [PATCH 1072/1285] Replace numeric parameter like 0444 with
 macro

On Tue,  2 Aug 2016 20:13:53 +0800
Baole Ni <baolex.ni@...el.com> 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.
> 

NACK!

I find 0444 more readable than S_IRUSR | S_IRGRP | S_IROTH.

-- Steve

> Signed-off-by: Chuansheng Liu <chuansheng.liu@...el.com>
> Signed-off-by: Baole Ni <baolex.ni@...el.com>
> ---
>  kernel/rcu/tree.c | 28 ++++++++++++++--------------
>  1 file changed, 14 insertions(+), 14 deletions(-)
> 
> diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
> index c7f1bc4..d93a882 100644
> --- a/kernel/rcu/tree.c
> +++ b/kernel/rcu/tree.c
> @@ -114,13 +114,13 @@ LIST_HEAD(rcu_struct_flavors);
>  
>  /* Dump rcu_node combining tree at boot to verify correct setup. */
>  static bool dump_tree;
> -module_param(dump_tree, bool, 0444);
> +module_param(dump_tree, bool, S_IRUSR | S_IRGRP | S_IROTH);
>  /* Control rcu_node-tree auto-balancing at boot time. */
>  static bool rcu_fanout_exact;
> -module_param(rcu_fanout_exact, bool, 0444);
> +module_param(rcu_fanout_exact, bool, S_IRUSR | S_IRGRP | S_IROTH);
>  /* Increase (but not decrease) the RCU_FANOUT_LEAF at boot time. */
>  static int rcu_fanout_leaf = RCU_FANOUT_LEAF;
> -module_param(rcu_fanout_leaf, int, 0444);
> +module_param(rcu_fanout_leaf, int, S_IRUSR | S_IRGRP | S_IROTH);
>  int rcu_num_lvls __read_mostly = RCU_NUM_LVLS;
>  /* Number of rcu_nodes at specified level. */
>  static int num_rcu_lvl[] = NUM_RCU_LVL_INIT;
> @@ -166,27 +166,27 @@ static int kthread_prio = CONFIG_RCU_KTHREAD_PRIO;
>  #else /* #ifdef CONFIG_RCU_KTHREAD_PRIO */
>  static int kthread_prio = IS_ENABLED(CONFIG_RCU_BOOST) ? 1 : 0;
>  #endif /* #else #ifdef CONFIG_RCU_KTHREAD_PRIO */
> -module_param(kthread_prio, int, 0644);
> +module_param(kthread_prio, int, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
>  
>  /* Delay in jiffies for grace-period initialization delays, debug only. */
>  
>  #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT
>  static int gp_preinit_delay = CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT_DELAY;
> -module_param(gp_preinit_delay, int, 0644);
> +module_param(gp_preinit_delay, int, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
>  #else /* #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT */
>  static const int gp_preinit_delay;
>  #endif /* #else #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_PREINIT */
>  
>  #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_INIT
>  static int gp_init_delay = CONFIG_RCU_TORTURE_TEST_SLOW_INIT_DELAY;
> -module_param(gp_init_delay, int, 0644);
> +module_param(gp_init_delay, int, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
>  #else /* #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_INIT */
>  static const int gp_init_delay;
>  #endif /* #else #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_INIT */
>  
>  #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP
>  static int gp_cleanup_delay = CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP_DELAY;
> -module_param(gp_cleanup_delay, int, 0644);
> +module_param(gp_cleanup_delay, int, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
>  #else /* #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP */
>  static const int gp_cleanup_delay;
>  #endif /* #else #ifdef CONFIG_RCU_TORTURE_TEST_SLOW_CLEANUP */
> @@ -396,24 +396,24 @@ static long blimit = 10;	/* Maximum callbacks per rcu_do_batch. */
>  static long qhimark = 10000;	/* If this many pending, ignore blimit. */
>  static long qlowmark = 100;	/* Once only this many pending, use blimit. */
>  
> -module_param(blimit, long, 0444);
> -module_param(qhimark, long, 0444);
> -module_param(qlowmark, long, 0444);
> +module_param(blimit, long, S_IRUSR | S_IRGRP | S_IROTH);
> +module_param(qhimark, long, S_IRUSR | S_IRGRP | S_IROTH);
> +module_param(qlowmark, long, S_IRUSR | S_IRGRP | S_IROTH);
>  
>  static ulong jiffies_till_first_fqs = ULONG_MAX;
>  static ulong jiffies_till_next_fqs = ULONG_MAX;
>  static bool rcu_kick_kthreads;
>  
> -module_param(jiffies_till_first_fqs, ulong, 0644);
> -module_param(jiffies_till_next_fqs, ulong, 0644);
> -module_param(rcu_kick_kthreads, bool, 0644);
> +module_param(jiffies_till_first_fqs, ulong, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
> +module_param(jiffies_till_next_fqs, ulong, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
> +module_param(rcu_kick_kthreads, bool, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
>  
>  /*
>   * How long the grace period must be before we start recruiting
>   * quiescent-state help from rcu_note_context_switch().
>   */
>  static ulong jiffies_till_sched_qs = HZ / 20;
> -module_param(jiffies_till_sched_qs, ulong, 0644);
> +module_param(jiffies_till_sched_qs, ulong, S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
>  
>  static bool rcu_start_gp_advanced(struct rcu_state *rsp, struct rcu_node *rnp,
>  				  struct rcu_data *rdp);

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ