⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xderr.h

📁 操作系统SunOS 4.1.3版本的源码
💻 H
字号:
/*      @(#)xderr.h 1.1 92/07/30 SMI   *//* * Copyright (c) 1987 by Sun Microsystems, Inc. *//* * Declarations of the error structures for the Xylogics 7053 driver. * They are separated to allow user programs access to the information. *//* * List of actions to be taken for each class of error. * NOTE: the levels are symbolicly defined below, so * this ordering is required.  NOTE: the controller spec suggests not * attempting to recover from fatal errors, but we're paranoid and * give it a try anyway. */struct xderract {	u_char	retry;		/* number of retries */	u_char	restore;	/* number of drive resets */	u_char	reset;		/* number of controller resets */} xderracts[] = {	0,	0,	0,	/* level 0 = XD_ERCOR */	2,	0,	0,	/* level 1 = XD_ERTRY */	5,	0,	0,	/* level 2 = XD_ERBSY */	0,	2,	0,	/* level 3 = XD_ERFLT */	0,	0,	1,	/* level 4 = XD_ERHNG */	1,	1,	0,	/* level 5 = XD_ERFTL */};/* * The classes of errors. */#define XD_ERCOR	0x00		/* corrected error */#define XD_ERTRY	0x01		/* retryable error */#define XD_ERBSY	0x02		/* drive busy error */#define XD_ERFLT	0x03		/* drive faulted error */#define XD_ERHNG	0x04		/* controller hung error */#define XD_ERFTL	0x05		/* fatal error *//* * Error codes */#define	XDE_OK		0x00		/* successful completion */#define	XDE_SFMF	0x01		/* set format fields 5 and 5A only */#define	XDE_CADR	0x10		/* illegal cylinder address */#define	XDE_HADR	0x11		/* illegal head address */#define	XDE_SADR	0x12		/* illegal sector address */#define	XDE_0CNT	0x13		/* count zero */#define	XDE_ILLC	0x14		/* unimplemented command */#define	XDE_IFL1	0x15		/* illegal field length 1 */#define	XDE_IFL2	0x16		/* illegal field length 2 */#define	XDE_IFL3	0x17		/* illegal field length 3 */#define	XDE_IFL4	0x18		/* illegal field length 4 */#define	XDE_IFL5	0x19		/* illegal field length 5 */#define	XDE_IFL6	0x1a		/* illegal field length 6 */#define	XDE_IFL7	0x1b		/* illegal field length 7 */#define	XDE_ISGL	0x1c		/* illegal scatter/gather length */#define	XDE_NSEC	0x1d		/* not enough sectors/track */#define	XDE_ALGN	0x1e		/* next iopb alignment error */#define	XDE_SGAA	0x1f		/* scatter/gather addr alignment */#define	XDE_SGAE	0x20		/* scatter/gather with auto ecc */#define	XDE_HOLE	0x21		/* illegal black hole address */#define	XDE_FECC	0x30		/* soft ecc corrected */#define	XDE_ECCI	0x31		/* ecc ignored */#define	XDE_SRTY	0x32		/* auto seek retry recovered */#define	XDE_SFTR	0x33		/* soft retry recovered */#define	XDE_HECC	0x40		/* hard data ecc */#define	XDE_HDNF	0x41		/* header not found */#define	XDE_NRDY	0x42		/* drive not ready */#define	XDE_OPTO	0x43		/* operation timeout */#define	XDE_DMAT	0x44		/* vmedma timeout */#define	XDE_DSEQ	0x45		/* disk sequencer error */#define	XDE_BPER	0x46		/* fifo parity error */#define	XDE_DPBY	0x47		/* dual port busy timeout */#define	XDE_HDEC	0x48		/* header ecc error */#define	XDE_RVER	0x49		/* read verify */#define	XDE_FDMA	0x4a		/* fatal vmedma error */#define	XDE_VMEB	0x4b		/* vmebus error */#define XDE_LINT	0x50		/* lost interrupt */#define XDE_FERR	0x51		/* fatal error */#define	XDE_DFLT	0x60		/* drive faulted */#define	XDE_CHER	0x61		/* header error/cylinder */#define	XDE_HHER	0x62		/* header error/head */#define	XDE_OFCL	0x63		/* drive not on-cylinder */#define	XDE_SEEK	0x64		/* seek error */#define	XDE_SSIZ	0x70		/* illegal sector size */#define	XDE_FIRM	0x71		/* firmware failure */#define	XDE_SECC	0x80		/* soft ecc */#define	XDE_IRAM	0x81		/* iram checksum failure */#define	XDE_PROT	0x90		/* write protect error */#define XDE_FIST	0xe1		/* IRAM self test failure */#define XDE_FMT3	0xe3		/* MTest 3 Fail (dskcel ram) */#define XDE_FMT4	0xe4		/* MTest 4 Fail (header shift reg) */#define XDE_FMT5	0xe5		/* MTest 5 Fail (vmedma reg) */#define XDE_FMT6	0xe6		/* MTest 6 Fail (regcel chip) */#define XDE_FMT7	0xe7		/* MTest 7 Fail (buffer parity) */#define XDE_FMT8	0xe8		/* MTest 8 Fail (disk fifo) */#define XDE_FCKS	0xf0		/* iopb checksum miscompare */#define XDE_FIDF	0xf1		/* iopb dma fatal */#define XDE_FALN	0xf2		/* iopb address alignment error */#define XDE_FFWR	0xf3		/* firmware error */#define XDE_FIMT	0xf5		/* illegal maintenance mode test */#define XDE_FACF	0xf6		/* acfail asserted */#define XDE_UNKN	0xff	    /* unknown error *//* * List of each recognizable error. * The list is sorted from most likely to least likely error, using * the best guess algorithm. * NOTE : the entries for success and unknown error MUST remain first and * last respectively on the list due to the algorithm for finding errors. */struct xderror {	u_char	errno;		/* error number */	u_char	errlevel;	/* error level (corrected, fatal, etc) */	u_char	errtype;	/* error type (media vs nonmedia) */	char	*errmsg;	/* error message */} xderrors[] = {#ifndef BOOTBLOCK	XDE_OK,   XD_ERCOR,     DK_NONMEDIA,    "spurious err",	XDE_NRDY, XD_ERBSY,     DK_NONMEDIA,    "drive not ready",	XDE_FECC, XD_ERCOR,     DK_ISMEDIA,     "soft ecc corrected",	XDE_SRTY, XD_ERCOR,     DK_NONMEDIA,    "seek retry",	XDE_SFTR, XD_ERCOR,     DK_NONMEDIA,    "soft retry",	XDE_HECC, XD_ERTRY,     DK_ISMEDIA,     "hard data ecc",	XDE_HDNF, XD_ERTRY,     DK_ISMEDIA,     "header not found",	XDE_OPTO, XD_ERTRY,     DK_NONMEDIA,    "operation timeout",	XDE_DMAT, XD_ERTRY,     DK_NONMEDIA,    "vmedma timeout",	XDE_DSEQ, XD_ERFLT,     DK_NONMEDIA,    "disk sequencer err",	XDE_BPER, XD_ERTRY,     DK_NONMEDIA,    "fifo parity err",	XDE_HDEC, XD_ERTRY,     DK_ISMEDIA,     "header ecc err",	XDE_RVER, XD_ERTRY,     DK_ISMEDIA,     "read verify err",	XDE_FDMA, XD_ERTRY,     DK_NONMEDIA,    "fatal vmedma err",	XDE_VMEB, XD_ERTRY,     DK_NONMEDIA,    "vmebus err",	XDE_DPBY, XD_ERBSY,     DK_NONMEDIA,    "dual port busy",	XDE_DFLT, XD_ERFLT,     DK_NONMEDIA,    "drive faulted",	XDE_CHER, XD_ERFLT,     DK_ISMEDIA,     "cyl header err",	XDE_HHER, XD_ERFLT,     DK_ISMEDIA,     "head header err",	XDE_OFCL, XD_ERFLT,     DK_NONMEDIA,    "drive not on cyl",	XDE_SEEK, XD_ERFLT,     DK_NONMEDIA,    "drive seek err",	XDE_LINT, XD_ERHNG,     DK_NONMEDIA,    "lost interrupt",	XDE_FERR, XD_ERFLT,	DK_NONMEDIA,	"fatal err",	XDE_FIST, XD_ERFLT,	DK_NONMEDIA,	"fatal err: iram self test",	XDE_FMT3, XD_ERFLT,	DK_NONMEDIA,	"fatal err: test 3",	XDE_FMT4, XD_ERFLT,	DK_NONMEDIA,	"fatal err: test 4",	XDE_FMT5, XD_ERFLT,	DK_NONMEDIA,	"fatal err: test 5",	XDE_FMT6, XD_ERFLT,	DK_NONMEDIA,	"fatal err: test 6",	XDE_FMT7, XD_ERFLT,	DK_NONMEDIA,	"fatal err: test 7",	XDE_FMT8, XD_ERFLT,	DK_NONMEDIA,	"fatal err: test 8",	XDE_FCKS, XD_ERFLT,	DK_NONMEDIA,	"fatal err: iopb checksum",	XDE_FIDF, XD_ERFLT,	DK_NONMEDIA,	"fatal err: iopb dma",	XDE_FALN, XD_ERFLT,	DK_NONMEDIA,	"fatal err: iopb addr align",	XDE_FFWR, XD_ERFLT,	DK_NONMEDIA,	"fatal err: firmware err",	XDE_FIMT, XD_ERFLT,	DK_NONMEDIA,	"fatal err: ill test",	XDE_FACF, XD_ERFLT,	DK_NONMEDIA,	"fatal err: acfail asserted",	XDE_PROT, XD_ERFTL,     DK_NONMEDIA,    "write protect err",	XDE_ILLC, XD_ERFTL,     DK_NONMEDIA,    "unimp cmd",	XDE_0CNT, XD_ERFTL,     DK_NONMEDIA,    "zero sec count",	XDE_SSIZ, XD_ERFTL,     DK_NONMEDIA,    "ill sec size",	XDE_FIRM, XD_ERFTL,     DK_NONMEDIA,    "firmware failure",	XDE_CADR, XD_ERFTL,     DK_NONMEDIA,    "cyl addr err",	XDE_HADR, XD_ERFTL,     DK_NONMEDIA,    "head addr err",	XDE_SADR, XD_ERFTL,     DK_NONMEDIA,    "sec addr err",	XDE_IFL1, XD_ERFTL,     DK_NONMEDIA,    "illfld len 1",	XDE_IFL2, XD_ERFTL,     DK_NONMEDIA,    "illfld len 2",	XDE_IFL3, XD_ERFTL,     DK_NONMEDIA,    "illfld len 3",	XDE_IFL4, XD_ERFTL,     DK_NONMEDIA,    "illfld len 4",	XDE_IFL5, XD_ERFTL,     DK_NONMEDIA,    "illfld len 5",	XDE_IFL6, XD_ERFTL,     DK_NONMEDIA,    "illfld len 6",	XDE_IFL7, XD_ERFTL,     DK_NONMEDIA,    "illfld len 7",	XDE_ISGL, XD_ERFTL,     DK_NONMEDIA,    "illfld/gather len",	XDE_NSEC, XD_ERFTL,     DK_NONMEDIA,    "not enough sec/track",	XDE_ALGN, XD_ERFTL,     DK_NONMEDIA,    "iopb alignment err",	XDE_SECC, XD_ERFTL,     DK_ISMEDIA,     "soft ecc err",	XDE_IRAM, XD_ERFTL,     DK_NONMEDIA,    "iram checksum err",	XDE_ECCI, XD_ERFTL,     DK_ISMEDIA,     "ecc err ignored",	XDE_SFMF, XD_ERCOR,     DK_NONMEDIA,    "set format field 5, 5A",	XDE_SGAA, XD_ERFTL,     DK_NONMEDIA,    "scatter/gather addr alignment",	XDE_SGAE, XD_ERFTL,     DK_NONMEDIA,    "scatter/gather with auto ecc",	XDE_HOLE, XD_ERFTL,     DK_NONMEDIA,    "ill black hole address",	XDE_UNKN, XD_ERFTL,     DK_NONMEDIA,    "unknown err",#else BOOTBLOCK	XDE_OK,   XD_ERCOR,     DK_NONMEDIA,    "err 0",	XDE_NRDY, XD_ERBSY,     DK_NONMEDIA,    "err 1",	XDE_FECC, XD_ERCOR,     DK_ISMEDIA,     "err 2",	XDE_SRTY, XD_ERCOR,     DK_NONMEDIA,    "err 3",	XDE_SFTR, XD_ERCOR,     DK_NONMEDIA,    "err 4",	XDE_HECC, XD_ERTRY,     DK_ISMEDIA,     "err 5",	XDE_HDNF, XD_ERTRY,     DK_ISMEDIA,     "err 6",	XDE_OPTO, XD_ERTRY,     DK_NONMEDIA,    "err 7",	XDE_DMAT, XD_ERTRY,     DK_NONMEDIA,    "err 8",	XDE_DSEQ, XD_ERFLT,     DK_NONMEDIA,    "err 9",	XDE_BPER, XD_ERTRY,     DK_NONMEDIA,    "err 10",	XDE_HDEC, XD_ERTRY,     DK_ISMEDIA,     "err 11",	XDE_RVER, XD_ERTRY,     DK_ISMEDIA,     "err 12",	XDE_FDMA, XD_ERTRY,     DK_NONMEDIA,    "err 13",	XDE_VMEB, XD_ERTRY,     DK_NONMEDIA,    "err 14",	XDE_DPBY, XD_ERBSY,     DK_NONMEDIA,    "err 15",	XDE_DFLT, XD_ERFLT,     DK_NONMEDIA,    "err 16",	XDE_CHER, XD_ERFLT,     DK_ISMEDIA,     "err 17",	XDE_HHER, XD_ERFLT,     DK_ISMEDIA,     "err 18",	XDE_OFCL, XD_ERFLT,     DK_NONMEDIA,    "err 19",	XDE_SEEK, XD_ERFLT,     DK_NONMEDIA,    "err 20",	XDE_LINT, XD_ERHNG,     DK_NONMEDIA,    "err 21",	XDE_FERR, XD_ERFLT,	DK_NONMEDIA,	"err 22",	XDE_FIST, XD_ERFLT,	DK_NONMEDIA,	"err 23",	XDE_FMT3, XD_ERFLT,	DK_NONMEDIA,	"err 24",	XDE_FMT4, XD_ERFLT,	DK_NONMEDIA,	"err 25",	XDE_FMT5, XD_ERFLT,	DK_NONMEDIA,	"err 26",	XDE_FMT6, XD_ERFLT,	DK_NONMEDIA,	"err 27",	XDE_FMT7, XD_ERFLT,	DK_NONMEDIA,	"err 28",	XDE_FMT8, XD_ERFLT,	DK_NONMEDIA,	"err 29",	XDE_FCKS, XD_ERFLT,	DK_NONMEDIA,	"err 30",	XDE_FIDF, XD_ERFLT,	DK_NONMEDIA,	"err 31",	XDE_FALN, XD_ERFLT,	DK_NONMEDIA,	"err 32",	XDE_FFWR, XD_ERFLT,	DK_NONMEDIA,	"err 33",	XDE_FIMT, XD_ERFLT,	DK_NONMEDIA,	"err 34",	XDE_FACF, XD_ERFLT,	DK_NONMEDIA,	"err 35",	XDE_PROT, XD_ERFTL,     DK_NONMEDIA,    "err 36",	XDE_ILLC, XD_ERFTL,     DK_NONMEDIA,    "err 37",	XDE_0CNT, XD_ERFTL,     DK_NONMEDIA,    "err 38",	XDE_SSIZ, XD_ERFTL,     DK_NONMEDIA,    "err 39",	XDE_FIRM, XD_ERFTL,     DK_NONMEDIA,    "err 40",	XDE_CADR, XD_ERFTL,     DK_NONMEDIA,    "err 41",	XDE_HADR, XD_ERFTL,     DK_NONMEDIA,    "err 42",	XDE_SADR, XD_ERFTL,     DK_NONMEDIA,    "err 43",	XDE_IFL1, XD_ERFTL,     DK_NONMEDIA,    "err 44",	XDE_IFL2, XD_ERFTL,     DK_NONMEDIA,    "err 45",	XDE_IFL3, XD_ERFTL,     DK_NONMEDIA,    "err 46",	XDE_IFL4, XD_ERFTL,     DK_NONMEDIA,    "err 47",	XDE_IFL5, XD_ERFTL,     DK_NONMEDIA,    "err 48",	XDE_IFL6, XD_ERFTL,     DK_NONMEDIA,    "err 49",	XDE_IFL7, XD_ERFTL,     DK_NONMEDIA,    "err 50",	XDE_ISGL, XD_ERFTL,     DK_NONMEDIA,    "err 51",	XDE_NSEC, XD_ERFTL,     DK_NONMEDIA,    "err 52",	XDE_ALGN, XD_ERFTL,     DK_NONMEDIA,    "err 53",	XDE_SECC, XD_ERFTL,     DK_ISMEDIA,     "err 54",	XDE_IRAM, XD_ERFTL,     DK_NONMEDIA,    "err 55",	XDE_ECCI, XD_ERFTL,     DK_ISMEDIA,     "err 56",	XDE_SFMF, XD_ERCOR,     DK_NONMEDIA,    "err 57",	XDE_SGAA, XD_ERFTL,     DK_NONMEDIA,    "err 58",	XDE_SGAE, XD_ERFTL,     DK_NONMEDIA,    "err 59",	XDE_HOLE, XD_ERFTL,     DK_NONMEDIA,    "err 60",	XDE_UNKN, XD_ERFTL,     DK_NONMEDIA,    "err 61",#endif BOOTBLOCK};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -