Messages in this thread | | | Subject | Re: [PATCH] sched: sched_clock() clocksource handling. | From | Daniel Walker <> | Date | Wed, 03 Jun 2009 07:58:08 -0700 |
| |
On Wed, 2009-06-03 at 12:36 +0900, Paul Mundt wrote: > On Tue, Jun 02, 2009 at 04:49:26AM -0700, Daniel Walker wrote: > > On Tue, 2009-06-02 at 16:54 +0900, Paul Mundt wrote: > > > unsigned long long __attribute__((weak)) sched_clock(void) > > > { > > > - return (unsigned long long)(jiffies - INITIAL_JIFFIES) > > > - * (NSEC_PER_SEC / HZ); > > > + unsigned long long time; > > > + struct clocksource *clock; > > > + > > > + rcu_read_lock(); > > > + clock = rcu_dereference(sched_clocksource); > > > + time = cyc2ns(clock, clocksource_read(clock)); > > > + rcu_read_unlock(); > > > + > > > + return time; > > > } > > > > My concerns with the locking here still stand. Nothing you've said or > > done bolsters the clocksource in modules argument. I think what your > > planning for sh clocksources seems very inelegant. I would imagine a > > better solution is out there. I'd prefer if you just leave sched_clock > > alone. > > > This is the first I've heard you mention locking concerns, and as usual > there is not enough technical content (or any, really) to go on to even > reply to this. Whether you consider my solution for sh clocksources > elegant or not is irrelevant, as I wasn't soliciting feedback, and it's a > problem that has to be dealt with regardless of whether it's a pretty one > or not.
I think maybe your not reading my emails .. I said there is unnessesary locking in sched_clock, and that it's fixing a problem that doesn't exist (i.e. clocksources in modules) .. You claim you want clocksources in modules because you have a useful case in sh, which I consider not very useful .. And your refusing to remove the locking, or that's how it seems. So I'd prefer you don't submit this code any longer. I don't think you know what your doing in this case.
This is not hand waving, and it is technical.
Daniel
| |