Page MenuHomeFreeBSD

D10912.diff
No OneTemporary

D10912.diff

Index: head/sys/dev/hwpmc/hwpmc_mod.c
===================================================================
--- head/sys/dev/hwpmc/hwpmc_mod.c
+++ head/sys/dev/hwpmc/hwpmc_mod.c
@@ -4224,7 +4224,8 @@
ps_end = psb->ps_write;
do {
#ifdef INVARIANTS
- if (ps->ps_pmc->pm_state != PMC_STATE_RUNNING)
+ if ((ps->ps_pmc == NULL) ||
+ (ps->ps_pmc->pm_state != PMC_STATE_RUNNING))
nfree++;
#endif
if (ps->ps_nsamples != PMC_SAMPLE_INUSE)
@@ -4262,9 +4263,11 @@
ps = psb->ps_samples;
} while (ps != ps_end);
+#ifdef INVARIANTS
KASSERT(ncallchains > 0 || nfree > 0,
("[pmc,%d] cpu %d didn't find a sample to collect", __LINE__,
cpu));
+#endif
KASSERT(td->td_pinned == 1,
("[pmc,%d] invalid td_pinned value", __LINE__));

File Metadata

Mime Type
text/plain
Expires
Thu, Mar 12, 9:23 PM (10 h, 37 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29596341
Default Alt Text
D10912.diff (757 B)

Event Timeline