From 0d27a57cf17e7e60a8fbb095500e00d8c951fc80 Mon Sep 17 00:00:00 2001 From: Pawel Dziepak Date: Thu, 16 Jan 2014 23:24:34 +0100 Subject: [PATCH] scheduler: Fix divide by zero on CPU disable --- src/system/kernel/scheduler/scheduler_thread.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/system/kernel/scheduler/scheduler_thread.cpp b/src/system/kernel/scheduler/scheduler_thread.cpp index d778b35c43..29d3ae2975 100644 --- a/src/system/kernel/scheduler/scheduler_thread.cpp +++ b/src/system/kernel/scheduler/scheduler_thread.cpp @@ -194,7 +194,9 @@ ThreadData::ComputeQuantum() const if (IsRealTime()) return quantum; - int32 threadCount = fCore->ThreadCount() / fCore->CPUCount(); + int32 threadCount = fCore->ThreadCount(); + if (fCore->CPUCount() > 0) + threadCount /= fCore->CPUCount(); if (threadCount >= 1) { quantum = std::min(gCurrentMode->maximum_latency / threadCount, quantum);