Re: [RFC][PATCH] request_irq(...,SA_BOOTMEM);

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 05 Jun 2006 17:08:29 +1000
Benjamin Herrenschmidt <[email protected]> wrote:

> On Mon, 2006-06-05 at 15:40 +1000, Benjamin Herrenschmidt wrote:
> > In various places, architectures need to request interrupts early during
> > boot. Before slab is initialized typically. We used to have all sorts of
> > arch hacks to do so, which ended up being turned into something like:
> 
>  ..../.... (skip workaround based on bootmem)
> 
> Hrm... I'm running into more problems with some of my powerpc irq
> cleanups related to slab not being initialized.
> 
> Why do we do it so late ? I don't see any reason. A bunch of stuff like
> init_IRQ(), time_init() etc...end up being called without a working slab
> (not even GFP_ATOMIC). Damn, even console_init().
> 
> What are the fundamental reasons, if any, why we initialize the slab so
> late ?

I suspect because it's been like that since for ever, and any time we touch
anything in there, bad things happen.

> ...
>
> I'm sure there is a subtle sneaky dependency, I would suspect something
> to do with the scheduler and/or the cpumask/numa infos, whatever, but I
> think we should really consider solving that.

I don't immediately see anything in there which would prevent us from
running these:

	vfs_caches_init_early();
	cpuset_init_early();
	mem_init();
	kmem_cache_init();
	setup_per_cpu_pageset();

just after sort_main_extable().

But things will explode ;)

I suggest you run up a patch, test it on whatever machines you have, send
it over and I'll do the same.  But please make sure it has a config option
to restore the old sequence for now.  a) So people can work out that it was
this patch which broke things and b) so it doesn't adversely affect testing
of other things too much.

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux