man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: July 2014
 
 

di_path_instance(3DEVINFO)

Name

di_path_bus_addr, di_path_client_node, di_path_instance, di_path_node_name, di_path_phci_node, di_path_state - return libdevinfo path node information

Synopsis

cc [ flag... ] 
file... –ldevinfo [ library... ]
#include <libdevinfo.h>

char *di_path_bus_addr(di_path_t
 path);
di_node_t di_path_client_node(
di_path_t path);
int di_path_instance(
di_path_t path);
char *di_path_node_name(
di_path_t path);
di_node_t di_path_phci_node(
di_path_t path);
di_path_state_t di_path_state(
di_path_t path);

Parameters

path

The handle to a path node in a di_init(3DEVINFO) snapshot.

Description

These functions extract information associated with a path node.

Return Values

The di_path_bus_addr() function returns a string representing the pHCI child path node's unit-address. This function is the di_path_t peer of di_bus_addr(3DEVINFO).

The di_path_client_node() function returns the di_node_t of the 'client' device node associated with the given path node. If the client device node is not present in the current device tree snapshot, DI_NODE_NIL is returned and errno is set to ENOTSUP.

The di_path_node_name() function returns a pointer to a null-terminated string containing the path node name. This function is the di_path_t peer of di_node_name(3DEVINFO).

The di_path_instance() function returns the instance number associated with the given path node. A path node instance is persistent across attach (9E)/detach(9E) and device reconfigurations, but not across reboot. A path node instance is unrelated to a device node di_instance(3DEVINFO).

The di_path_phci_node() function returns the di_node_t of the pHCI host adapter associated with the given path node. If the pHCI device node is not present in the current device tree snapshot, DI_NODE_NIL is returned and errno is set to ENOTSUP.

The di_path_state() function returns the state of an I/O path. This function may return one of the following values:

DI_PATH_STATE_ONLINE

Identifies that the path_info node is online and I/O requests can be routed through this path.

DI_PATH_STATE_OFFLINE

Identifies that the path_info node is in offline state.

DI_PATH_STATE_FAULT

Identifies that the path_info node is in faulted state and not ready for I/O operations.

DI_PATH_STATE_STANDBY

Identifies that the path_info node is in standby state and not ready for I/O operations. It is a failover path.

DI_PATH_STATE_UNAVAILABLE

Identifies that the path_info node is in unavailable state and not ready for I/O operations. It cannot be used as a failover path.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
Safe

See Also

di_bus_addr(3DEVINFO), di_devfs_path(3DEVINFO), di_init(3DEVINFO), di_instance(3DEVINFO), di_node_name(3DEVINFO), di_path_client_next_path(3DEVINFO), di_path_prop_next(3DEVINFO), di_path_prop_bytes(3DEVINFO), di_path_prop_lookup_bytes(3DEVINFO), di_path_prop_next(3DEVINFO), libdevinfo(3LIB) , attributes (5)

Writing Device Drivers for Oracle Solaris 11.2