* [PATCH] Don't quit IO thread before all lvcpus stopped
@ 2008-04-23 22:33 Dor Laor
2008-04-24 12:47 ` Avi Kivity
0 siblings, 1 reply; 4+ messages in thread
From: Dor Laor @ 2008-04-23 22:33 UTC (permalink / raw)
To: Avi Kivity, kvm-devel
[-- Attachment #1: Type: text/plain, Size: 1160 bytes --]
while investigating the revert of "fix sci irq set when acpi timer" I
discovered the reason. Please also re-revert the original patch.
Thanks,
Dor
-------------
[PATCH] Don't quit IO thread before all lvcpus stopped
Call pause_all_threads() before exiting the i/o thread
main loop.
This scenario happened on system_powerdown request:
The vcpu eventually makes pm_ioport_writew (soft power off)
access that calls qemu_system_shutdown_request.
It causes the i/o thread to exit although the vcpu did not
exit yet.
One of the symptoms is that vcpu may trigger timers thus
causing a segfault since the i/o thread stopped the timer.
[This is what happened on the sci irq timer, now there is no
need to revert it[
Signed-off-by: Dor Laor <dor.laor@qumranet.com>
---
qemu/qemu-kvm.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/qemu/qemu-kvm.c b/qemu/qemu-kvm.c
index 50589a7..78127de 100644
--- a/qemu/qemu-kvm.c
+++ b/qemu/qemu-kvm.c
@@ -452,7 +452,9 @@ int kvm_main_loop(void)
pthread_mutex_unlock(&qemu_mutex);
}
+ pause_all_threads();
pthread_mutex_unlock(&qemu_mutex);
+
return 0;
}
--
1.5.4.1
[-- Attachment #2: 0001-Don-t-quit-IO-thread-before-all-vcpus-stopped.patch --]
[-- Type: application/mbox, Size: 1156 bytes --]
[-- Attachment #3: Type: text/plain, Size: 320 bytes --]
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
[-- Attachment #4: Type: text/plain, Size: 158 bytes --]
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH] Don't quit IO thread before all lvcpus stopped
2008-04-23 22:33 [PATCH] Don't quit IO thread before all lvcpus stopped Dor Laor
@ 2008-04-24 12:47 ` Avi Kivity
2008-04-24 13:35 ` Dor Laor
0 siblings, 1 reply; 4+ messages in thread
From: Avi Kivity @ 2008-04-24 12:47 UTC (permalink / raw)
To: dor.laor; +Cc: kvm-devel
Dor Laor wrote:
> while investigating the revert of "fix sci irq set when acpi timer" I
> discovered the reason. Please also re-revert the original patch.
>
Applied, but system_powerdown still doesn't work with the sci acpi timer
fix.
--
error compiling committee.c: too many arguments to function
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] Don't quit IO thread before all lvcpus stopped
2008-04-24 12:47 ` Avi Kivity
@ 2008-04-24 13:35 ` Dor Laor
2008-04-24 16:14 ` Avi Kivity
0 siblings, 1 reply; 4+ messages in thread
From: Dor Laor @ 2008-04-24 13:35 UTC (permalink / raw)
To: Avi Kivity; +Cc: kvm-devel
On Thu, 2008-04-24 at 15:47 +0300, Avi Kivity wrote:
> Dor Laor wrote:
> > while investigating the revert of "fix sci irq set when acpi timer" I
> > discovered the reason. Please also re-revert the original patch.
> >
>
> Applied, but system_powerdown still doesn't work with the sci acpi timer
> fix.
>
>
With the above patch and revert the reversion of "fix sci irq set when
acpi timer" it works for me. Can you give some details or try again?
My host is 2.6.24.3-50-fc8, your kvm head (user
da00aa5090cf2de4259960ea659ac783bd65a041 + re-revert, kernel
1736e3f0a3e173a7f452b32ad19bfff085a1a255).
Guest is winXp with acpi hal. After it boots I go to the monitor and
issue a system_powerdown.
Everything works and there is no segfaults (tested multiple time)
Dor
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] Don't quit IO thread before all lvcpus stopped
2008-04-24 13:35 ` Dor Laor
@ 2008-04-24 16:14 ` Avi Kivity
0 siblings, 0 replies; 4+ messages in thread
From: Avi Kivity @ 2008-04-24 16:14 UTC (permalink / raw)
To: dor.laor; +Cc: kvm-devel
Dor Laor wrote:
> On Thu, 2008-04-24 at 15:47 +0300, Avi Kivity wrote:
>
>> Dor Laor wrote:
>>
>>> while investigating the revert of "fix sci irq set when acpi timer" I
>>> discovered the reason. Please also re-revert the original patch.
>>>
>>>
>> Applied, but system_powerdown still doesn't work with the sci acpi timer
>> fix.
>>
>>
>>
>
> With the above patch and revert the reversion of "fix sci irq set when
> acpi timer" it works for me. Can you give some details or try again?
>
> My host is 2.6.24.3-50-fc8, your kvm head (user
> da00aa5090cf2de4259960ea659ac783bd65a041 + re-revert, kernel
> 1736e3f0a3e173a7f452b32ad19bfff085a1a255).
> Guest is winXp with acpi hal. After it boots I go to the monitor and
> issue a system_powerdown.
> Everything works and there is no segfaults (tested multiple time)
>
>
With current master, Windows and Linux (FC6, x86_64) both shut down
correctly after system_powerdown. With the sci timer thing re-applied,
Windows continues to work but Linux no longer responds to ACPI powerdown.
--
error compiling committee.c: too many arguments to function
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-04-24 16:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-23 22:33 [PATCH] Don't quit IO thread before all lvcpus stopped Dor Laor
2008-04-24 12:47 ` Avi Kivity
2008-04-24 13:35 ` Dor Laor
2008-04-24 16:14 ` Avi Kivity
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox