bproc_pidnode

Name

bproc_pidnode -- Get the node a PID is running on.

Synopsis

#include <sys/bproc.h>

int bproc_pidnode (int pid);

Arguments

pid

The process id

Description

Retrieves the node number associated with the given Process ID from the BProc process space. Note that only user processes ghosted on the master are available in this way. Node kernel and internal BProc PIDs are not accessible.

Return Value

Return the node number that the PID is running on.

Returns BPROC_NODE_NONE if the PID is running on the master node or isn't a valid PID.

Bugs

This functions returns BPROC_NODE_NONE if there was an error accessing the BProc status file, or if pid was not found in the status file. There is currently no way to tell if BPROC_NODE_NONE resulted from an error or from pid not being masqueraded by BProc.

Errors

EACCES

The program does not have access to read the BProc status file.

ENOENT

The BProc status file does not exist.

ENOMEM

Insufficient kernel memory.

EMFILE

The limit of files that can be opened by the process has been reached.

ENFILE

The limit of files that can be opened by the system has been reached.

EAGAIN

The BProc status file has been locked.