Andi Kleen wrote: [Fri Sep 09 2005, 10:17:40AM EDT] > On Thursday 08 September 2005 18:37, Tom Rini wrote: > > It can be handy in some situations to have run trap_init() sooner than the > > generic code does. In order to do this on x86_64 we need to add a custom > > early_setup_per_cpu_areas() call as well. > > The patch is totally broken and causes crash even under light load > (just found it after a lengthy binary search) > > > > > +void __init early_setup_per_cpu_areas(void) > > +{ > > + static char cpu0[PERCPU_ENOUGH_ROOM] __cacheline_aligned > > + __attribute__ ((aligned (SMP_CACHE_BYTES))); > > The original code does > > /* Copy section for each CPU (we discard the original) */ > size = ALIGN(__per_cpu_end - __per_cpu_start, SMP_CACHE_BYTES); > #ifdef CONFIG_MODULES > if (size < PERCPU_ENOUGH_ROOM) > size = PERCPU_ENOUGH_ROOM; > #endif > > > perhaps end-start is larger than PERCPU_ENOUGH_ROOM ? (using defconfig) > > Dropped from my tree for now. > > -Andi Andi:
Sorry about that. I originally intended this for KGDB only. The hardcoded PERCPU_ENOUGH_ROOM value is dangerous and could be the issue. Let me take a look at this. bob - 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/