When creating a new monitoring group, the RMID allocated for it may have
been used by a group which was previously removed. In this case, the
hardware counters will have non-zero values which should be deducted
from what is reported in the new group's counts.
resctrl_arch_reset_rmid() initializes the prev_msr value for counters to
0, causing the initial count to be charged to the new group. Resurrect
__rmid_read() and use it to initialize prev_msr correctly.
Unlike before, __rmid_read() checks for error bits in the MSR read so
that callers don't need to.
Fixes:
|
||
|---|---|---|
| .. | ||
| Makefile | ||
| core.c | ||
| ctrlmondata.c | ||
| internal.h | ||
| monitor.c | ||
| pseudo_lock.c | ||
| pseudo_lock_event.h | ||
| rdtgroup.c | ||