LSI2008 controller clobbers first disk with new LSI mps driver

Desai, Kashyap Kashyap.Desai at lsi.com
Mon Feb 20 10:24:58 UTC 2012


Jason,

I tried to reproduce similar issue using multiple h/w but not success in reproduction.
Also code does not looks very obvious issues which can be identify through code review.

Can you send me the output of below command.

"lsiutil -a 0 100 > /tmp/a.out"

` Kashyap

> -----Original Message-----
> From: owner-freebsd-scsi at freebsd.org [mailto:owner-freebsd-
> scsi at freebsd.org] On Behalf Of Desai, Kashyap
> Sent: Saturday, February 18, 2012 1:28 AM
> To: Jason Wolfe
> Cc: freebsd-scsi at freebsd.org; McConnell, Stephen
> Subject: RE: LSI2008 controller clobbers first disk with new LSI mps
> driver
> 
> Jason,
> 
> Thanks for the data. Now, I am able to understand real issue.  See below
> details from debug logs.
> See my comment with << marks.
> 
> mps0: SAS Address from SAS device page0 = 5000c50033f5cdb5
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x000a> <2/0>
> mps0: Target id 0x8 added
> <<------------------------------------->>
> Here suppose to be a boot device and it is device connected to slot-0,
> detected
> Very well as first device at driver. Assigned Target id = 8.
> This is as expected.
> <<------------------------------------->>
> mps0: SAS Address from SAS device page0 = 5000c50033f49c01
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x000b> <2/1>
> mps0: Target id 0x9 added
> mps0: SAS Address from SAS device page0 = 5000c50033f6c799
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x000c> <2/2>
> mps0: Target id 0xa added
> mps0: SAS Address from SAS device page0 = 5000c50033e562f5
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x000d> <2/3>
> mps0: Target id 0xb added
> mps0: SAS Address from SAS device page0 = 5000c50033f49a41
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x000e> <2/4>
> mps0: Target id 0xc added
> mps0: SAS Address from SAS device page0 = 5000c50033f5efe9
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x000f> <2/5>
> mps0: Target id 0xd added
> mps0: SAS Address from SAS device page0 = 5000c50033f49a11
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x0010> <2/6>
> mps0: Target id 0xe added
> mps0: SAS Address from SAS device page0 = 5000c50033f49c71
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x0011> <2/7>
> mps0: Target id 0xf added
> mps0: SAS Address from SAS device page0 = 5000c50033f40fb1
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x0012> <2/8>
> mps0: Target id 0x10 added
> mps0: SAS Address from SAS device page0 = 5000c50033f6cba9
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x0013> <2/9>
> mps0: Target id 0x11 added
> mps0: (13)->(mpssas_fw_work) Event Free: [1c]
> mps0: (13)->(mpssas_fw_work) Working on  Event: [1c]
> mps0: SAS Address from SAS device page0 = 5000c50033f650cd
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x0014> <2/10>
> mps0: Target id 0x12 added
> mps0: SAS Address from SAS device page0 = 5000c50033f29109
> mps0: Found device <401<SspTarg>,End Device> <6.0Gbps> <0x0015> <2/11>
> mps0: Target id 0x13 added
> <<-- Now Driver detects SES devices. -->>
> _But_ unfortunetly driver assign Target-id = 8 to the SES device.
> This will override device mapping table of Drive and Target-id = 8 is no
> more your boot device which was detected very first.
> This needs to be fix in driver. I am currently not in office. (Working
> at Asia pacific time zone)
> I will have a look of this and provide you some solution.
> <<------------------------------------->>
> mps0: SAS Address from SAS device page0 = 500304800126e3fd
> mps0: Found device <4451<SmpInit,SspInit,SspTarg,SepDev>,End Device>
> <6.0Gbps> <0x0016> <2/0>
> mps0: Target id 0x8 added
> mps0: mpssas_startup_decrement releasing simq
> mps0: Queueing rescan for (xpt0:mps0:0:-1:-1):
> 
> 
> ~ Kashyap
> 
> > -----Original Message-----
> > From: Jason Wolfe [mailto:nitroboost at gmail.com]
> > Sent: Saturday, February 18, 2012 1:00 AM
> > To: Desai, Kashyap
> > Cc: Maksim Yevmenkin; freebsd-scsi at freebsd.org
> > Subject: Re: LSI2008 controller clobbers first disk with new LSI mps
> > driver
> >
> > Kashyap,
> >
> > The boot drive is always the first disk, enclosure 0, and should be
> da0.
> > It is the same model as the other 11 disks also.
> >
> > PCI  ENCL LUN VENDOR   PRODUCT          PRODUCT     SIZE \
> > SLOT SLOT NUM NAME     IDENTIFIER       REVISION    NVDATA
> > ---- ---- --- -------- ---------------- ----------- ---------
> >   5           LSI      SAS2008-IT       10.00.02.00  0A:02:00:04
> >   5    0   0  SEAGATE  ST91000640SS     0001           953 GB
> > <-------- boot drive/wanted da0/masked by ses device
> >   5    1   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    2   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    3   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    4   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    5   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    6   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    7   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    8   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5    9   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5   10   0  SEAGATE  ST91000640SS     0001           953 GB
> >   5   11   0  SEAGATE  ST91000640SS     0001           953 GB
> >
> > Attached is the verbose dmesg with the mps.debuglevel set.
> >
> > Jason
> >
> > On Fri, Feb 17, 2012 at 11:54 AM, Desai, Kashyap
> <Kashyap.Desai at lsi.com>
> > wrote:
> > >
> > >
> > > OK, So you have your / partion on da0. (this drive is attached to
> > > which phy ?) Since all Drive are from same manufacture and Same
> > variant, it is difficult to collect data from this dmesg log.
> > >
> > > Can you put the following in /boot/loader.conf:
> > >
> > > hw.mps.debug_level=0xd
> > >
> > > Here is some context of the target id generation logic in <mps>
> > >
> > > Older driver available in FreeBSD-8 Stable, will not have any logic
> in
> > driver to generate Target id mapping.
> > > So it will give da0 device name to the drive which is detected First
> > by FW.
> > >
> > > With newer driver story is little different. Drive will find the DPM
> > > page in FW for particular drive detected by FW and it will do
> mapping
> > Either by Enclosure slot mapping / Device mapping.
> > >
> > > I am trying to see how best I can solve your issue.
> > >
> > > Also, In this case which device has actually you wants to be da0 ? (
> I
> > > mean boot driver has got which device name ? )
> > >
> > > Let me see your another dmesg output.
> > >
> > > ` Kashyap
> _______________________________________________
> 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