LSI 6Gb SAS driver committed

Andrew Boyer aboyer at averesystems.com
Tue Sep 21 16:14:51 UTC 2010


Folks,
This driver advertises support for PCI IDs 0x74, 0x76, and 0x77, LSI SAS2108-based products judging by the description.  Are these RAID-on-chip devices?  How do they work with this driver?  Has anyone tried it?

Does anybody know how those devices differ from the SAS2108-based MegaSAS Gen2 ID 0x79 supported by mfi?

I would really like to discard the hardware RAID functions of the MegaSAS and treat it like an HBA, but after adding the 0x79 ID to mps it wasn't able to initialize the card.

Thanks,
  Andrew

On Sep 10, 2010, at 11:04 AM, Kenneth D. Merry wrote:

> Hey folks,
> 
> I have commited the mps driver (LSI Logic 6Gb SAS controller driver) to the
> FreeBSD perforce server (//depot/projects/mps/... and FreeBSD-current.
> 
> The driver works with SAS and SATA drives, directly attached or attached
> through expanders.  Basic error recovery works as well (i.e. timeouts and
> aborts).
> 
> There are some known issues, including:
> 
> - No support for integrated RAID (IR) arrays.
> 
> - Devices tend to disappear and come back in one of my configurations.  I
>   also see some phantom devices, and events that don't make sense:
> 
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> (da2:mps0:0:6:0): SCSI command timeout on device handle 0x0017 SMID 90
> mps0: mpssas_abort_complete: abort request on handle 0x17 SMID 90 complete
> mps0: Unhandled event 0x0
> (probe2:mps0:0:2:0): AutoSense failed
> mps0: Unhandled event 0x0
> (da10:mps0:0:0:0): unsupportable block size 0
> (da10:mps0:0:0:0): lost device
> (da10:mps0:0:0:0): removing device entry
> (da2:mps0:0:6:0): lost device
> (da2:mps0:0:6:0): removing device entry
> da2 at mps0 bus 0 scbus0 target 6 lun 0
> da2: <ATA ST3160023AS 3.05> Fixed Direct Access SCSI-5 device
> da2: 150.000MB/s transfers
> da2: Command Queueing enabled
> da2: 152627MB (312581808 512 byte sectors: 255H 63S/T 19457C)
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> mps0: Unhandled event 0x0
> 
> 
> - Sometimes you'll run into a device that fails part of the probe on boot,
>   and you'll end up running into the run_interrupt_driven_config_hooks
>   timeout.  You see some aborts during probe, and then the 5 minute probe
>   timeout kicks in and panics the kernel.  For instance:
> 
> (probe4:mps0:0:20:0): SCSI command timeout on device handle 0x0012 SMID 81
> mps0: mpssas_abort_complete: abort request on handle 0x12 SMID 81 complete
> run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config
> (probe4:mps0:0:20:0): SCSI command timeout on device handle 0x0012 SMID 214
> mps0: mpssas_abort_complete: abort request on handle 0x12 SMID 214 complete
> run_interrupt_driven_hooks: still waiting after 120 seconds for xpt_config
> run_interrupt_driven_hooks: still waiting after 180 seconds for xpt_config
> (probe4:mps0:0:20:0): SCSI command timeout on device handle 0x0012 SMID 281
> mps0: mpssas_abort_complete: abort request on handle 0x12 SMID 281 complete
> run_interrupt_driven_hooks: still waiting after 240 seconds for xpt_config
> (probe4:mps0:0:20:0): SCSI command timeout on device handle 0x0012 SMID 348
> mps0: mpssas_abort_complete: abort request on handle 0x12 SMID 348 complete
> run_interrupt_driven_hooks: still waiting after 300 seconds for xpt_config
> (probe4:mps0:0:20:0): SCSI command timeout on device handle 0x0012 SMID 415
> mps0: mpssas_abort_complete: abort request on handle 0x12 SMID 415 complete
> panic: run_interrupt_driven_config_hooks: waited too long
> cpuid = 0
> KDB: enter: panic
> [ thread pid 0 tid 100000 ]
> Stopped at      kdb_enter+0x3d: movq    $0,0x4c70b0(%rip)
> db>
> 
> - ioctl support isn't complete, and there is no userland utility.
> 
> - There is no man page.
> 
> The driver is in the tree at this point to allow people to test it out,
> report any problems, and hopefully contribute bug fixes.
> 
> LSI has some developers working on this driver, and we hope to get them to
> put some of their work-in-progress in the FreeBSD Perforce repo.  So, in
> view of that, if you make any changes to the driver, please make them in
> the FreeBSD Perforce repository first (in //depot/projects/mps/...) and
> then merge them into FreeBSD-current.
> 
> Thanks to Scott Long for writing the driver, and to Yahoo and Spectra Logic
> for sponsoring the work.
> 
> Ken
> -- 
> Kenneth Merry
> ken at FreeBSD.ORG
> _______________________________________________
> freebsd-scsi at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-scsi
> To unsubscribe, send any mail to "freebsd-scsi-unsubscribe at freebsd.org"

--------------------------------------------------
Andrew Boyer	aboyer at averesystems.com






More information about the freebsd-scsi mailing list