[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] current not very current (vs curr_vcpu)



Hi,

This on xen 4.0. 

I noticed while debugging something that current is not pointing to the
current vcpu upon serial interrupt. The regs->SP clearly shows 64bit dom0
stack, guest_mode(regs) returns 1, but current is pointing
to idle vcpu. I'm not able to figure how this is possible. I can come up
with scenario where dom0.vcpu yields cpu to idle vcpu in which case 
curr_vcpu will point to dom0.vcpu and current to idle vcpu. But in that
case guest_mode(regs) will be false, and regs.SP will show hyp stack.
Correct?

Am I correct that if guest_mode() then current should always point to 
guest vcpu? If yes, then I will debug this further.

Here's what I see in ns16550_interrupt: 
      regs.SP: ffffffff8041bf50  (my 64bit dom0 stack)
      regs.IP: ffffffff800053aa (dom0 return from hypercall)
      regs: ffff82c48030ff28 (hyp cpu 0 stack)
      SP in ns16550_interrupt(): ffff82c48030fd50 (hyp stack again)
      guest_mode == 1
      current == idle domain ??????

thanks in advance,
Mukesh


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.