|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH] SystemVirtualCpuIndex() cannot use KeWaitForSingleObject()
The function is called at > DISPATCH_LEVEL so it cannot wait, even with a
zero timeout. Having this call there causes the system to hang.
Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
Reported-by: Fabio Fantoni <fabio.fantoni@xxxxxxx>
---
src/xen/system.c | 14 +-------------
1 file changed, 1 insertion(+), 13 deletions(-)
diff --git a/src/xen/system.c b/src/xen/system.c
index efe5049..eb06bec 100644
--- a/src/xen/system.c
+++ b/src/xen/system.c
@@ -728,20 +728,8 @@ SystemVirtualCpuIndex(
{
PSYSTEM_CONTEXT Context = &SystemContext;
PSYSTEM_CPU Cpu = Context->Cpu[Index];
- LARGE_INTEGER Timeout;
- NTSTATUS status;
- ASSERT3U(Index, <, MAXIMUM_PROCESSORS);
-
- Timeout.QuadPart = 0;
-
- // Make sure the SystemCpuInformation() has run
- status = KeWaitForSingleObject(&Cpu->Event,
- Executive,
- KernelMode,
- FALSE,
- &Timeout);
- ASSERT(NT_SUCCESS(status) && status != STATUS_TIMEOUT);
+ ASSERT(Cpu != NULL);
return Cpu->ProcessorID;
}
--
2.1.1
_______________________________________________
win-pv-devel mailing list
win-pv-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |