Re: [PATCH 14/23] clocksource: increase initcall priority

From: Ingo Molnar
Date: Wed Jan 31 2007 - 12:12:44 EST



* Daniel Walker <dwalker@xxxxxxxxxx> wrote:

> On Wed, 2007-01-31 at 12:50 +0100, Ingo Molnar wrote:
> > * Daniel Walker <dwalker@xxxxxxxxxx> wrote:
> >
> > > -module_init(init_acpi_pm_clocksource);
> > > +/*
> > > + * This clocksource is removed from the clocksource_initcall
> > > + * macro since it's mandatory for it to be in fs_initcall as the
> > > + * highest initcall level, or else it doesn't work properly with
> > > + * it's PCI fix ups.
> > > + */
> > > +fs_initcall(init_acpi_pm_clocksource);
> >
> > ugh - this bit looks quite interesting.
> >
> > what's the purpose of this patch? Switching to high-res timers
> > should be done late in the bootup - in case there's a problem it's
> > more debuggable, etc.
>
> The timekeeping code, and hrt/dynamic tick both wait till after boot
> up to switch to high res mode ..

again, let me repeat the question: what's the purpose of this (whole!)
patch. Not just of this chunk - the whole patch. You change around
initcall levels - why? It makes no sense to me. The explanation in the
patch header makes no sense to me.

Please if possible try to build clear arguments: first outlining "this
is how it worked before: <X>", then outlining "this is how it will work
after my change: <Y>", and then maybe a small blurb about "Y is better
than X, because: <Z>". That X, Y, Z analysis is what is needed to accept
a patch.

> The specific code block you commented on above was added cause acpi_pm
> has special pci fixups that don't function properly earlier in boot
> up. So it can't be arbitrarily raised to order in the initcall
> sequence ..

i think you misunderstood my comment. In the chunk above you used
fs_initcall() initcall instead of clocksource_initcall(). (Which is
funny even ignoring the bad hack that clocksource_initcall is defined to
fs_initcall.)

Ingo
-
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/