Messages in this thread | | | Date | Mon, 30 Nov 2009 23:02:11 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: [rfc] "fair" rw spinlocks |
| |
On Mon, 30 Nov 2009, Peter Zijlstra wrote:
> On Mon, 2009-11-30 at 22:12 +0100, Thomas Gleixner wrote: > > > I think the conversion Linus proposed is pretty feasible. I went > > through the read_lock sites and most of them are protecting function > > calls which we already use under rcu_read_lock() in other places like > > find_task* and thread or pid iterators. > > > > There are a few non obvious ones in signal.c and posix-cpu-timers.c > > (what a surprise) but nothing looks too scary. > > > > If nobody beats me I'm going to let sed loose on the kernel, lift the > > task_struct rcu free code from -rt and figure out what explodes. > > Things like sched.c:tg_set_bandwidth() take the tasklist_lock in > read-mode to exclude tasks being added concurrently to avoid > sched_rt_can_attach() races with tg_has_rt_tasks().
Yeah, forgot to mention sched.c, but that's solvable
> Possibly the cgroup stuff has a smaller lock to use for this.
Worth checking.
Thanks,
tglx
| |