From 4a7b4c2440e0b30ec4b0f58c0a23fbe173f24e6b Mon Sep 17 00:00:00 2001 From: mav Date: Wed, 10 Oct 2012 19:46:46 +0000 Subject: panic() with reasonable message instead of returning zero frequency causing division by zero later if event timer's minimal period is above one second. For now it is just a theoretical possibility. Found by: Clang Static Analyzer --- sys/kern/kern_clocksource.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sys/kern') diff --git a/sys/kern/kern_clocksource.c b/sys/kern/kern_clocksource.c index a73536f..05e47e0 100644 --- a/sys/kern/kern_clocksource.c +++ b/sys/kern/kern_clocksource.c @@ -602,7 +602,8 @@ round_freq(struct eventtimer *et, int freq) freq = (et->et_frequency + div / 2) / div; } if (et->et_min_period.sec > 0) - freq = 0; + panic("Event timer \"%s\" doesn't support sub-second periods!", + et->et_name); else if (et->et_min_period.frac != 0) freq = min(freq, BT2FREQ(&et->et_min_period)); if (et->et_max_period.sec == 0 && et->et_max_period.frac != 0) -- cgit v1.1