1di_path_client_next_paDtehv(i3cDeEVIInNfFoOr)mation Libradriy_pFautnhc_tciloinesnt_next_path(3DEVINFO)
2
3
4

NAME

6       di_path_client_next_path, di_path_phci_next_path - libdevinfo path node
7       traversal functions
8

SYNOPSIS

10       cc [ flag... ] file... -ldevinfo [ library... ]
11       #include <libdevinfo.h>
12
13       di_path_t di_path_client_next_path(di_node_t node node,
14            di_path_t path);
15
16
17       di_path_t di_path_phci_next_path(di_node_t node node,
18            di_path_t path);
19
20

PARAMETERS

22       node    The handle to a device node in  a  di_init(3DEVINFO)  snapshot.
23               For  di_path_client_next_path(),  node  must be a client device
24               node.  For di_path_phci_next_path(), node must be a pHCI device
25               node.
26
27
28       path    DI_PATH_NIL, or the handle to a path node in a snapshot.
29
30

DESCRIPTION

32       Each  path  node  is  an element in a pHCI-client matrix. The matrix is
33       implemented by dual linked lists: one list links path nodes related  to
34       a  common client head, and the other links path nodes related to a com‐
35       mon pHCI head.
36
37
38       The di_path_client_next_path() function is  called  on  a  multipathing
39       'client'  device  node,  where a 'client' is the child of a vHCI device
40       node, and is associated with a specific endpoint device identity (inde‐
41       pendent   of   physical   paths).    If  the  path  argument  is  NULL,
42       di_path_client_next_path() returns the first path node associated  with
43       the  client.  To walk all path nodes associated with a client, returned
44       di_path_t values are fed back into di_path_client_next_path(), via  the
45       path argument, until a null path node is returned.  For each path node,
46       di_path_bus_addr(3DEVINFO) returns  the  pHCI  child  path  node  unit-
47       address.
48
49
50       The  di_path_phci_next_path() function is called on a multipathing pHCI
51       device node. If the path  argument  is  NULL,  di_path_phci_next_path()
52       returns  the first path node associated with the pHCI. To walk all path
53       nodes associated with a pHCI, returned di_path_t values  are  fed  back
54       into di_path_phci_next_path(), via the path argument, until a null path
55       node is returned.  For each  path  node,  di_path_client_node(3DEVINFO)
56       provides a pointer to the associated client device node.
57
58
59       A device node can be a client device node of one multipathing class and
60       a pHCI device node of another class.
61

RETURN VALUES

63       Upon successful completion, a handle to the next path node is returned.
64       Otherwise,  DI_PATH_NIL  is  returned  and errno is set to indicate the
65       error.
66

ERRORS

68       These functions will fail if:
69
70       EINVAL     One or more argument was invalid.
71
72
73       ENOTSUP    Path node information is not available in the snapshot.
74
75
76       ENXIO      The end of the path node list was reached.
77
78

ATTRIBUTES

80       See attributes(5)  for descriptions of the following attributes:
81
82
83
84
85       ┌─────────────────────────────┬─────────────────────────────┐
86       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
87       ├─────────────────────────────┼─────────────────────────────┤
88       │Interface Stability          │Committed                    │
89       ├─────────────────────────────┼─────────────────────────────┤
90       │MT-Level                     │Safe                         │
91       └─────────────────────────────┴─────────────────────────────┘
92

SEE ALSO

94       di_init(3DEVINFO),                          di_path_bus_addr(3DEVINFO),
95       di_path_client_node(3DEVINFO), libdevinfo(3LIB), attributes(5)
96
97
98       Writing Device Drivers
99
100
101
102SunOS 5.11                        15 May 2008di_path_client_next_path(3DEVINFO)
Impressum