From owner-freebsd-stable@FreeBSD.ORG Mon Feb 13 11:11:36 2012 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 64472106566C for ; Mon, 13 Feb 2012 11:11:36 +0000 (UTC) (envelope-from joh.hendriks@gmail.com) Received: from mail-bk0-f54.google.com (mail-bk0-f54.google.com [209.85.214.54]) by mx1.freebsd.org (Postfix) with ESMTP id D20E28FC14 for ; Mon, 13 Feb 2012 11:11:35 +0000 (UTC) Received: by bkcjg1 with SMTP id jg1so4314129bkc.13 for ; Mon, 13 Feb 2012 03:11:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=GFuNi9joe+F1zSUO42x+jVHiJkca/o5cehLYuQHnnXw=; b=pa1DqVUiBsvHOaexMTXS/qfqZ4/X2HW1v47b0k1DB6Erw8V+i3g/ClnHsJl8RtErUm OBnT0uUnlYQ94BgJvojj1Wmdyk+xa00HOVvIckN1GW0dm3IfCTP5RjYmYM44awuIBPDh lKM1uzsnBc/EfkcGLH0Fa31DYIIROq4j/GBC0= Received: by 10.205.125.12 with SMTP id gq12mr7042378bkc.39.1329131494437; Mon, 13 Feb 2012 03:11:34 -0800 (PST) Received: from [192.168.50.103] (double-l.xs4all.nl. [80.126.205.144]) by mx.google.com with ESMTPS id cg2sm45101550bkb.12.2012.02.13.03.11.32 (version=SSLv3 cipher=OTHER); Mon, 13 Feb 2012 03:11:33 -0800 (PST) Message-ID: <4F38EFE2.7010905@gmail.com> Date: Mon, 13 Feb 2012 12:11:30 +0100 From: Johan Hendriks User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0) Gecko/20120129 Thunderbird/10.0 MIME-Version: 1.0 To: "Desai, Kashyap" References: <20120202191105.GA55719@nargothrond.kdm.org> <4F38E00B.2020408@gmail.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-stable Subject: Re: LSI supported mps(4) driver in stable/9 and stable/8 X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Feb 2012 11:11:36 -0000 Desai, Kashyap schreef: > >> -----Original Message----- >> From: owner-freebsd-stable@freebsd.org [mailto:owner-freebsd- >> stable@freebsd.org] On Behalf Of Johan Hendriks >> Sent: Monday, February 13, 2012 3:34 PM >> To: Kenneth D. Merry >> Cc: freebsd-stable >> Subject: Re: LSI supported mps(4) driver in stable/9 and stable/8 >> >> Kenneth D. Merry schreef: >>> Hi folks, >>> >>> The LSI-supported version of the mps(4) driver that supports their 6Gb >> SAS >>> HBAs as well as WarpDrive controllers, is now in stable/9 and >> stable/8. >>> Please test it out and let me and Kashyap (CCed) know if you run into >>> any problems. >>> >>> In addition to supporting WarpDrive, the driver also supports >> Integrated >>> RAID. >>> >>> Thanks to LSI for doing the work on this driver! >>> >>> Note that the CAM infrastructure changes that went into FreeBSD/head >> along >>> with this driver have not gone into either stable/9 or stable/8. Only >> the >>> driver itself has been merged. >>> >>> The CAM infrastructure changes depend on some other da(4) driver >> changes >>> that will need to get merged before they can go back. If that merge >>> happens, it will probably only be into stable/9. >>> >>> A couple of notes about issues with this driver: >>> >>> - Unlike the previous mps(4) driver, it probes sequentially. If you >> have >>> a lot of drives in your system, it will take a while to probe them >> all. >>> - You may see warning messages like this: >>> >>> _mapping_add_new_device: failed to add the device with handle 0x0019 >> to persiste >>> nt table because there is no free space available >>> _mapping_add_new_device: failed to add the device with handle 0x001a >> to persiste >>> nt table because there is no free space available >>> >>> - The driver is not endian safe. (It assumes a little endian >> machine.) >>> This is not new, the previous version of the driver had the same >> issue. >>> The LSI folks know about these issues. The driver has passed their >> testing >>> process. >>> >>> Many thanks to LSI for going through the effort to support FreeBSD. >>> >>> Ken >> Hello all. >> >> I am running FreeBSD 9.0 STABLE now, on a LSI 9211-8i controller and a >> 16 ports backplane identified as LSI CORP SAS2X28 0717 ses0 pass6 >> On FreeBSD 9.0RELEASE i have the following order. >> Seen from the front of the case. >> da3 da7 da11 da15 >> da2 da6 da10 da14 >> da1 da5 da9 da13 >> da0 da4 da8 da12 >> >> But now it has shuffled the order. >> da8 da 14 da12 da10 >> da9 da15 da13 da11 >> da1 da6 da2 da5 >> da0 da7 da3 da4 >> >> There is no logic at all, and it is very hard to figure out when a disk >> dies which one it is. > Can you attach dmesg logs ? > Basically now Drive will not ask CAM layer to add device using XPT_ASYC call. > It will ask CAM layer to rescan the bus. > > So how CAM layer detects Drives is beyond Low level driver and it is obviously no guaranty of sequence of daX. > If you have some X Drives attached to enclosure, target IDs of those Drive will be generated by Driver based on > which mode mapping table is. > 1. Enclosure slot mapping > 2. Device mapping. > > For your case best choice will be Enclosure slot mapping. Assume you have Enclosure slop mapping. > > Target ID assignment is part of Driver which will consistence across all reboot. > _but_ when Driver call rescan bus (as part of device add), it will scan bus in sequence and later peripher layer will assing device naming. > So it is completely unsure which device will get what device name. > > e.a I have four Drive in "Enclosure slot mapping" Drive-A, Drive-B, Drive-C and Drive-D. (Consider alphabetical order is mapped to slot number ) > So Driver will assign below target id. (target id 0-7 is reserved for local port of HBA) > > Drive- A Target ID -8 > Drive- B Target ID -9 > Drive- C Target ID -10 > Drive- D Target ID -11 > > You cannot expect Drive-A will be assigned to da0. (and similar Drive-D will get da3). > > In summary, This behavior is visible just because of new change in driver, but it is never *must* follow condition for any driver. > Device naming is part of CAM layer. > > >> >> regards >> Johan Hendriks >> >> >> _______________________________________________ >> freebsd-stable@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-stable >> To unsubscribe, send any mail to "freebsd-stable- >> unsubscribe@freebsd.org" Ok so it is not the mps driver who does the naming but cam, and that also has changed on 9.0 Stable. Well i use gpart labels for the pool, so i can use the gpart labels to yank the right disk. But it would be nicer if there was some kind of logic in the numbering of the devices. Here is the dmesg Copyright (c) 1992-2012 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 9.0-STABLE #0: Mon Feb 13 10:22:44 CET 2012 root@filer01.testdomain.local:/usr/obj/usr/src/sys/KRNL amd64 CPU: Intel(R) Xeon(R) CPU E31220 @ 3.10GHz (3093.04-MHz K8-class CPU) Origin = "GenuineIntel" Id = 0x206a7 Family = 6 Model = 2a Stepping = 7 Features=0xbfebfbff Features2=0x15bae3ff AMD Features=0x28100800 AMD Features2=0x1 TSC: P-state invariant, performance statistics real memory = 17179869184 (16384 MB) avail memory = 16493441024 (15729 MB) Event timer "LAPIC" quality 600 ACPI APIC Table: FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs FreeBSD/SMP: 1 package(s) x 4 core(s) cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 2 cpu2 (AP): APIC ID: 4 cpu3 (AP): APIC ID: 6 ioapic0 irqs 0-23 on motherboard kbd1 at kbdmux0 acpi0: on motherboard acpi0: Power Button (fixed) Timecounter "ACPI-fast" frequency 3579545 Hz quality 900 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0 cpu0: on acpi0 cpu1: on acpi0 cpu2: on acpi0 cpu3: on acpi0 pcib0: port 0xcf8-0xcff on acpi0 pci0: on pcib0 pcib1: irq 19 at device 6.0 on pci0 pci1: on pcib1 mps0: port 0xe000-0xe0ff mem 0xfb600000-0xfb603fff irq 19 at device 0.0 on pci1 mps0: Firmware: 11.00.00.00, Driver: 11.255.03.00-fbsd mps0: IOCCapabilities: 1285c em0: port 0xf020-0xf03f mem 0xfb800000-0xfb81ffff,0xfb824000-0xfb824fff irq 20 at device 25.0 on pci0 em0: Using an MSI interrupt em0: Ethernet address: 00:25:90:57:20:bd ehci0: mem 0xfb823000-0xfb8233ff irq 16 at device 26.0 on pci0 usbus0: EHCI version 1.0 usbus0: on ehci0 pcib2: irq 17 at device 28.0 on pci0 pci2: on pcib2 pcib3: irq 17 at device 28.4 on pci0 pci3: on pcib3 em1: port 0xd000-0xd01f mem 0xfb700000-0xfb71ffff,0xfb720000-0xfb723fff irq 16 at device 0.0 on pci3 em1: Using MSIX interrupts with 3 vectors em1: Ethernet address: 00:25:90:57:20:bc ehci1: mem 0xfb822000-0xfb8223ff irq 23 at device 29.0 on pci0 usbus1: EHCI version 1.0 usbus1: on ehci1 pcib4: at device 30.0 on pci0 pci4: on pcib4 vgapci0: mem 0xf9000000-0xf9ffffff,0xfb000000-0xfb003fff,0xfa800000-0xfaffffff irq 23 at device 3.0 on pci4 isab0: at device 31.0 on pci0 isa0: on isab0 ahci0: port 0xf070-0xf077,0xf060-0xf063,0xf050-0xf057,0xf040-0xf043,0xf000-0xf01f mem 0xfb821000-0xfb8217ff irq 19 at device 31.2 on pci0 ahci0: AHCI v1.30 with 6 6Gbps ports, Port Multiplier not supported ahcich0: at channel 0 on ahci0 ahcich1: at channel 1 on ahci0 ahcich2: at channel 2 on ahci0 ahcich3: at channel 3 on ahci0 ahcich4: at channel 4 on ahci0 ahcich5: at channel 5 on ahci0 pci0: at device 31.3 (no driver attached) acpi_button0: on acpi0 hpet0: iomem 0xfed00000-0xfed003ff on acpi0 Timecounter "HPET" frequency 14318180 Hz quality 950 Event timer "HPET" frequency 14318180 Hz quality 550 Event timer "HPET1" frequency 14318180 Hz quality 440 Event timer "HPET2" frequency 14318180 Hz quality 440 Event timer "HPET3" frequency 14318180 Hz quality 440 Event timer "HPET4" frequency 14318180 Hz quality 440 attimer0: port 0x40-0x43 irq 0 on acpi0 Timecounter "i8254" frequency 1193182 Hz quality 0 Event timer "i8254" frequency 1193182 Hz quality 100 atrtc0: port 0x70-0x71 irq 8 on acpi0 Event timer "RTC" frequency 32768 Hz quality 0 atkbdc0: port 0x60,0x64 irq 1 on acpi0 atkbd0: irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 uart1: <16550 or compatible> port 0x2f8-0x2ff irq 3 on acpi0 uart2: <16550 or compatible> port 0x3e8-0x3ef irq 10 on acpi0 orm0: at iomem 0xc0000-0xc7fff,0xc8000-0xc87ff on isa0 sc0: at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 ppc0: cannot reserve I/O port range est0: on cpu0 p4tcc0: on cpu0 est1: on cpu1 p4tcc1: on cpu1 est2: on cpu2 p4tcc2: on cpu2 est3: on cpu3 p4tcc3: on cpu3 ZFS filesystem version 5 ZFS storage pool version 28 Timecounters tick every 1.000 msec usbus0: 480Mbps High Speed USB v2.0 usbus1: 480Mbps High Speed USB v2.0 ugen0.1: at usbus0 uhub0: on usbus0 ugen1.1: at usbus1 uhub1: on usbus1 uhub0: 2 ports with 2 removable, self powered uhub1: 2 ports with 2 removable, self powered da0 at mps0 bus 0 scbus0 target 8 lun 0 da0: Fixed Direct Access SCSI-6 device da0: 300.000MB/s transfers da0: Command Queueing enabled da0: 76319MB (156301488 512 byte sectors: 255H 63S/T 9729C) da1 at mps0 bus 0 scbus0 target 9 lun 0 da1: Fixed Direct Access SCSI-6 device da1: 300.000MB/s transfers da1: Command Queueing enabled da1: 76319MB (156301488 512 byte sectors: 255H 63S/T 9729C) da2 at mps0 bus 0 scbus0 target 10 lun 0 da2: Fixed Direct Access SCSI-6 device da2: 300.000MB/s transfers da2: Command Queueing enabled da2: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da3 at mps0 bus 0 scbus0 target 11 lun 0 da3: Fixed Direct Access SCSI-6 device da3: 300.000MB/s transfers da3: Command Queueing enabled da3: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da4 at mps0 bus 0 scbus0 target 12 lun 0 da4: Fixed Direct Access SCSI-6 device da4: 300.000MB/s transfers da4: Command Queueing enabled da4: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da5 at mps0 bus 0 scbus0 target 13 lun 0 da5: Fixed Direct Access SCSI-6 device da5: 150.000MB/s transfers da5: Command Queueing enabled da5: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da8 at mps0 bus 0 scbus0 target 19 lun 0 da8: Fixed Direct Access SCSI-6 device da8: 300.000MB/s transfers da8: Command Queueing enabled da8: 76319MB (156301488 512 byte sectors: 255H 63S/T 9729C) da9 at mps0 bus 0 scbus0 target 20 lun 0 da9: Fixed Direct Access SCSI-6 device da9: 300.000MB/s transfers da9: Command Queueing enabled da9: 76319MB (156301488 512 byte sectors: 255H 63S/T 9729C) da11 at mps0 bus 0 scbus0 target 22 lun 0 da11: Fixed Direct Access SCSI-6 device da11: 150.000MB/s transfers da11: Command Queueing enabled da11: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da12 at mps0 bus 0 scbus0 target 23 lun 0 da12: Fixed Direct Access SCSI-6 device da12: 150.000MB/s transfers da12: Command Queueing enabled da12: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da13 at mps0 bus 0 scbus0 target 24 lun 0 da13: Fixed Direct Access SCSI-6 device da13: 150.000MB/s transfers da13: Command Queueing enabled da13: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da14 at mps0 bus 0 scbus0 target 27 lun 0 da14: Fixed Direct Access SCSI-6 device da14: 300.000MB/s transfers da14: Command Queueing enabled da14: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) da15 at mps0 bus 0 scbus0 target 28 lun 0 da15: Fixed Direct Access SCSI-6 device da15: 150.000MB/s transfers da15: Command Queueing enabled da15: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) ses0 at mps0 bus 0 scbus0 target 16 lun 0 ses0: Fixed Enclosure Services SCSI-5 device ses0: 600.000MB/s transfers ses0: Command Queueing enabled ses0: SCSI-3 SES Device da6 at mps0 bus 0 scbus0 target 17 lun 0 da6: Fixed Direct Access SCSI-6 device da6: 150.000MB/s transfers da6: Command Queueing enabled da6: 76319MB (156301488 512 byte sectors: 255H 63S/T 9729C) cd0 at ahcich2 bus 0 scbus3 target 0 lun 0 cd0: Removable CD-ROM SCSI-0 device cd0: 150.000MB/s transfers (SATA 1.x, UDMA5, ATAPI 12bytes, PIO 8192bytes) cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed ada0 at ahcich0 bus 0 scbus1 target 0 lun 0 ada0: ATA-7 SATA 1.x device ada0: 150.000MB/s transfers (SATA 1.x, UDMA5, PIO 8192bytes) ada0: 76319MB (156301488 512 byte sectors: 16H 63S/T 16383C) ada0: Previously was known as ad4 da7 at mps0 bus 0 scbus0 target 18 lun 0 da7: Fixed Direct Access SCSI-6 device da7: 150.000MB/s transfers da7: Command Queueing enabled da7: 76319MB (156301488 512 byte sectors: 255H 63S/T 9729C) SMP: AP CPU #3 Launched! SMP: AP CPU #1 Launched! SMP: AP CPU #2 Launched! Timecounter "TSC-low" frequency 12082198 Hz quality 1000 ugen0.2: at usbus0 uhub2: on usbus0 ugen1.2: at usbus1 uhub3: on usbus1 da10 at mps0 bus 0 scbus0 target 21 lun 0 da10: Fixed Direct Access SCSI-6 device da10: 300.000MB/s transfers da10: Command Queueing enabled da10: 238475MB (488397168 512 byte sectors: 255H 63S/T 30401C) uhub3: 6 ports with 6 removable, self powered uhub2: 6 ports with 6 removable, self powered Root mount waiting for: usbus0 ugen0.3: at usbus0 ums0: on usbus0 ums0: 3 buttons and [Z] coordinates ID=0 ukbd0: on usbus0 kbd2 at ukbd0 Trying to mount root from ufs:/dev/ada0p2 [rw]... em0: link state changed to UP Camcontrol devlist filer01 ~ # camcontrol devlist at scbus0 target 8 lun 0 (pass0,da0) at scbus0 target 9 lun 0 (pass1,da1) at scbus0 target 10 lun 0 (pass2,da2) at scbus0 target 11 lun 0 (pass3,da3) at scbus0 target 12 lun 0 (pass4,da4) at scbus0 target 13 lun 0 (pass5,da5) at scbus0 target 16 lun 0 (ses0,pass6) at scbus0 target 17 lun 0 (pass7,da6) at scbus0 target 18 lun 0 (pass8,da7) at scbus0 target 19 lun 0 (pass9,da8) at scbus0 target 20 lun 0 (pass10,da9) at scbus0 target 21 lun 0 (pass11,da10) at scbus0 target 22 lun 0 (pass12,da11) at scbus0 target 23 lun 0 (pass13,da12) at scbus0 target 24 lun 0 (pass14,da13) at scbus0 target 27 lun 0 (pass15,da14) at scbus0 target 28 lun 0 (pass16,da15) at scbus1 target 0 lun 0 (ada0,pass17) at scbus3 target 0 lun 0 (pass18,cd0) regards johan