NAME | C SYNOPSIS | CAVEAT | DESCRIPTION | DIAGNOSTICS | SEE ALSO | COLOPHON |
|
|
PMLOOKUPIPC(3) Library Functions Manual PMLOOKUPIPC(3)
__pmOverrideLastFd, __pmPrintIPC, __pmResetIPC - IPC version infrastructure support
#include "pmapi.h" #include "libpcp.h" void __pmOverrideLastFd(int fd); void __pmPrintIPC(void); void __pmResetIPC(int fd); cc ... -lpcp
This documentation is intended for internal Performance Co-Pilot (PCP) developer use. These interfaces are not part of the PCP APIs that are guaranteed to remain fixed across releases, and they may not work, or may provide different semantics at some point in the future.
IPC channels throughout the distributed PCP framework are affected by the PCP 2.0 (and later) PDU changes. These functions are the interface to the libpcp IPC connection management global data. This data consists of a hash table of __pmIPC structures (indexed by file descriptor) and a cached, most-recently-used file descriptor. The __pmOverrideLastFd is an escape mechanism for use in those situations where the last PDU fetch did not go through the usual channels (i.e. __pmGetPDU), so as to ensure that the cached file descriptor is the correct file descriptor for the PDU which is currently being processed. This will typically be used for archive PDU processing or where version information is not available for a given file descriptor (e.g. immediately prior to a PDU version exchange). __pmPrintIPC is a useful debugging routine for displaying a table mapping all currently registered file descriptors to their associated PDU version numbers. Unused entries in this table should display the value zero in the version column. __pmResetIPC resets the version information associated with the given file descriptor to some known (invalid) number. Subsequent lookups on this file descriptor will return an UNKNOWN_VERSION embedded within the __pmIPC structure.
A negative return value from __pmOverrideLastFd indicates that the file descriptor argument is not registered in the hash table. This typically indicates closure of an IPC channel, so PM_ERR_IPC is returned if this is the case.
PMAPI(3)
This page is part of the PCP (Performance Co-Pilot) project.
Information about the project can be found at
⟨http://www.pcp.io/⟩. If you have a bug report for this manual
page, send it to [email protected]. This page was obtained from the
project's upstream Git repository
⟨https://github.com/performancecopilot/pcp.git⟩ on 2024-06-14.
(At that time, the date of the most recent commit that was found
in the repository was 2024-06-14.) If you discover any rendering
problems in this HTML version of the page, or you believe there
is a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
[email protected]
Performance Co-Pilot PCP PMLOOKUPIPC(3)