[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XenPPC] [PATCH] Linker script causes SMP memory corruption
Ahh, this stuff is so wonky it is so easy to miss the _real_ reason :) On Aug 19, 2006, at 2:22 AM, Amos Waterland wrote: To understand the context for this patch, observe that the following isthe case in stock Xen/PPC: $ nm xen-syms | egrep ' per_cpu__|__per_cpu' | sort 000000000044c680 d per_cpu__domain_shuttingdown 000000000044c688 D per_cpu__mc_state 000000000044c700 d per_cpu__t_timer ... 000000000045cc80 D per_cpu__tlbflush_time 000000000045d2b0 A __per_cpu_data_end 000000000045d2b0 A __per_cpu_start 0000000000460000 A __per_cpu_end So what is actually happening is that your .data.percpu sections are getting sucked up by the linker before the section description we actually want to be used. This is the correct fix (possible MUA mangling): diff -r 539a1e666982 xen/arch/powerpc/xen.lds.S --- a/xen/arch/powerpc/xen.lds.S Fri Aug 18 14:07:50 2006 -0400 +++ b/xen/arch/powerpc/xen.lds.S Sun Aug 20 10:57:46 2006 -0400 @@ -107,7 +107,7 @@ SECTIONS PROVIDE (__fini_array_end = .); .data : { - *(.data .data.* .gnu.linkonce.d.*) + *(.data .gnu.linkonce.d.*) SORT(CONSTRUCTORS) }this .data.* catch-all got your sections before the one we define even had a chance :) I'll commit this fix when I fix everything else I broke :-D -JX _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |