MLX(4)

NAME
mlx - Mylex DAC-family RAID driver

SYNOPSIS
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):

    mlx_load="YES"

DESCRIPTION
The mlx driver provides support for Mylex DAC-family PCI to SCSI RAID controllers, including versions relabeled by Digital/Compaq.

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

DIAGNOSTICS

  Controller initialisation phase

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.

  Driver initialisation/shutdown phase:

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.

  Operational diagnostics:

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.

SEE ALSO
mlxcontrol(8)

AUTHORS
-nosplit The mlx driver was written by Michael Smith <msmith@FreeBSD.org>.

This manual page was written by Jeroen Ruigrok van der Werven <asmodai@FreeBSD.org> and Michael Smith <msmith@FreeBSD.org>.

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