MLX(4) MidnightBSD Kernel Interfaces Manual MLX(4)

NAME

mlx — Mylex DAC-family RAID driver

SYNOPSIS

device pci
device mlx

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

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 driver does not yet support EISA adapters. 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.

MidnightBSD 0.3 August 10, 2004 MidnightBSD 0.3