From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anders Kaseorg Subject: Re: Serial console hangs with Linux 2.6.20 HVM guest Date: Thu, 05 Feb 2009 14:34:06 -0500 Message-ID: <1233862446.5676.28.camel@balanced-tree> References: <1233800599.5398.0.camel@balanced-tree> <18827.7191.646173.99255@mariner.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <18827.7191.646173.99255@mariner.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Ian Jackson Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On Thu, 2009-02-05 at 17:04 +0000, Ian Jackson wrote: > handle SIGUSR2 nostop noprint > break serial_ioport_write if (addr&7)=3D=3D1 > cont > * do whatever it is that makes the VM stuck > * when it next stops it will be in serial_ioport_write setting > the IER. So > print val > print *s This breakpoint is triggered for all messages printed by the kernel, which always showed up with no delay; but it is only occasionally triggered for strings printed by userspace, even after forcing those strings to show up by sending keystrokes. Here is one of the latter cases. (I am sitting at a =E2=80=9Croot@andersk-intrepid:~# =E2=80=9D prompt, repeatedly pressing E= nter. Each keypress causes the previous prompt to show up, followed by a newline, and the current prompt is stalled.) Breakpoint 1, serial_ioport_write (opaque=3D0xb342e0, addr=3D1, val=3D5) at /home/andersk/xen-3-3.3.1/debian/build/build-utils_amd64/tools/ioe= mu-dir/hw/serial.c:413 413 { (gdb) print val $5 =3D 5 (gdb) print *s $6 =3D {divider =3D 1, rbr =3D 0 '\0', thr =3D 32 ' ', tsr =3D 32 ' ', ie= r =3D 5 '\005', iir =3D 193 '=EF=BF=BD',=20 lcr =3D 19 '\023', mcr =3D 11 '\v', lsr =3D 96 '`', msr =3D 176 '=EF=BF= =BD', scr =3D 0 '\0', fcr =3D 129 '\201',=20 thr_ipending =3D 1, irq =3D 0xb1d610, chr =3D 0xb122a0, last_break_enab= le =3D 0, base =3D 0,=20 it_shift =3D 0, baudbase =3D 115200, tsr_retry =3D 0, last_xmit_ts =3D = 380482341502, recv_fifo =3D { data =3D '\r' , count =3D 0 '\0', itl =3D 8 '\b', t= ail =3D 0 '\0',=20 head =3D 0 '\0'}, xmit_fifo =3D {data =3D "repid:~# rsk-int", count =3D= 0 '\0', itl =3D 0 '\0',=20 tail =3D 9 '\t', head =3D 9 '\t'}, fifo_timeout_timer =3D 0xb31ad0, t= imeout_ipending =3D 0,=20 transmit_timer =3D 0xb31b00, char_transmit_time =3D 78120, poll_msl =3D= -1,=20 modem_status_poll =3D 0xb327e0} Anders