From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=33369 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Pt4gP-0006CZ-T8 for qemu-devel@nongnu.org; Fri, 25 Feb 2011 15:54:38 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Pt4gO-0005Nw-GD for qemu-devel@nongnu.org; Fri, 25 Feb 2011 15:54:37 -0500 Received: from mail-ww0-f53.google.com ([74.125.82.53]:60132) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Pt4gO-0005Nl-3L for qemu-devel@nongnu.org; Fri, 25 Feb 2011 15:54:36 -0500 Received: by wwb17 with SMTP id 17so2848178wwb.10 for ; Fri, 25 Feb 2011 12:54:34 -0800 (PST) Message-ID: <4D681705.9090100@gmail.com> Date: Fri, 25 Feb 2011 22:54:29 +0200 From: vagran MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] x86_64 debugging while in 32-bit mode List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hi, I have a problem with debugging 64-bit emulation using Qemu GDB stub. The problem is that Qemu always sends x86_64 registers set disregarding current actual mode of an emulated CPU. It results in error message in GDB - "Remote 'g' packet reply is too long: ...". Yes, I understand that in case I will execute "set architecture i386:x86-64:intel" command it will show me correct registers content. But the problem is that in such case it will incorrectly try to disassemble the code and unwind the stack - it will interpret it as 64-bit while it is actually 32-bit. In my understanding Qemu should dynamically change the format of "g" and "G" packets depending on current CPU mode. On the other end, user could change manually GDB current architecture by corresponding "set architecture" command. Please correct me, if I am not right. May be there is some existing methodology of debugging Qemu emulated x86_64 architecture in different CPU modes. For now, I have strong intention to make a patch for Qemu GDB stub, at least for me. But I have impression that this should be corrected in official release too. -- Best regards, Artyom.