Command Section

PMC_GET_MSR(3)         FreeBSD Library Functions Manual         PMC_GET_MSR(3)

NAME
     pmc_get_msr - x86 architecture-specific PMC operations

LIBRARY
     Performance Counters Library (libpmc, -lpmc)

SYNOPSIS
     #include <pmc.h>

     int
     pmc_get_msr(pmc_id_t pmc, uint32_t *msr);

DESCRIPTION
     The function pmc_get_msr() returns the processor model specific register
     number associated with a PMC for subsequent use with RDPMC instructions.
     Argument pmc specifies a process scope counting PMC.  The function will
     write the model specific register number associated with the PMC to the
     location pointed to by argument msr.

     After successful completion of this function, applications can directly
     read the contents of PMC hardware using RDPMC instructions.

RETURN VALUES
     The pmc_get_msr() function returns the value 0 if successful; otherwise
     the value -1 is returned and the global variable errno is set to indicate
     the error.

ERRORS
     A call to pmc_get_msr() may fail with the following errors:

     [EINVAL]           The PMC handle specified was invalid.

     [EINVAL]           The PMC specified did not have process scope or
                        counting mode.

     [EINVAL]           The PMC specified was allocated with the
                        PMC_F_DESCENDANTS flag.

     [EINVAL]           The specified PMC is already attached to target
                        processes other than the owner.

     [ENOSYS]           The underlying hardware does not support an RDPMC
                        instruction.

SEE ALSO
     pmc(3), hwpmc(4)

FreeBSD 13.1-RELEASE-p6        November 25, 2007       FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...