qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: hkran <hkran@vnet.linux.ibm.com>
To: Zhi Yong Wu <zwu.kernel@gmail.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>,
	Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>,
	qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/2] Make simpletrace work on Windows
Date: Fri, 23 Sep 2011 13:58:57 +0800	[thread overview]
Message-ID: <4E7C2021.9090200@vnet.linux.ibm.com> (raw)
In-Reply-To: <CAEH94LjP7f-NuR3ASbq8-PtepXx-=vXVUrn3wjsQxbWTwbgZgg@mail.gmail.com>

On 09/20/2011 06:15 PM, Zhi Yong Wu wrote:
> On Tue, Sep 20, 2011 at 5:57 PM, Stefan Hajnoczi
> <stefanha@linux.vnet.ibm.com>  wrote:
>> On Tue, Sep 20, 2011 at 05:05:45PM +0800, hkran wrote:
>>> On 09/09/2011 05:37 PM, Stefan Hajnoczi wrote:
>>>> The 'simple' trace backend uses pthreads and does not work on Windows.  These
>>>> patches switch from pthreads to glib so that the code builds on all platforms
>>>> supported by glib.
>>>>
>>>> Only one thing I'm unhappy about: the simpletrace write-out thread used to
>>>> block all signals.  I have removed that code and don't expect glib to do it for
>>>> me.  I'm not sure if there is a problem if signal handlers are invoked in the
>>>> write-out thread instead of a QEMU thread.  Any thoughts?
>>>>
>>>> Stefan Hajnoczi (2):
>>>>    trace: portable simple trace backend using glib
>>>>    trace: use binary file open mode in simpletrace
>>>>
>>>>   trace/simple.c |   58 ++++++++++++++++++++++++++-----------------------------
>>>>   1 files changed, 27 insertions(+), 31 deletions(-)
>>>>
>>> Stefan,
>>>
>>> I applied the patch and make&install it.
>>>
>>> After a round of running of the qemu with the patch, a trace file is
>>> here, but when I want to open it like this,
>>> ./simpletrace.py trace-events trace-29948    //trace-29948 is my tracefile
>>>   an error occurs:
>>>
>>> Traceback (most recent call last):
>>>    File "./simpletrace.py", line 151, in<module>
>>>      run(Formatter())
>>>    File "./simpletrace.py", line 131, in run
>>>      events = parse_events(open(sys.argv[1], 'r'))
>>> IOError: [Errno 2] No such file or directory: 'trace-events'
>>>
>>> Am I using it in a right way?
>> Looks like your current working directory is scripts/ so simpletrace.py
>> will be unable to find the trace-events file which is in the parent
>> directory.
>>
>> Usually I stay in QEMU's root directory and just run:
>> $ qemu # ...generate the trace
>> $ scripts/simpletrace.py trace-events trace-$PID
> I know how to define my own event and play with it now. Very helpful
> for me to debug my functions. thanks.
>
>>> Additionally, There is something about WIN32 in patch, How can I
>>> compile a qemu running on windows? Could you give a reference?
>> Search for 'mingw' in qemu-doc.texi for instructions.
>>
>> Stefan
>>
>>
>
>
It took much long time to setup a mingw environment on windows to build 
qemu with the patch.
I enable the events bdrv_aio_readv and bdrv_aio_writev...... finally I 
got a trace, I paste a piece of that here:

bdrv_aio_readv 1172.216 bs=0x12b84a0 sector_num=0x538607 nb_sectors=0x40 
opaque=0xe1a1d40
bdrv_aio_readv 1.676 bs=0x12b96e0 sector_num=0x538607 nb_sectors=0x40 
opaque=0xe1a1d40
bdrv_aio_readv 811.555 bs=0x12b84a0 sector_num=0x538647 nb_sectors=0x37 
opaque=0xe1a1d40
bdrv_aio_readv 2.515 bs=0x12b96e0 sector_num=0x538647 nb_sectors=0x37 
opaque=0xe1a1d40
bdrv_aio_writev 3549944.197 bs=0x12b84a0 sector_num=0xf2b3f 
nb_sectors=0x48 opaque=0xe1a1d40
bdrv_aio_writev 4.190 bs=0x12b96e0 sector_num=0xf2b3f nb_sectors=0x48 
opaque=0xe1a1d40
bdrv_aio_writev 35316.500 bs=0x12b84a0 sector_num=0x13f7b7 
nb_sectors=0x60 opaque=0xe1a1d40
bdrv_aio_writev 3.911 bs=0x12b96e0 sector_num=0x13f7b7 nb_sectors=0x60 
opaque=0xe1a1d40
bdrv_aio_writev 27754.924 bs=0x12b84a0 sector_num=0x9efdf 
nb_sectors=0x50 opaque=0xe1a1d40
bdrv_aio_writev 3.911 bs=0x12b96e0 sector_num=0x9efdf nb_sectors=0x50 
opaque=0xe1a1d40
bdrv_aio_writev 30819.839 bs=0x12b84a0 sector_num=0xf36a7 
nb_sectors=0x48 opaque=0xe1a1d40

It looks working fine when windows serving a host.

For another thing, if I use virtio driver in my case like this:

qemu-system-i386.exe -m 786 -drive 
file=/c/setup/iso/xp_shanghai.img,if=virtio -sdl -net nic,model=virtio 
-net user

the guest can startup but soon go to crash without any traces. My question:
Can not virtio drivers be applied in the case that windows serve as a host?
furthermore, are there other limitations when qemu is running on windows?

  reply	other threads:[~2011-09-23  5:59 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-09  9:37 [Qemu-devel] [PATCH 0/2] Make simpletrace work on Windows Stefan Hajnoczi
2011-09-09  9:37 ` [Qemu-devel] [PATCH 1/2] trace: portable simple trace backend using glib Stefan Hajnoczi
2011-09-20 10:31   ` Jan Kiszka
2011-09-20 10:52     ` Paolo Bonzini
2011-09-20 10:58       ` Jan Kiszka
2011-09-20 12:01         ` Stefan Hajnoczi
2011-09-09  9:37 ` [Qemu-devel] [PATCH 2/2] trace: use binary file open mode in simpletrace Stefan Hajnoczi
2011-09-09 11:12 ` [Qemu-devel] [PATCH 0/2] Make simpletrace work on Windows Paolo Bonzini
2011-09-20  9:05 ` hkran
2011-09-20  9:57   ` Stefan Hajnoczi
2011-09-20 10:15     ` Zhi Yong Wu
2011-09-23  5:58       ` hkran [this message]
2011-09-20 10:20 ` Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E7C2021.9090200@vnet.linux.ibm.com \
    --to=hkran@vnet.linux.ibm.com \
    --cc=jan.kiszka@siemens.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@linux.vnet.ibm.com \
    --cc=zwu.kernel@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).