IOCTL commands

This section describes the IOCTL commands supported.

Note:

The RVG must be started for the IOCTLs to succeed.

RVG devices support five special ioctls: RV_IBC_REGISTER, RV_IBC_UNREGISTER, RV_IBC_SEND, RV_IBC_RECEIVE, and RV_IBC_UNFREEZE. The format for calling each ioctl command is:

  # include <vxvm/voldefs.h>
    # include <vxvm/volioctl.h>
    # include <vxvm/volibc.h>
int ioctl(int fd, int cmd, void *arg);

Include the path /opt/VRTSvxvm/include to build your program.

The argument fd is the file descriptor obtained by opening the RVG device using the open (2) system call.

The value of cmd is the ioctl command code, and arg is a pointer to a structure containing the arguments to be passed to the kernel. Definitions of the argument structures for each ioctl are described below.

The return value for all ioctls is 0 if the command was successful, and -1 if it was rejected. If the return value is -1, then errno is set to indicate the cause of the error.