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]
Message-ID: <1254335726.9892.1395687950937.JavaMail.zimbra@efficios.com>
Date:	Mon, 24 Mar 2014 19:05:50 +0000 (UTC)
From:	Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
To:	Monam Agarwal <monamagarwal123@...il.com>
Cc:	rostedt@...dmis.org, keun-o park <keun-o.park@...driver.com>,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] kernel: Use RCU_INIT_POINTER(x, NULL) in tracepoint.c

----- Original Message -----
> From: "Monam Agarwal" <monamagarwal123@...il.com>
> To: "mathieu desnoyers" <mathieu.desnoyers@...icios.com>, rostedt@...dmis.org, "keun-o park"
> <keun-o.park@...driver.com>, linux-kernel@...r.kernel.org
> Sent: Sunday, March 23, 2014 3:09:08 PM
> Subject: [PATCH] kernel: Use RCU_INIT_POINTER(x, NULL) in tracepoint.c
> 
> This patch replaces rcu_assign_pointer(x, NULL) with RCU_INIT_POINTER(x,
> NULL)
> 
> The rcu_assign_pointer() ensures that the initialization of a structure
> is carried out before storing a pointer to that structure.
> And in the case of the NULL pointer, there is no structure to initialize.
> So, rcu_assign_pointer(p, NULL) can be safely converted to
> RCU_INIT_POINTER(p, NULL)

This change makes sense. However, it would conflict with the changes
I'm proposing for 3.15, which are making this patch obsolete. This would
cause merging headaches for Steven. So it's his call.

Thanks,

Mathieu

> 
> Signed-off-by: Monam Agarwal <monamagarwal123@...il.com>
> ---
>  kernel/tracepoint.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kernel/tracepoint.c b/kernel/tracepoint.c
> index 031cc56..72dfa96 100644
> --- a/kernel/tracepoint.c
> +++ b/kernel/tracepoint.c
> @@ -291,7 +291,7 @@ static void disable_tracepoint(struct tracepoint *elem)
>  
>  	if (static_key_enabled(&elem->key))
>  		static_key_slow_dec(&elem->key);
> -	rcu_assign_pointer(elem->funcs, NULL);
> +	RCU_INIT_POINTER(elem->funcs, NULL);
>  }
>  
>  /**
> --
> 1.7.9.5
> 
> 

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ