Messages in this thread | | | Date | Tue, 10 May 2005 23:49:18 +0200 | From | Andi Kleen <> | Subject | Re: [BUG][Resend] 2.6.12-rc3-mm3: Kernel BUG at "mm/slab.c":1219 [update] |
| |
On Tue, May 10, 2005 at 02:44:47PM -0700, Christoph Lameter wrote: > On Tue, 10 May 2005, Andi Kleen wrote: > > > Better just add the section to x86-64. Should be easy by copying the > > change from the i386 patch. > > Something like this? > > Index: linux-2.6.11/arch/x86_64/kernel/vmlinux.lds.S > =================================================================== > --- linux-2.6.11.orig/arch/x86_64/kernel/vmlinux.lds.S 2005-05-10 13:35:24.000000000 -0700 > +++ linux-2.6.11/arch/x86_64/kernel/vmlinux.lds.S 2005-05-10 13:44:26.000000000 -0700 > @@ -42,6 +42,13 @@ SECTIONS > CONSTRUCTORS > } > > + . = ALIGN(32);
This should be . = ALIGN(CONFIG_X86_L1_CACHE_BYTES)
It was wrong on i386 already btw, which needs the same.
> + .data.cacheline_aligned : { (.data.cacheline_aligned) } > + > + /* Rarely changed data like cpu maps */ > + . = ALIGN(4096);
Does it really need an 4096 byte alignment? That seems like a waste of memory. Cache line alignment should be enough.
> + .data.mostly_readonly : { *(.data.mostly_readonly) } > + > _edata = .; /* End of data section */ > > __bss_start = .; /* BSS */ > > > Ideally it would be asm-generic/vmlinux.lds and cover everybody... > > Hmm.. Add a definition for ALIGNED_DATA ?
Thinking about it again there is no portable way to do the cacheline alignment yet, so drop that suggestion please.
-Andi > - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |