From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:52684) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RDAbR-0000b0-RX for qemu-devel@nongnu.org; Mon, 10 Oct 2011 03:48:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RDAbQ-0006Gd-LV for qemu-devel@nongnu.org; Mon, 10 Oct 2011 03:48:49 -0400 Received: from fmmailgate03.web.de ([217.72.192.234]:35392) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RDAbQ-0006GO-A5 for qemu-devel@nongnu.org; Mon, 10 Oct 2011 03:48:48 -0400 Message-ID: <4E92A35E.2070207@web.de> Date: Mon, 10 Oct 2011 09:48:46 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <4E8ECA91.8040409@cn.fujitsu.com> <4E8ED167.1000705@siemens.com> <20111008151622.GA17181@amd.home.annexia.org> <4E916035.5050906@web.de> <20111009102338.GN16799@amd.home.annexia.org> <4E92568E.2010507@cn.fujitsu.com> <4E929618.4040403@web.de> <4E9297CB.8010303@cn.fujitsu.com> <4E929848.6030105@web.de> <4E929BFC.20406@cn.fujitsu.com> <4E929D38.5050008@web.de> <4E92A315.9040200@cn.fujitsu.com> In-Reply-To: <4E92A315.9040200@cn.fujitsu.com> Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigA7C8E8954FB0DB6726F7F0D1" Sender: jan.kiszka@web.de Subject: Re: [Qemu-devel] [Question] dump memory when host pci device is used by guest List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Wen Congyang Cc: Luiz Capitulino , "Richard W.M. Jones" , qemu-devel This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigA7C8E8954FB0DB6726F7F0D1 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 2011-10-10 09:47, Wen Congyang wrote: > At 10/10/2011 03:22 PM, Jan Kiszka Write: >> On 2011-10-10 09:17, Wen Congyang wrote: >>> At 10/10/2011 03:01 PM, Jan Kiszka Write: >>>> On 2011-10-10 08:59, Wen Congyang wrote: >>>>> At 10/10/2011 02:52 PM, Jan Kiszka Write: >>>>>> On 2011-10-10 04:21, Wen Congyang wrote: >>>>>>> At 10/09/2011 06:23 PM, Richard W.M. Jones Write: >>>>>>>> On Sun, Oct 09, 2011 at 10:49:57AM +0200, Jan Kiszka wrote: >>>>>>>>> As explained in the other replies: It is way more future-proof = to use an >>>>>>>>> interface for this which was designed for it (remote gdb) inste= ad of >>>>>>>>> artificially relaxing reasonable constraints of the migration m= echanism >>>>>>>>> plus having to follow that format with the post-processing tool= =2E >>>>>>>> >>>>>>>> Any interface that isn't "get this information off my production= >>>>>>>> server *now*" so that I can get the server restarted, and send i= t to >>>>>>>> an expert to analyse -- is a poor interface, whether it was desi= gned >>>>>>>> like that or not. Perhaps we don't have the right interface at = all, >>>>>>>> but remote gdb is not it. >>>>>>> >>>>>>> What about the following idea? >>>>>>> >>>>>>> Introduce a new monitor command named dump, and this command acce= pts a filename. >>>>>>> We can use almost all migration's code. We use this command to du= mp guest's >>>>>>> memory, so there is no need to check whether the guest has a unmi= gratable device. >>>>>> >>>>>> I do not want to reject this proposal categorically, but I would l= ike to >>>>>> see the gdb path fail /wrt essential requirements first. So far I = don't >>>>>> see it would. >>>>> >>>>> =91gdb path fail /wrt essential requirements=92 >>>>> >>>>> what does it mean? >>>> >>>> That you explain why reading reading memory and processor states via= the >>>> remote gdb interface and dumping it into a proper core file cannot b= e >>>> made working for you. >>> >>> First, I think crash can not analyze such core file. But it is not ve= ry important. >>> >>> What is remote gdb interface? >> >> man qemu -> gdb. >> >>> Do you mean that: the supporter uses gdb from another machine >> >> Or locally. There are various transports possible. >> >>> to connect to customer's machine and get the data? If so, this way ca= n not be >>> used when the customer needs to dump the guest's memory automatically= when watchdog timeouts. >> >> It is just another channel that can conceptually be used like the >> monitor, by a management app like libvirt, directly or indirectly via = a >> scripted gdb frontend, or also by a human who wants to save some ongoi= ng >> gdb session for later analysis. This dual use make such an approach th= e >> preferred one. >=20 > Is the following is right? >=20 > 1. execute the monitor command 'gdbserver' > 2. run gdb and then 'target remote :1234' Yep. >=20 > But, unfortunately, the monitor command gdbserver does not exit when we= use json to connect to monitor. You mean via human-monitor-command (gdbserver is not a qmp command)? Would be a bug. Jan --------------enigA7C8E8954FB0DB6726F7F0D1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk6So14ACgkQitSsb3rl5xTTxgCeNYgH3qKjE0gFJBbkdAjWQkwu mNUAoLtCiq8wwEto3LCkhqq+GtzGdkie =GC8m -----END PGP SIGNATURE----- --------------enigA7C8E8954FB0DB6726F7F0D1--