Wiring down devices with LSI 2308 / mps?

Scott Long scott4long at yahoo.com
Sat Feb 15 21:17:08 UTC 2014


Hi,

The LSI cards keep a persistent mapping of hard drive serial numbers to target numbers.  That way, when it’s in RAID mode and you pull a drive from one slot and put it into another slot, it’ll recognize that it’s the same drive and part of the same array set.  It’s incredibly annoying, and once the persistent mapping is created, it cannot be cleared just by turning off the RAID mode.  What we do at Netflix is use the a tool provided by LSI to clear out the persistent mapping (and all of NVRAM, actually), and then turn off the persistence feature.  Unfortunately, you’ll need to contact LSI directly for this tool.  Once you have it, I can share a script that performs the necessary actions.  Contact me off-list if you’d like more information.

Scott

On Feb 15, 2014, at 9:14 AM, Karl Pielorz <kpielorz_lst at tdx.co.uk> wrote:

> 
> Hi,
> 
> I've got a SuperMicro board that has an onboard LSI 2308 onboard. This appears using the mps driver:
> 
> "
> mps0: <LSI SAS2308> port 0xc200-0xc2ff mem 0xf33c0000-0xf33cffff,0xf3380000-0xf33bffff irq 44 at device 7.0 on pci0
> mps0: Firmware: 15.00.00.00, Driver: 16.00.00.00-fbsd
> mps0: IOCCapabilities:185c<ScsiTaskFull,DiagTrace,SnapBuf,EEDP,TransRetry,IR>
> "
> 
> I'd like to wire the devices down on this - but that doesn't seem to work :(
> 
> I tried this by putting entries in '/boot/device.hints' such as:
> 
> "
> hint.scbus.0.at="mps0"
> 
> hint.da.0.at="scbus0"
> hint.da.0.target="2"
> hint.da.0.unit="0"
> 
> hint.da.1.at="scbus0"
> hint.da.1.target="1"
> hint.da.1.unit="0"
> ...
> "
> 
> Testing though shows that maybe the controller itself is collapsing 'missing' ports/targets?
> 
> e.g. Attach a disk to 'Port 0' - and it shows as:
> 
> da2 at mps0 bus 0 scbus0 target 2 lun 0
> 
> Ok, target 2? - but at least that's mapped to da2 (wiring works)
> 
> Take the disk off, and connect it to Port 1 - and it shows as:
> 
> da2 at mps0 bus 0 scbus0 target 2 lun 0
> 
> Port 1 is target 2 as well? - Switch the drive to 'Port 2' - and you get:
> 
> da2 at mps0 bus 0 scbus0 target 2 lun 0
> 
> So port 2 is also target 2? (if the others aren't occupied)
> 
> Add a 2nd drive (to any port) and you get:
> 
> da3 at mps0 bus 0 scbus0 target 3 lun 0
> 
> 
> So the 'wiring down' is working - but it looks like the LSI collapses it's own 'missing drives'? - And starts at Target 2?
> 
> I can't see any setting in the LSI bios that would change this? - I'm presuming it must be possible not to have it do this - though searching the lists didn't turn anything obvious up...
> 
> Thanks,
> 
> -Karl
> 
> _______________________________________________
> 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"



More information about the freebsd-scsi mailing list