NAME
pmc_configure_logfile
,
pmc_flush_logfile
,
pmc_writelog
,
pmc_close_logfile
—
log file management
LIBRARY
library “libpmc”
SYNOPSIS
#include
<pmc.h>
int
pmc_configure_logfile
(int
fd);
int
pmc_flush_logfile
(void);
int
pmc_writelog
(uint32_t
userdata);
int
pmc_close_logfile
(void);
DESCRIPTION
The functions manage logging of hwpmc(4) events.Function
pmc_configure_logfile
()
is used to turn on and turn off logging. If argument
fd is a valid file handle returned by a prior call to
open(2) or
socket(2) then performance events will be logged to the file
corresponding to the specified handle. If the value of argument
fd is -1 then logging will be stopped after any
pending data is flushed.
Function
pmc_flush_logfile
()
will force all log data queued inside the
hwpmc(4) driver to be written out.
Function
pmc_writelog
()
will append a log entry containing the value of argument
userdata to the log file.
Function
pmc_close_logfile
()
will flush all pending log data and close
hwpmc(4)'s side of the stream.
RETURN VALUES
Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
ERRORS
A call to pmc_configure_logfile
() may fail
with the following errors:
- [
EAGAIN
] - The hwpmc(4) driver was not able to create a helper process due to system limits being reached.
- [
EBUSY
] - Function
pmc_configure_logfile
() was called with a log file already configured. - [
EINVAL
] - Function
pmc_configure_logfile
() was called with an argument of -1 without a log file being previously configured. - [
ENOMEM
] - The system encountered a memory shortage when servicing this request.
A call to pmc_flush_logfile
() may fail
with the following errors:
- [
EINVAL
] - Function
pmc_flush_logfile
() was called without a log file being previously configured.
A call to pmc_writelog
() may fail with the
following errors:
- [
EINVAL
] - Function
pmc_writelog
() was called without a log file being previously configured. - [
ENOMEM
] - The system encountered a memory shortage when servicing this request.