oracular (3) __pmAddIPC.3.gz

Provided by: libpcp3-dev_6.3.0-1_amd64 bug

NAME

       __pmOverrideLastFd, __pmPrintIPC, __pmResetIPC - IPC version infrastructure support

C SYNOPSIS

       #include "pmapi.h"
       #include "libpcp.h"

       void __pmOverrideLastFd(int fd);
       void __pmPrintIPC(void);
       void __pmResetIPC(int fd);

       cc ... -lpcp

CAVEAT

       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.

DESCRIPTION

       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.

DIAGNOSTICS

       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.

SEE ALSO

       PMAPI(3)