From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O2Luk-0005t9-LQ for qemu-devel@nongnu.org; Thu, 15 Apr 2010 06:03:14 -0400 Received: from [140.186.70.92] (port=46916 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O2Luh-0005sG-IJ for qemu-devel@nongnu.org; Thu, 15 Apr 2010 06:03:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O2Luc-00077u-3r for qemu-devel@nongnu.org; Thu, 15 Apr 2010 06:03:11 -0400 Received: from hall.aurel32.net ([88.191.82.174]:49156) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O2Lub-00077N-Ps for qemu-devel@nongnu.org; Thu, 15 Apr 2010 06:03:06 -0400 Message-ID: <4BC6E44D.5080406@aurel32.net> Date: Thu, 15 Apr 2010 12:02:53 +0200 From: Aurelien Jarno MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: Missing singlestep for already-translated code? References: <4BC47340.3030407@siemens.com> <4BC48D85.7050903@siemens.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jun Koi Cc: Jan Kiszka , Alexander Graf , "qemu-devel@nongnu.org" Jun Koi a écrit : > On Wed, Apr 14, 2010 at 12:28 AM, Jan Kiszka wrote: >> Alexander Graf wrote: >>> On 13.04.2010, at 15:36, Jan Kiszka wrote: >>> >>>> Jun Koi wrote: >>>>> Hi, >>>>> >>>>> I am looking into the singlestep command in monitor interface, and it >>>>> seems that we only take into account the singlestep flag when we are >>>>> translating code. >>>>> So for the already-translated code, we will miss singlestep? >>>> This feature is broken. For TCG, it should at least flush the >>>> translation buffer, and for KVM it has to enable single-stepping in the >>>> kernel. That's what happens automatically when you call cpu_single_step. >>>> I guess 'singlestep' wants to be somehow orthogonal to this. But this is >>>> the wrong approach. >>>> >>>> Does anyone actually used this feature or still does so? It looks fairly >>>> redundant to me, kind of a poor-man's gdb front-end as part of the >>>> monitor console. >>> Not sure what it does, but I use -singlestep quite a lot to get register dumps for instructions when using -d cpu. >> Ah, "singlestep" is not about stopping the VM after each instruction but >> about limiting the TB length to a single instruction. Badly named and >> poorly documented. >> >> In that case, the dynamic switch should already be fine by adding a >> tb_flush() on enable. Still, someone should also patch at least the docs. >> What's the real point of flushing the tb to get it retranslated again? It will be retranslated in the exact same way. -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net