man Pages(7): Special Files
  Sök endast i den här boken
Ladda ner denna bok i PDF

NAME

hdio - SMD and IPI disk control operations

SYNOPSIS

#include <sys/hdio.h>

DESCRIPTION

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>.

IOCTLS

HDKIOCGTYPE The argument is a pointer to a hdk_type structure (described below).
This ioctl( ) gets specific information from the hard disk.
HDKIOCSTYPE 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 {
                      u_short    hdkt_hsect;         /* hard sector count (read only) * /
                      u_short    hdkt_promrev;       /* prom revision (read only) * /
                      u_char     hdkt_drtype;        /* drive type (ctlr specific) * /
                      u_char     hdkt_drstat;        /* drive status (ctlr specific, ro) * /
                };

HDKIOCGBAD 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.
HDKIOCSBAD
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 * /
                };

HDKIOCGDIAG
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 {
     u_short    hdkd_errcmd;        /* most recent command in error * /
     daddr_t    hdkd_errsect;       /* most recent sector in error * /
     u_char     hdkd_errno;         /* most recent error number * /
     u_char     hdkd_severe;        /* severity of most recent error * /
};

SEE ALSO

ioctl(2), dkio(7), ipi(7), xd(7), xy(7)