qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport function


From: MATSUDA, Daiki
Subject: Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit
Date: Mon, 13 Feb 2012 11:14:03 +0900
User-agent: Mozilla/5.0 (Windows NT 5.1; rv:9.0) Gecko/20111222 Thunderbird/9.0.1

(2012/02/10 13:51), Michael Roth wrote:
On Fri, Feb 10, 2012 at 11:26:32AM +0900, MATSUDA, Daiki wrote:
(2012/02/04 2:07), Michael Roth wrote:
On 02/02/2012 10:25 PM, MATSUDA, Daiki wrote:
Hi, Michael!
Thank you for your working.

And I have a question the process id written in pid file.
If qemu-ga is ran as daemon, the parent process id not child is written
in pid file. So, id gotten by 'ps' command is different. Is it correct
work? Many other daemon writes child process id.

Regards
MATSUDA Daiki


Hi Matsuda,

Thank you for testing!

In the become_daemon() function, the parent exits immediately after the
fork(), so only the child has the opportunity to write to the pid file.
It calls getpid() to get the pid to write, which should be it's own
lwpid. So I'm not seeing where there's an opportunity for the parent pid
to be written.

Can you confirm? It seems to behave as expected for me:

address@hidden ~]# /home/mdroth/w/qemu-build/qemu-ga -d
** (process:7441): DEBUG: starting daemon
address@hidden ~]# ps aux | grep qemu-ga
root 7442 0.0 0.0 13792 348 ? Ss 10:56 0:00
/home/mdroth/w/qemu-build/qemu-ga -d
root 7471 0.0 0.1 109108 816 pts/2 R+ 11:00 0:00 grep --color=auto qemu-ga
address@hidden ~]# cat /var/run/qemu-ga.pid
7442


Hi, Michael.

Sorry, it will be my mistake. The child process id is written in pid file.

And in this week, I tried your Windows Guest Agent patches. It is a
little hard way.

At the first I wrote my work.
0. my node OS is RHEL 6.1.
1. build some mingw packages (mingw32-gcc, mingw-32-glib2...)
2. apply your patches to qemu-kvm HEAD source. There is no error.
3. boot WinXP SP3 and Win Server 2008 R2 with VirtIO Console and
Guest Agent options.
4. install VirtIO Serial driver for Windows in
http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-0.1-15.iso
5. communicate to node OS with viosel-test.exe included upper iso file is OK
6. copy qemu-ga.exe with some dlls included in mingw32 packages
7. 'qemu-ga --service install' does not work well. but 'qemu-ga -s
install' works well.

I see the problem, small bug in the getopt_long() usage that wasn't
triggering on POSIX. I'll fix that up shortly.

8. qemu-ga.exe works. And get good response for guest-info command.
9. But after 30 seconds, qemu-ga.exe displays following and not work
correctly.
1328840605.265625: critical: error retrieving overlapped result: 995
1328840605.296875: critical: channel error, removing source

If possible, could you point my work?

Can you reproduce with the -v option added and post the the output? I
haven't encountered this error code and the documentation for it seems
strange. Does this occur with both WinXP and 2008?

Yes, it occurs with both WinXP and 2008.
And pastes the log with '-v'
C:\qemu-ga>qemuga.exe -v
1329094617.593750: debug: prepare
1329094618.109375: debug: check
.... repeat sometimes ...
1329094623.171875: debug: prepare
1329094623.625000: debug: check
1329094623.625000: critical: error retrieving overlapped result: 995
1329094623.640625: debug: dispatch
1329094623.640625: warninng: error reading channel
1329094623.640625: critical: channel error, removing source

If it's not too much trouble, can you try to reproduce with qemu.git
(for WinXP SP3)? Wondering if qemu vs. qemu-kvm is affecting the
virtio-serial driver.

Yes. I am using the qemu.git from
http://repo.or.cz/w/qemu.git.

In addition, now I change the hypervisor from RHEL 6.1 default to qemu git tree. But same problem occurs.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]