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] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 08 Nov 2014 08:13:37 -0800
From:	Joe Perches <joe@...ches.com>
To:	Omar Sandoval <osandov@...ndov.com>
Cc:	Chris Mason <clm@...com>, Josef Bacik <jbacik@...com>,
	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
	Josh Triplett <josh@...htriplett.org>,
	Steven Rostedt <rostedt@...dmis.org>,
	Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
	linux-kernel@...r.kernel.org, linux-btrfs@...r.kernel.org
Subject: Re: [PATCH v6] Move BTRFS RCU string to common library

On Sat, 2014-11-08 at 00:46 -0800, Omar Sandoval wrote:
> The RCU-friendly string API used internally by BTRFS is generic enough for
> common use. This doesn't add any new functionality, but instead just moves the
> code and documents the existing API.

Some more trivia, can be updated later if desired.

> diff --git a/include/linux/rcustring.h b/include/linux/rcustring.h
> new file mode 100644
[]
> +
> +/**
> + * printk_in_rcu() - printk in an RCU read-side critical section

It'd be nice to show the arguments for kernel-doc here

> + */
> +#define printk_in_rcu(fmt, ...)			\
> +	do {					\
> +		rcu_read_lock();		\
> +		printk(fmt, __VA_ARGS__);	\

This should use ##__VA_ARGS__ to allow the
compiler to elide the comma when using

	printk_in_rcu("Hello World!");

> +		rcu_read_unlock();		\
> +	} while (0)
> +
> +/**
> + * printk_ratelimited_in_rcu() - printk_ratelimited in an RCU read-side critical
> + * section
> + */
> +#define printk_ratelimited_in_rcu(fmt, ...)		\
> +	do {						\
> +		rcu_read_lock();			\
> +		printk_ratelimited(fmt, __VA_ARGS__);	\
> +		rcu_read_unlock();			\
> +	} while (0)
> +
> +#endif

Here too

--
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