Re: [PATCH 5/5] x86/mbm: Add support for MBM counter overflow handling

From: Vikas Shivappa
Date: Wed Feb 24 2016 - 13:13:29 EST




On Wed, 24 Feb 2016, Thomas Gleixner wrote:

On Wed, 10 Feb 2016, Vikas Shivappa wrote:
+static enum hrtimer_restart mbm_hrtimer_handle(struct hrtimer *hrtimer)
+{
+ if (list_empty(&cache_groups))
+ goto out;
+
+ list_for_each_entry(iter, &cache_groups, hw.cqm_groups_entry) {

....

+ }
+ }
+
+out:
+ raw_spin_unlock_irqrestore(&cache_lock, flags);
+ mutex_unlock(&cache_mutex);
+
+ hrtimer_forward_now(hrtimer, ms_to_ktime(MBM_CTR_OVERFLOW_TIME));
+
+ return HRTIMER_RESTART;

Why is that timer restarted if cache_groups is empty?

Will fix. It should not be as the timers may be stopped by now as well. Also this patch incorrectly uses mutex(above) in the timer context. Will fix that as well.

Thanks,
Vikas


Thanks,

tglx