* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit @ 2012-02-03 4:25 MATSUDA, Daiki 2012-02-03 17:07 ` Michael Roth 0 siblings, 1 reply; 7+ messages in thread From: MATSUDA, Daiki @ 2012-02-03 4:25 UTC (permalink / raw) To: qemu-devel, Michael Roth 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 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit 2012-02-03 4:25 [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit MATSUDA, Daiki @ 2012-02-03 17:07 ` Michael Roth 2012-02-10 2:26 ` MATSUDA, Daiki 0 siblings, 1 reply; 7+ messages in thread From: Michael Roth @ 2012-02-03 17:07 UTC (permalink / raw) To: MATSUDA, Daiki; +Cc: qemu-devel 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: [root@vm ~]# /home/mdroth/w/qemu-build/qemu-ga -d ** (process:7441): DEBUG: starting daemon [root@vm ~]# 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 [root@vm ~]# cat /var/run/qemu-ga.pid 7442 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit 2012-02-03 17:07 ` Michael Roth @ 2012-02-10 2:26 ` MATSUDA, Daiki 2012-02-10 4:51 ` Michael Roth 0 siblings, 1 reply; 7+ messages in thread From: MATSUDA, Daiki @ 2012-02-10 2:26 UTC (permalink / raw) To: Michael Roth; +Cc: qemu-devel (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: > > [root@vm ~]# /home/mdroth/w/qemu-build/qemu-ga -d > ** (process:7441): DEBUG: starting daemon > [root@vm ~]# 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 > [root@vm ~]# 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. 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? MATSUDA Daiki ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit 2012-02-10 2:26 ` MATSUDA, Daiki @ 2012-02-10 4:51 ` Michael Roth 2012-02-13 2:14 ` MATSUDA, Daiki 0 siblings, 1 reply; 7+ messages in thread From: Michael Roth @ 2012-02-10 4:51 UTC (permalink / raw) To: MATSUDA, Daiki; +Cc: qemu-devel 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: > > > >[root@vm ~]# /home/mdroth/w/qemu-build/qemu-ga -d > >** (process:7441): DEBUG: starting daemon > >[root@vm ~]# 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 > >[root@vm ~]# 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? 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. > > MATSUDA Daiki > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit 2012-02-10 4:51 ` Michael Roth @ 2012-02-13 2:14 ` MATSUDA, Daiki 2012-02-13 21:37 ` Michael Roth 0 siblings, 1 reply; 7+ messages in thread From: MATSUDA, Daiki @ 2012-02-13 2:14 UTC (permalink / raw) To: Michael Roth; +Cc: qemu-devel (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: >>> >>> [root@vm ~]# /home/mdroth/w/qemu-build/qemu-ga -d >>> ** (process:7441): DEBUG: starting daemon >>> [root@vm ~]# 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 >>> [root@vm ~]# 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. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit 2012-02-13 2:14 ` MATSUDA, Daiki @ 2012-02-13 21:37 ` Michael Roth 2012-02-14 1:59 ` MATSUDA, Daiki 0 siblings, 1 reply; 7+ messages in thread From: Michael Roth @ 2012-02-13 21:37 UTC (permalink / raw) To: MATSUDA, Daiki; +Cc: qemu-devel On Mon, Feb 13, 2012 at 11:14:03AM +0900, MATSUDA, Daiki wrote: > >>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. Strange, I can't seem to get the virtio-win-0.1-15.iso vioser drivers working with either qemu.git or qemu-kvm.git. I thought I was using them for XP SP3, but apparently I had switched over to using RHEL6ga drivers at some point (virtio-win-1.1.16.iso), which I believe are older than the Fedora ones you're using. However, there was an issue with the RHEL6ga drivers where an ERROR_SYSTEM_NO_RESOURCES was sometimes being reported in place of what where I'd normally expect an EOF with the linux drivers. So my guess is that has since been changed to report ERROR_OPERATION_ABORTED instead, so please also apply the following patches and see if these fix the issues you're having: 1) qemu-ga: fix incorrect getopt_long() usage https://github.com/mdroth/qemu/commit/b5f4349763936007e1a33ba99d9ffb6b75a49b36 2) qemu-ga: win32, treat ERROR_OPERATION_ABORTED as EOF https://github.com/mdroth/qemu/commit/7418bbf903e639ec22c394771f5ff03f18bd1275 Thanks ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit 2012-02-13 21:37 ` Michael Roth @ 2012-02-14 1:59 ` MATSUDA, Daiki 0 siblings, 0 replies; 7+ messages in thread From: MATSUDA, Daiki @ 2012-02-14 1:59 UTC (permalink / raw) To: qemu-devel, Michael Roth (2012/02/14 6:37), Michael Roth wrote: > On Mon, Feb 13, 2012 at 11:14:03AM +0900, MATSUDA, Daiki wrote: >>>> 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. > > Strange, I can't seem to get the virtio-win-0.1-15.iso vioser drivers > working with either qemu.git or qemu-kvm.git. I thought I was using them > for XP SP3, but apparently I had switched over to using RHEL6ga drivers > at some point (virtio-win-1.1.16.iso), which I believe are older than the > Fedora ones you're using. > > However, there was an issue with the RHEL6ga drivers where an > ERROR_SYSTEM_NO_RESOURCES was sometimes being reported in place of what > where I'd normally expect an EOF with the linux drivers. So my guess is > that has since been changed to report ERROR_OPERATION_ABORTED instead, so > please also apply the following patches and see if these fix the issues > you're having: > > 1) qemu-ga: fix incorrect getopt_long() usage > https://github.com/mdroth/qemu/commit/b5f4349763936007e1a33ba99d9ffb6b75a49b36 > > 2) qemu-ga: win32, treat ERROR_OPERATION_ABORTED as EOF > https://github.com/mdroth/qemu/commit/7418bbf903e639ec22c394771f5ff03f18bd1275 > > Thanks I confirmed that 2 bugs are fixed by your 2 patches. And now Windows Guest OS works well over 1 hour. Thanks for your working, Michael. ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-02-14 1:59 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-02-03 4:25 [Qemu-devel] [PATCH v2 2/8] qemu-ga: move channel/transport functionalit MATSUDA, Daiki 2012-02-03 17:07 ` Michael Roth 2012-02-10 2:26 ` MATSUDA, Daiki 2012-02-10 4:51 ` Michael Roth 2012-02-13 2:14 ` MATSUDA, Daiki 2012-02-13 21:37 ` Michael Roth 2012-02-14 1:59 ` MATSUDA, Daiki
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).