From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kip Macy Subject: Re: netif_suspend / resume Date: Sat, 21 May 2005 16:08:19 -0700 Message-ID: References: <428E650E.3070409@diku.dk> Reply-To: Kip Macy Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <428E650E.3070409@diku.dk> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Jacob Gorm Hansen Cc: Ian Pratt , Xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org If you're not averse to GDB you can use the gdbserver to look at the state. If it is calling domain_crash you can enable coredump. Evidently some interface has changed that has broken gdbserver for the moment, but once I finish with -testing this weekend I'll probably get to submitting a patch. -Kip On 5/20/05, Jacob Gorm Hansen wrote: > Ian Pratt wrote: >=20 > > The guest keeps its own shadow copy of the state as regards which pfn's > > it has queued as {free, rx, tx}bufs. After a resume it 'gathers' those > > pages and requeues the free and tx bufs to the new backend. > > > > We currently junk any outstanding rxbufs, but in reality there almost > > never are any as the vif interrupt will be serviced before the suspend > > thread gets to run. When we switch over to grant tables we'll be able t= o > > process these on the destination too, as we'll know the memory has been > > syncronized. It won't make difference, though. >=20 > With the latest unstable, I am trying to do this: >=20 > __cli(); >=20 > netif_suspend(); > time_suspend(); > ctrl_if_suspend(); > irq_suspend(); >=20 >=20 > irq_resume(); > ctrl_if_resume(); > time_resume(); > netif_resume(); >=20 >=20 > __sti(); >=20 > (The domU has no blockdev support compiled in). >=20 > But I immediately crash trying to reference 0x050d4286 in > network_tx_buf_gc(), at the last instruction in the disasm below: >=20 > c0222e20 : > c0222e20: 55 push %ebp > c0222e21: 57 push %edi > c0222e22: 56 push %esi > c0222e23: 53 push %ebx > c0222e24: 83 ec 04 sub $0x4,%esp > c0222e27: 8b 44 24 18 mov 0x18(%esp),%eax > c0222e2b: 89 04 24 mov %eax,(%esp) > c0222e2e: 89 c6 mov %eax,%esi > c0222e30: 81 c6 20 02 00 00 add $0x220,%esi > c0222e36: 83 be 88 00 00 00 02 cmpl $0x2,0x88(%esi) > c0222e3d: 74 06 je c0222e45 > c0222e3f: 58 pop %eax > c0222e40: 5b pop %ebx > c0222e41: 5e pop %esi > c0222e42: 5f pop %edi > c0222e43: 5d pop %ebp > c0222e44: c3 ret > c0222e45: 8b 56 74 mov 0x74(%esi),%edx > c0222e48: 90 nop > c0222e49: 8d b4 26 00 00 00 00 lea 0x0(%esi),%esi > c0222e50: 8b 7a 08 mov 0x8(%edx),%edi > c0222e53: f0 83 44 24 00 00 lock addl $0x0,0x0(%esp) > c0222e59: 8b 5e 6c mov 0x6c(%esi),%ebx > c0222e5c: 39 fb cmp %edi,%ebx > c0222e5e: 74 42 je c0222ea2 > c0222e60: 0f b6 c3 movzbl %bl,%eax > c0222e63: 8b 6e 74 mov 0x74(%esi),%ebp > c0222e66: 8d 04 40 lea (%eax,%eax,2),%eax > c0222e69: c1 e0 02 shl $0x2,%eax > c0222e6c: 8b 96 a8 00 00 00 mov 0xa8(%esi),%edx > c0222e72: 01 e8 add %ebp,%eax > c0222e74: 0f b7 40 10 movzwl 0x10(%eax),%eax > c0222e78: 8b 8c 86 a8 00 00 00 mov 0xa8(%esi,%eax,4),%ecx > c0222e7f: 89 94 86 a8 00 00 00 mov %edx,0xa8(%esi,%eax,4) > c0222e86: 89 86 a8 00 00 00 mov %eax,0xa8(%esi) > c0222e8c: ff 89 84 00 00 00 decl 0x84(%ecx) > ^^^^^^^^^^ > Any hints for debugging this? >=20 > thanks, > Jacob >=20 > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel >