Date: Thu, 09 Apr 2026 16:35:30 +0000 From: Mitchell Horne <mhorne@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Ali Mashtizadeh <ali@mashtizadeh.com> Subject: git: f86ba3eec596 - main - hwpmc: prevent IBS fetch from getting stuck Message-ID: <69d7d552.24a3c.9850f95@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=f86ba3eec5961c0217b5458663e0eae5bbad314e commit f86ba3eec5961c0217b5458663e0eae5bbad314e Author: Ali Mashtizadeh <ali@mashtizadeh.com> AuthorDate: 2026-04-07 23:33:03 +0000 Commit: Mitchell Horne <mhorne@FreeBSD.org> CommitDate: 2026-04-09 16:35:26 +0000 hwpmc: prevent IBS fetch from getting stuck Both fetch and op IBS sampling have the same problem where we need to rewrite the control MSR to ensure sampling continues at the correct rate. I also like this because it resets the counter reducing the chances that we collect a sample inside the NMI handler. Reported by: Aalok Agarwal Reviewed by: mhorne Sponsored by: Netflix Fixes: e51ef8ae490f ("hwpmc: Initial support for AMD IBS") Pull Request: https://github.com/freebsd/freebsd-src/pull/2130 --- sys/dev/hwpmc/hwpmc_ibs.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/hwpmc/hwpmc_ibs.c b/sys/dev/hwpmc/hwpmc_ibs.c index ec1afcb47666..a230288f157e 100644 --- a/sys/dev/hwpmc/hwpmc_ibs.c +++ b/sys/dev/hwpmc/hwpmc_ibs.c @@ -342,6 +342,8 @@ pmc_ibs_process_fetch(struct pmc *pm, struct trapframe *tf, uint64_t config) } pmc_process_interrupt_mp(PMC_HR, pm, tf, &mpd); + + wrmsr(IBS_FETCH_CTL, pm->pm_md.pm_ibs.ibs_ctl | IBS_FETCH_CTL_ENABLE); } static voidhome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69d7d552.24a3c.9850f95>
