]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - kernel/perf_event.c
Merge commit 'v2.6.35-rc3' into sched/core
[karo-tx-linux.git] / kernel / perf_event.c
index 109c5ec88933aabf389da35cf544943cfbea685f..7e32b51ff043b9a7fb47ef17aed2aef295d3de66 100644 (file)
@@ -1507,6 +1507,9 @@ do {                                      \
                divisor = nsec * frequency;
        }
 
+       if (!divisor)
+               return dividend;
+
        return div64_u64(dividend, divisor);
 }
 
@@ -1529,7 +1532,7 @@ static int perf_event_start(struct perf_event *event)
 static void perf_adjust_period(struct perf_event *event, u64 nsec, u64 count)
 {
        struct hw_perf_event *hwc = &event->hw;
-       u64 period, sample_period;
+       s64 period, sample_period;
        s64 delta;
 
        period = perf_calculate_period(event, nsec, count);