[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <50BF98F7.3030600@linux.vnet.ibm.com>
Date: Thu, 06 Dec 2012 00:26:55 +0530
From: "Srivatsa S. Bhat" <srivatsa.bhat@...ux.vnet.ibm.com>
To: "Srivatsa S. Bhat" <srivatsa.bhat@...ux.vnet.ibm.com>
CC: tglx@...utronix.de, peterz@...radead.org,
paulmck@...ux.vnet.ibm.com, rusty@...tcorp.com.au,
mingo@...nel.org, akpm@...ux-foundation.org, namhyung@...nel.org,
vincent.guittot@...aro.org, tj@...nel.org, oleg@...hat.com,
sbw@....edu, amit.kucheria@...aro.org, rostedt@...dmis.org,
rjw@...k.pl, wangyun@...ux.vnet.ibm.com,
xiaoguangrong@...ux.vnet.ibm.com, nikunj@...ux.vnet.ibm.com,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH v2 01/10] CPU hotplug: Provide APIs for "light" atomic
readers to prevent CPU offline
Replaying what Oleg wrote:
(add lkml)
> Replaying what Tejun wrote:
> Replacing get_online_cpus() w/ percpu_rwsem is great but this thread
> is about replacing preempt_disable with something finer grained and
> less heavy on the writer side
If only I understood why preempt_disable() is bad ;-)
OK, I guess "less heavy on the writer side" is the hint, and in the
previous email you mentioned that "stop_machine() itself is extremely
heavy".
Looks like, you are going to remove stop_machine() from cpu_down ???
> The problem seems that we don't have percpu_rwlock yet. It shouldn't
> be too difficult to implement, right?
>
Oh, I am not sure... unless you simply copy-and-paste the lglock code
and replace spinlock_t with rwlock_t.
We probably want something more efficient, but I bet we can't avoid
the barriers on the read side.
And somehow we should avoid the livelocks. Say, we can't simply add
the per_cpu_reader_counter, _read_lock should spin if the writer is
active. But at the same time _read_lock should be recursive.
Tejun, could you please send me mbox with this thread offlist?
[That should now be unnecessary, since the discussion can continue
on-list on this thread].
Oleg.
--
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