Re: [PATCH] sched: Support current clocksource handling infallback sched_clock().

From: John Stultz
Date: Thu May 28 2009 - 13:07:52 EST


On Fri, 2009-05-29 at 01:40 +0900, Paul Mundt wrote:
> On Thu, May 28, 2009 at 06:32:09PM +0200, Peter Zijlstra wrote:
> > On Thu, 2009-05-28 at 09:13 -0700, Daniel Walker wrote:
> > > On Thu, 2009-05-28 at 14:59 +0200, Peter Zijlstra wrote:
> > > > CPU0 CPU1
> > > >
> > > > clock = ACCESS_ONCE(sched_clocksource);
> > > >
> > > > unload module
> > > > clocksource_unregister()
> > > > sched_clocksource = jiffies
> > > > unmap data/text
> > > >
> > > > cyc2ns(clock, clocksource_read(clock)) <--- fireworks
> > > >
> > > >
> > >
> > > Do any module based clocksources even exist right now?
> > > clocksource_unregister only seems to be used 3 times..
> >
> > Good point, it appears its not even exported.
> >
> > Thomas mentioned modules, I assumed.
> >
> The drivers/clocksource/ drivers in theory could be modular anyways.
> Handling this transition properly is at least one less barrier to modular
> clocksources, so I think it's progress regardless. I don't remember what
> all of the other issues were though, John probably remembers.

Yea. Its always been something I'd want to have as a capability, but we
haven't actually had a user of. I still think its something we should
allow, even if there aren't upstream users, as if you only have to
backport a module to an old distro kernel to get some oddball bit of
hardware working, that can be really useful.

So I think the locking fix is the way to go.

thanks
-john



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/