Re: git: e51ef8ae490f - main - hwpmc: Initial support for AMD IBS
- In reply to: Warner Losh : "git: e51ef8ae490f - main - hwpmc: Initial support for AMD IBS"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 04 Mar 2026 11:17:54 UTC
On Fri, 27 Feb 2026, Warner Losh wrote:
Hi,
> The branch main has been updated by imp:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=e51ef8ae490fc9f73191f33e7ad388c2511c454a
>
> commit e51ef8ae490fc9f73191f33e7ad388c2511c454a
> Author: Ali Mashtizadeh <ali@mashtizadeh.com>
> AuthorDate: 2026-01-30 09:12:17 +0000
> Commit: Warner Losh <imp@FreeBSD.org>
> CommitDate: 2026-02-27 21:22:16 +0000
>
> hwpmc: Initial support for AMD IBS
>
> This patch adds support for AMD IBS. It adds a new class of performance
> counter that cotains two events: ibs-fetch and ibs-op events. Unlike
> most existing sampled events, IBS events provide a number of values
> containing extra information regarding the sample. To support this we
> use the existing callchain event, and introduce a new flag for multipart
> payloads. The first 8 bytes of the pc_sample contains a header that
> defines up to four payloads.
>
> Sponsored by: Netflix
>
> Reviewed by: imp,mhorne
> Pull Request: https://github.com/freebsd/freebsd-src/pull/2022
> ---
> lib/libpmc/libpmc.c | 64 ++++-
> sys/amd64/include/pmc_mdep.h | 5 +
> sys/conf/files.x86 | 1 +
> sys/dev/hwpmc/hwpmc_amd.c | 25 +-
> sys/dev/hwpmc/hwpmc_ibs.c | 614 +++++++++++++++++++++++++++++++++++++++++
> sys/dev/hwpmc/hwpmc_ibs.h | 176 ++++++++++++
> sys/dev/hwpmc/hwpmc_mod.c | 96 ++++++-
> sys/dev/hwpmc/pmc_events.h | 13 +-
> sys/i386/include/pmc_mdep.h | 5 +
> sys/modules/hwpmc/Makefile | 4 +-
> sys/sys/pmc.h | 19 +-
> sys/sys/pmclog.h | 14 +
> sys/x86/x86/local_apic.c | 27 +-
> usr.sbin/pmcstat/pmcstat_log.c | 99 ++++++-
> 14 files changed, 1130 insertions(+), 32 deletions(-)
can someone clarify is this is/will be needed or why is was added but not used?
/sys/dev/hwpmc/hwpmc_mod.c:4597:1: warning: unused function 'pmc_is_multipart' [-Wunused-function]
4597 | pmc_is_multipart(struct pmc_sample *ps)
| ^~~~~~~~~~~~~~~~
--
Bjoern A. Zeeb r15:7