RE: [PATCH] SN2 user-MMIO CPU migration

From: Chen, Kenneth W <kenneth.w.chen_at_intel.com>
Date: 2006-01-26 10:56:54
Brent Casavant wrote on Wednesday, January 25, 2006 3:10 PM
> On Wed, 25 Jan 2006, Brent Casavant wrote:
> 
> > Hmm.  I have only scant evidence to go on from the panic output,
> > but it looks like "current" (r13) is not equal to the value of "next"
> > by the time we get into sn_migrate().  One example run apparently
> > has current=e0000030079d8000, next=e000003015990000.
> 
> Got it!  We're context switching.  "next" became "current".  No
> telling what on earth "next's next" was.  So after calling
> ia64_switch_to(next), I have to refer to "current" in order to
> access what was "next" before the call.  My brain's all knotted up.

Oh my gosh, what a nasty bug !!  Thanks for finding it. "next's next"
in the "next" context is the task that "next" was previously context
switched to.  Enough mind-boggling wording :-(

p1 switch to p2, then switch to p3 and p3 switched to p1, after
ia64_switch_to, p1 next is pointing to p2.  The kernel would die and
fall flat on its face in no time.  I guess I'm overly lucky by not
deriving anything pointer value read from thread_info->cpu/last_cpu.

- Ken

-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Thu Jan 26 10:57:56 2006

This archive was generated by hypermail 2.1.8 : 2006-01-26 10:58:13 EST