Skip Navigation Links | |
Exit Print View | |
man pages section 7: Device and Network Interfaces Oracle Solaris 11.1 Information Library |
- SMD and IPI disk control operations
#include <sys/hdio.h>
Note - The SMC and IPI drivers have been discontinued. dkio(7I) is now the preferred method for retrieving disk information.
The SMD and IPI disk drivers supplied with this release support a set of ioctl(2) requests for diagnostics and bad sector information. Basic to these ioctl() requests are the definitions in <sys/hdio.h>.
The argument is a pointer to a hdk_type structure (described below). This ioctl() gets specific information from the hard disk.
The argument is a pointer to a hdk_type structure (described below). This ioctl() sets specific information about the hard disk.
/* * Used for drive info */ struct hdk_type { ushort_t hdkt_hsect; /* hard sector count (read only) */ ushort_t hdkt_promrev; /* prom revision (read only) */ uchar_t hdkt_drtype; /* drive type (ctlr specific) */ uchar_t hdkt_drstat; /* drive status (ctlr specific, ro) */ };
The argument is a pointer to a hdk_badmap structure (described below). This ioctl() is used to get the bad sector map from the disk.
The argument is a pointer to a hdk_badmap structure (described below). This ioctl() is used to set the bad sector map on the disk.
/* * Used for bad sector map */ struct hdk_badmap { caddr_t hdkb_bufaddr; /* address of user's map buffer */ };
The argument is a pointer to a hdk_diag structure (described below). This ioctl() gets the most recent command that failed along with the sector and error number from the hard disk.
/* * Used for disk diagnostics */ struct hdk_diag { ushort_t hdkd_errcmd; /* most recent command in error */ daddr_t hdkd_errsect; /* most recent sector in error */ uchar_t hdkd_errno; /* most recent error number */ uchar_t hdkd_severe; /* severity of most recent error */ };