[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-ia64-devel] stack corruption creating idle domain
On Wed, 2006-01-25 at 09:54 +0800, Tian, Kevin wrote: > I don't quite catch you in above sentence. What's the problematic > value for r13 in your case? Ideally r13 is initialized to init_task in > very early setup in head.S. Then later it's referred further as > idle_vcpu[0]. It's harmless to clear switch stack and pt_regs area for > idle vcpu0 at that point. So you may need to figure out where r13 is > getting changed before that point. Hi Kevin, I don't have the actual values right now, but if this doesn't make sense I'll do a better job of documenting the exact values tomorrow. As an example, lets say r13 is 0x1000 and r12 is 0x2000. The memset in init_switch_stacks would be something like memset(0x1d00, 0, 0x400), therefore clearing anything on the stack. When we get back from the memset, we pull a pointer off the stack (which is now zero) and page fault storing to an offset from the zero'd pointer. So it seems like maybe the size of the structure used to setup r13 doesn't match what we're using later. Does that make more sense? Thanks, Alex _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |