mlx
—
Mylex DAC-family RAID driver
To compile this driver into the kernel, place the following lines in your kernel
configuration file:
device pci
device mlx
Alternatively, to load the driver as a module at boot time, place
the following line in
loader.conf(5):
The mlx
driver provides support for Mylex DAC-family PCI
to SCSI RAID controllers, including versions relabeled by Digital/Compaq.
Controllers supported by the mlx
driver include:
- Mylex DAC960P
- Mylex DAC960PD / DEC KZPSC (Fast Wide)
- Mylex DAC960PDU
- Mylex DAC960PL
- Mylex DAC960PJ
- Mylex DAC960PG
- Mylex DAC960PU / DEC PZPAC (Ultra Wide)
- Mylex AcceleRAID 150 (DAC960PRL)
- Mylex AcceleRAID 250 (DAC960PTL1)
- Mylex eXtremeRAID 1100 (DAC1164P)
- RAIDarray 230 controllers, aka the Ultra-SCSI DEC KZPAC-AA (1-ch, 4MB
cache), KZPAC-CA (3-ch, 4MB), KZPAC-CB (3-ch, 8MB cache)
All major firmware revisions (2.x, 3.x, 4.x and 5.x) are
supported, however it is always advisable to upgrade to the most recent
firmware available for the controller.
Compatible Mylex controllers not listed should work, but have not
been verified.
- mlx%d: controller initialisation in progress...
- mlx%d: initialisation complete
-
The controller firmware is performing/has completed
initialisation.
- mlx%d: physical drive %d:%d not responding
-
The drive at channel:target is not responding; it may have
failed or been removed.
- mlx%d: spinning up drives...
-
Drive startup is in progress; this may take several
minutes.
- mlx%d: configuration checksum error
-
The array configuration has become corrupted.
- mlx%d: mirror race recovery in progress
- mlx%d: mirror race on a critical system drive
- mlx%d: mirror race recovery failed
-
These error codes are undocumented.
- mlx%d: physical drive %d:%d COD mismatch
-
Configuration data on the drive at channel:target does not
match the rest of the array.
- mlx%d: system drive installation aborted
-
Errors occurred preventing one or more system drives from
being configured.
- mlx%d: new controller configuration found
-
The controller has detected a configuration on disk which
supersedes the configuration in its nonvolatile memory. It will reset
and come up with the new configuration.
- mlx%d: FATAL MEMORY PARITY ERROR
-
Firmware detected a fatal memory error; the driver will not
attempt to attach to this controller.
- mlx%d: unknown firmware initialisation error %x:%x:%x
-
An unknown error occurred during initialisation; it will be
ignored.
- mlx%d: can't allocate scatter/gather DMA tag
- mlx%d: can't allocate buffer DMA tag
- mlx%d: can't allocate s/g table
- mlx%d: can't make initial s/g list mapping
- mlx%d: can't make permanent s/g list mapping
- mlx%d: can't allocate interrupt
- mlx%d: can't set up interrupt
-
A resource allocation error occurred while initialising the
driver; initialisation has failed and the driver will not attach to this
controller.
- mlx%d: error fetching drive status
-
The current status of all system drives could not be fetched;
attachment of system drives will be aborted.
- mlx%d: device_add_child failed
- mlx%d: bus_generic_attach returned %d
-
Creation of the system drive instances failed; attachment of
one or more system drives may have been aborted.
- mlxd%d: detaching...
-
The indicated system drive is being detached.
- mlxd%d: still open, can't detach
-
The indicated system drive is still open or mounted; the
controller cannot be detached.
- mlx%d: flushing cache...
-
The controller cache is being flushed prior to detach or
shutdown.
- mlx%d: ENQUIRY failed - %s
- mlx%d: ENQUIRY2 failed
- mlx%d: ENQUIRY_OLD failed
- mlx%d: FLUSH failed - %s
- mlx%d: CHECK ASYNC failed - %s
- mlx%d: REBUILD ASYNC failed - %s
- mlx%d: command failed - %s
-
The controller rejected a command for the reason given.
- mlx%d: I/O beyond end of unit (%u,%d > %u)
- mlx%d: I/O error - %s
-
An I/O error was reported by the controller.
- mlx%d: periodic enquiry failed - %s
-
An attempt to poll the controller for status failed for the
reason given.
- mlx%d: mlx_periodic_enquiry: unknown command %x
-
The periodic status poll has issued a command which has become
corrupted.
- mlxd%d: drive offline
- mlxd%d: drive online
- mlxd%d: drive critical
-
The system disk indicated has changed state.
- mlx%d: physical drive %d:%d reset
- mlx%d: physical drive %d:%d killed %s
- mlx%d: physical drive %d:%d error log: sense = %d asc = %x asq = %x
- mlx%d: info %4D csi %4D
-
The drive at channel:target has been reset, killed for the
given reason, or experienced a SCSI error.
- mlx%d: unknown log message type %x
- mlx%d: error reading message log - %s
-
An error occurred while trying to read the controller's
message log.
- mlxd%d: consistency check started
- mlx%d: consistency check completed
-
A user-initiated consistency check has started/completed.
- mlx%d: drive rebuild started for %d:%d
- mlx%d: drive rebuild completed
-
A user-initiated physical drive rebuild has
started/completed.
- mlx%d: background check/rebuild operation started
- mlx%d: background check/rebuild operation completed
-
An automatic system drive consistency check or physical drive
rebuild has started/completed.
- mlx%d: channel %d pausing for %d seconds
- mlx%d: channel %d resuming
- mlx%d: pause command failed - %s
- mlx%d: pause failed for channel %d
- mlx%d: resume command failed - %s
- mlx%d: resume failed for channel %d
-
Controller/channel pause operation notification. (Channel
pause is not currently supported on any controller.)
- mlx%d: controller wedged (not taking commands)
-
The controller is not responding to attempts to submit new
commands.
- mlx%d: duplicate done event for slot %d
- mlx%d: done event for nonbusy slot %d
-
Corruption has occurred in either the controller's onboard
list of commands or in the driver.
The DEC KZPSC has insufficient flash ROM to hold any reasonably recent firmware.
This has caused problems for this driver.
The driver does not yet support the version 6.x firmware as found
in the AcceleRAID 352 and eXtremeRAID 2000 and 3000 products.