mps target difference between FreeBSD 9 and 9.1 RC
Jason Keltz
jas at cse.yorku.ca
Mon Sep 24 14:38:52 UTC 2012
Hi Kashyap,
Thanks for your reply. I had seen mention of this different between
"enclosure slot mapping" and "device mapping" before, but I can't find
any "enclosure slot mapping" or "device mapping" option on the LSI
9205-8e card BIOS screen. Maybe you or someone else can tell me where
to look for this option in the BIOS? I'm running the latest IT/non-RAID
firmware released by LSI for this card.
I did go into the BIOS and write down all the details for the disks and
match this up with FreeBSD 9.1 daX/target mapping. At least now, the
results that I'm getting don't seem so "random". Here are the details:
Slot,PhyNum,Scan_Order,daX,target
[9205-8e card 1]
5,12,10,da0,33
0,13,11,da1,34
1,14,12,da2,35
2,15,13,da3,36
3,16,14,da4,37
4,17,15,da5,38
6,18,16,da6,39
7,19,17,da7,40
8,20,18,da8,41
11,21,19,da9,42
10,22,20,da10,43
9,23,21,da11,44
[9205-8e card 2]
17,24,10,da12,20
16,25,11,da13,21
15,26,12,da14,22
14,27,13,da15,23
22,28,14,da16,24
23,29,15,da17,25
18,30,16,da18,26
19,31,17,da19,27
13,32,18,da20,28
12,33,19,da21,29
20,34,20,da22,30
21,35,21,da23,31
It appears that the daX devices are enumerated by the new driver in
either the phy order or scan order.
It's still not clear to me why the first 9205-8e card would always see,
say, slot 5 first, then 0, 1, 2,...,11,10,9 instead of 0,1,2,3,... but I
guess it must be a complex timing issue. If I had different disks in
the unit that took different time to spin up, I guess the results might
be different?
It's also not really clear to me why targets start at 20. In the end,
it doesn't really matter what the targets are, but I'd like to
understand why they are the way they are.
I was able to hard-code the targets in /boot/device.hints to make it so
that da0 was slot 0, da1 was slot 1, etc. Booting with every other disk
removed, the mappings remained the same, but this is rather dangerous
because it relies on the Phy order, and this might change if the disks
changed, so it's not ultimately a solution. Ultimately, I need to
understand how to enable the slot mapping functionality if it's
available on the 9205-8e card. This would force the daX devices to be
enumerated by slot number.
I have a different system using an internal LSI 9211-8i card, also with
the latest IT firmware, but it is connected to a Chenbro CK12803
expander which has 16 internal SATA disks attached. On that system, in
the LSI BIOS, I can't see the disks at all - just the Chenbro expander,
so I can't print all the details of the mappings like I did above, but
the LSI status screen that displays the disks before going into the
BIOS prints all the disks, but reports "ENC SLOT 0" for all of them.
Here, there's probably some incompatibility with the Chenbro card (even
though it's listed on the hardware compatibility list of the card).
Without the 9211-8i seeing the proper slot mapping on this system, I'm
guessing that enabling slot mapping in the BIOS probably wouldn't help here.
Thanks for any help/feedback,
Jason.
On 09/24/2012 04:48 AM, Desai, Kashyap wrote:
> Jason:
>
> FreeBSD9.0 is very old driver where we don't have "mps_mapping.c". With mps_mapping.c we are supporting different Target ID mapping which is main reason why you are seeing two different target ID behaviors in this case.
>
> We have major two mapping method.
> 1. enclosure slot mapping and
> 2. Device mapping.
>
> Depends upon what you have configured in FW Driver will behave accordingly.
>
> I would suggest to flash your Card completely and start from fresh with only FreeBSD-9.1. do not compare FreeBSD-9.0
>
>
> ` Kashyap
>
>> -----Original Message-----
>> From: owner-freebsd-scsi at freebsd.org [mailto:owner-freebsd-
>> scsi at freebsd.org] On Behalf Of Jason Keltz
>> Sent: Thursday, September 20, 2012 1:38 AM
>> To: freebsd-scsi at freebsd.org
>> Subject: mps target difference between FreeBSD 9 and 9.1 RC
>>
>> I have a Dell R720 and a 24 x 2.5" Dell MD1220 JBOD. I have added dual
>> LSI 9205-8e, each connected to the same MD1220 array. Under FreeBSD
>> 9.0, if I do a "camcontrol devlist" (with every other disk removed), I
>> see:
>>
>> <WD WD9001BKHG D1S2> at scbus0 target 0 lun 0 (pass0,da0)
>> <WD WD9001BKHG D1S2> at scbus0 target 2 lun 0 (pass1,da1)
>> <WD WD9001BKHG D1S2> at scbus0 target 4 lun 0 (pass2,da2)
>> <WD WD9001BKHG D1S2> at scbus0 target 6 lun 0 (pass3,da3)
>> <WD WD9001BKHG D1S2> at scbus0 target 8 lun 0 (pass4,da4)
>> <WD WD9001BKHG D1S2> at scbus0 target 10 lun 0 (pass5,da5)
>> <DELL MD1220 1.01> at scbus0 target 36 lun 0
>> (pass6,ses0)
>> <WD WD9001BKHG D1S2> at scbus1 target 12 lun 0 (pass7,da6)
>> <WD WD9001BKHG D1S2> at scbus1 target 14 lun 0 (pass8,da7)
>> <WD WD9001BKHG D1S2> at scbus1 target 16 lun 0 (pass9,da8)
>> <WD WD9001BKHG D1S2> at scbus1 target 18 lun 0
>> (pass10,da9)
>> <WD WD9001BKHG D1S2> at scbus1 target 21 lun 0
>> (pass11,da10)
>> <WD WD9001BKHG D1S2> at scbus1 target 22 lun 0
>> (pass12,da11)
>> <DELL MD1220 1.01> at scbus1 target 36 lun 0
>> (pass13,ses1)
>> <TEAC DVD-ROM DV-28SW R.2A> at scbus6 target 0 lun 0 (pass14,cd0)
>>
>> ... which is what I would expect. If I do the same thing with any
>> pre-release/RC version of 9.1, I see:
>>
>> <WD WD9001BKHG D1S2> at scbus0 target 34 lun 0 (pass0,da0)
>> <WD WD9001BKHG D1S2> at scbus0 target 36 lun 0 (pass1,da1)
>> <WD WD9001BKHG D1S2> at scbus0 target 38 lun 0 (pass2,da2)
>> <WD WD9001BKHG D1S2> at scbus0 target 39 lun 0 (pass3,da3)
>> <WD WD9001BKHG D1S2> at scbus0 target 41 lun 0 (pass4,da4)
>> <WD WD9001BKHG D1S2> at scbus0 target 43 lun 0 (pass5,da5)
>> <DELL MD1220 1.01> at scbus0 target 45 lun 0
>> (ses0,pass6)
>> <WD WD9001BKHG D1S2> at scbus1 target 21 lun 0 (pass7,da6)
>> <WD WD9001BKHG D1S2> at scbus1 target 23 lun 0 (pass8,da7)
>> <WD WD9001BKHG D1S2> at scbus1 target 24 lun 0 (pass9,da8)
>> <WD WD9001BKHG D1S2> at scbus1 target 26 lun 0
>> (pass10,da9)
>> <WD WD9001BKHG D1S2> at scbus1 target 29 lun 0
>> (pass11,da10)
>> <WD WD9001BKHG D1S2> at scbus1 target 31 lun 0
>> (pass12,da11)
>> <DELL MD1220 1.01> at scbus1 target 32 lun 0
>> (ses1,pass13)
>> <TEAC DVD-ROM DV-28SW R.2A> at scbus6 target 0 lun 0 (pass14,cd0)
>>
>> In particular, note how the targets are starting at 34. I wonder if
>> someone might explain why?
>>
>> I was considering using /boot/device.hints to hard-code the daX mapping
>> to avoid the use of "labels" for my volumes, but I wouldn't expect the
>> targets to change between the two releases.
>>
>> Thanks for any information that you can provide..
>>
>> Jason.
>>
>> _______________________________________________
>> 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