From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:34348) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QPH9w-0001d2-8Q for qemu-devel@nongnu.org; Wed, 25 May 2011 12:42:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QPH9v-0002GI-90 for qemu-devel@nongnu.org; Wed, 25 May 2011 12:42:12 -0400 Received: from proofpoint5.lanl.gov ([204.121.3.53]:36160) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QPH9v-0002GA-1S for qemu-devel@nongnu.org; Wed, 25 May 2011 12:42:11 -0400 Received: from mailrelay1.lanl.gov (mailrelay1.lanl.gov [128.165.4.101]) by proofpoint5.lanl.gov (8.14.3/8.14.3) with ESMTP id p4PGg9o8029748 for ; Wed, 25 May 2011 10:42:09 -0600 Received: from ccn-mail.lanl.gov (ccn-mail.lanl.gov [128.165.4.105]) by mailrelay1.lanl.gov (Postfix) with ESMTP id 18C4E163F83 for ; Wed, 25 May 2011 10:42:09 -0600 (MDT) Received: from localhost (localhost.localdomain [127.0.0.1]) by ccn-mail.lanl.gov (Postfix) with ESMTP id 1753D4101CE for ; Wed, 25 May 2011 10:42:09 -0600 (MDT) Received: from jvpn-132-107.lanl.gov (jvpn-132-107.lanl.gov [130.55.132.107]) by ccn-mail.lanl.gov (Postfix) with ESMTP id BFFC74101B8 for ; Wed, 25 May 2011 10:42:08 -0600 (MDT) Message-ID: <4DDD3160.70603@lanl.gov> Date: Wed, 25 May 2011 10:42:08 -0600 From: Nathan DeBardeleben MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Looking for the correct way to pull register values out of QEMU List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hello all, hopefully this message is not too trivial. I am looking for some simple direction. What I am looking to do is to pull the register states out of a QEMU session external to the session. I figure at very least I could save the state of the VM to a file and then dig through it but this would be exceedingly tedious, especially considering I intend to use this for periodic sampling. Are there interfaces that do this now and if there are not, can you point me towards section of the source to best modify? Basically what I'd like to be able to do is periodically poke into a running QEMU VM and drag down the registers, in particular, the PC, and then record that. Over time, with samples, I would have some sort of distribution of where the PC was during a run. Now to be clear, this isn't really what I want this for, but if I could do this, it would basically go a long way towards this research. So imagine: 1: Stop QEMU (maybe not necessary?) 2: Drag down the set of registers 3: Release QEMU (contingent on #1) 4: Repeat over some periodic sampling rate. 5: Produce a "gprof-like" graph of where the PC was during the time observed. I realize that without information from the kernel about the instruction ranges for each application I will be unable to tie this information back to which applications were running. Any tips / help anyone can provide would be very useful. Thank you. -- - Nathan ---------------------------------------------------- Nathan DeBardeleben, Ph.D. Los Alamos National Laboratory High Perf. Computing Systems Integration (HPC-5) Ultra-Scale Research Center, Resilience Lead email: ndebard@lanl.gov ----------------------------------------------------