linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC 0/5] rcu: Introduce leaf_node_for_each_mask_possible_cpu() and its friend
@ 2016-12-09  8:48 Boqun Feng
  2016-12-09  8:48 ` [RFC 1/5] rcu: Introduce primitives to iterate mask bits in an RCU leaf node Boqun Feng
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Boqun Feng @ 2016-12-09  8:48 UTC (permalink / raw)
  To: linux-kernel
  Cc: Paul E. McKenney, Josh Triplett, Steven Rostedt,
	Mathieu Desnoyers, Lai Jiangshan

Hi Paul,

While reading the discussion at:

https://marc.info/?l=linux-kernel&m=148044253400769

I figured we might use this fact to save some extra checks in RCU core code,
currently we iterate over all the possible CPUs on a leaf node, check whether
they were masked in a certain mask and do something. However, given the fact
that the masks on a leaf node should always be sparse than the corresponding
part of cpu_possible_mask, we'd better iterate over all bits in a mask and
check whether the corresponding CPU is possible or not.

So I made this RFC, I did a simple build/boot/rcutorture test on my box with
SMP=4, nothing bad happens. Currently I'm waiting for the 0day and trying to
test this one a bigger system, in the meanwhile, looking forwards to any
comment and suggestion.

So thoughts?

Regards,
Boqun

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-12-11  0:06 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-09  8:48 [RFC 0/5] rcu: Introduce leaf_node_for_each_mask_possible_cpu() and its friend Boqun Feng
2016-12-09  8:48 ` [RFC 1/5] rcu: Introduce primitives to iterate mask bits in an RCU leaf node Boqun Feng
2016-12-09  8:48 ` [RFC 2/5] rcu: Use leaf_node_for_each_mask_possible_cpu() in RCU stall checking Boqun Feng
2016-12-09  8:48 ` [RFC 3/5] rcu: Use leaf_node_for_each_mask_possible_cpu() for ->expmask iteration Boqun Feng
2016-12-09  8:48 ` [RFC 4/5] rcu: Use leaf_node_for_each_mask_possible_cpu() in force_qs_rnp() Boqun Feng
2016-12-09  8:48 ` [RFC 5/5] rcu: Use leaf_node_for_each_mask_*() for leaf node online CPU iteration Boqun Feng
2016-12-09 23:49 ` [RFC 0/5] rcu: Introduce leaf_node_for_each_mask_possible_cpu() and its friend Paul E. McKenney
2016-12-10  0:45   ` Boqun Feng
2016-12-10  4:28     ` Paul E. McKenney
2016-12-10 13:36       ` Boqun Feng
2016-12-10 17:38         ` Paul E. McKenney
2016-12-11  0:06           ` Boqun Feng

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).