Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

di_devlink_init(3devinfo) [opensolaris man page]

di_devlink_init(3DEVINFO)			       Device Information Library Functions				 di_devlink_init(3DEVINFO)

NAME
di_devlink_init, di_devlink_fini - create and destroy a snapshot of devlinks SYNOPSIS
cc [ flag... ] file... -ldevinfo [ library... ] #include <libdevinfo.h> di_devlink_handle_t di_devlink_init(const char *name, uint_t flags); int di_devlink_fini(di_devlink_handle_t *hdlp); PARAMETERS
flags The following values are supported: DI_MAKE_LINK Synchronize with devlink management before taking the snapshot. The name argument determines which devlink manage- ment activities must complete before taking a devlink snapshot. Appropriate privileges are required to use this flag. name If flags is DI_MAKE_LINK, name determines which devlink management activity must complete prior to snapshot. o If name is NULL then all devlink management activities must complete. The devlink snapshot returned accurately reflects the entire kernel device tree. o If name is a driver name, devlink management activities associated with nodes bound to that driver must complete. o If name is a path to a node in the kernel device tree (no "/devices" prefix), devlink management activities below node must complete. o If name is a path to a minor node in the kernel device tree (no "/devices"prefix), devlink management activities on that minor node must complete. hdlp The handle to the snapshot obtained by calling di_devlink_init(). DESCRIPTION
System management applications often need to map a "/devices" path to a minor node to a public "/dev" device name. The di_devlink_*() func- tions provide an efficient way to accomplish this. The di_devlink_init() function takes a snapshot of devlinks and returns a handle to this snapshot. The di_devlink_fini() function destroys the devlink snapshot and frees the associated memory. RETURN VALUES
Upon successful completion, di_devlink_init() returns a handle to a devlink snapshot. Otherwise, DI_LINK_NIL is returned and errno is set to indicate the error. Upon successful completion, di_devlink_fini() returns 0. Otherwise, -1 is returned and errno is set to indicate the error. ERRORS
The di_devlink_init() function will fail if: EINVAL One or more arguments is invalid. The di_devlink_init() function with DI_MAKE_LINK can also fail if: EPERM The user does no have appropriate privileges. The di_devlink_init() function can set errno to any error value that can also be set by malloc(3C), open(2), ioctl(2), or mmap(2). ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ SEE ALSO
ioctl(2), mmap(2), open(2), di_devlink_path(3DEVINFO), di_devlink_walk(3DEVINFO), libdevinfo(3LIB), malloc(3C), attributes(5) SunOS 5.11 21 Jul 2008 di_devlink_init(3DEVINFO)

Check Out this Related Man Page

di_devfs_path(3DEVINFO) 			       Device Information Library Functions				   di_devfs_path(3DEVINFO)

NAME
di_devfs_path, di_devfs_minor_path, di_path_devfs_path, di_path_client_devfs_path, di_devfs_path_free - generate and free path names SYNOPSIS
cc [ flag... ] file... -ldevinfo [ library... ] #include <libdevinfo.h> char *di_devfs_path(di_node_t node); char *di_devfs_minor_path(di_minor_t minor); char *di_path_devfs_path(di_path_t path); char *di_path_client_devfs_path(di_path_t path); void di_devfs_path_free(char *path_buf); PARAMETERS
node The handle to a device node in a di_init(3DEVINFO) snapshot. minor The handle to a device minor node in a snapshot. path The handle to a device path node in a snapshot. path_buf A pointer returned by di_devfs_path(), di_devfs_minor_path(), di_path_devfs_path(), or di_path_client_devfs_path(). DESCRIPTION
The di_devfs_path() function generates the physical path of the device node specified by node. The di_devfs_minor_path() function generates the physical path of the device minor node specified by minor. The di_path_devfs_path() function generates the pHCI physical path to the device associated with the specified path node. The returned string is identical to the di_devfs_path() for the device had the device not been supported by multipath. The di_path_client_devfs_path() function generates the vHCI physical path of the multipath client device node associated with the device identity of the specified path node. The returned string is identical to the di_devfs_path() of the multipath client device node. The di_devfs_path_free() function frees memory that was allocated to store the path returned by di_devfs_path(), di_devfs_minor_path(), di_path_devfs_path(), and di_path_client_devfs_path(). The caller is responsible for freeing this memory by calling di_devfs_path_free(). RETURN VALUES
Upon successful completion, the di_devfs_path(), di_devfs_minor_path(), di_path_devfs_path(), and di_path_client_devfs_path() functions return a pointer to the string containing the path to a device node, a device minor node, or a device path node, respectively. Otherwise, they return NULL and errno is set to indicate the error. For a non-NULL return, the path will not have a "/devices" prefix. ERRORS
The di_devfs_path(), di_devfs_minor_path(), di_path_devfs_path(), and di_path_client_devfs_path() functions will fail if: EINVAL The node, minor, or path argument is not a valid handle. The di_devfs_path(), di_devfs_minor_path(), di_path_devfs_path(), and di_path_client_devfs_path() functions can also return any error value returned by malloc(3C). ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |Safe | +-----------------------------+-----------------------------+ SEE ALSO
di_init(3DEVINFO), libdevinfo(3LIB), malloc(3C), attributes(5) Writing Device Drivers SunOS 5.11 15 May 2008 di_devfs_path(3DEVINFO)
Man Page