From owner-freebsd-stable@FreeBSD.ORG Wed Jun 30 16:27:20 2010 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 76F08106566B for ; Wed, 30 Jun 2010 16:27:20 +0000 (UTC) (envelope-from pmather@vt.edu) Received: from lennier.cc.vt.edu (lennier.cc.vt.edu [198.82.162.213]) by mx1.freebsd.org (Postfix) with ESMTP id 1ED238FC08 for ; Wed, 30 Jun 2010 16:27:19 +0000 (UTC) Received: from zidane.cc.vt.edu (zidane.cc.vt.edu [198.82.163.227]) by lennier.cc.vt.edu (8.13.8/8.13.8) with ESMTP id o5UG7np3027671 for ; Wed, 30 Jun 2010 12:07:55 -0400 Received: from auth3.smtp.vt.edu (EHLO auth3.smtp.vt.edu) ([198.82.161.152]) by zidane.cc.vt.edu (MOS 4.1.8-GA FastPath queued) with ESMTP id JAT90770; Wed, 30 Jun 2010 12:07:54 -0400 (EDT) Received: from gromit.tower.lib.vt.edu (gromit.tower.lib.vt.edu [128.173.51.22]) (authenticated bits=0) by auth3.smtp.vt.edu (8.13.8/8.13.8) with ESMTP id o5UG7scX028035 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO) for ; Wed, 30 Jun 2010 12:07:54 -0400 From: Paul Mather Content-Type: multipart/signed; boundary=Apple-Mail-7--1040836416; protocol="application/pkcs7-signature"; micalg=sha1 Date: Wed, 30 Jun 2010 12:07:54 -0400 Message-Id: To: FreeBSD Stable Mime-Version: 1.0 (Apple Message framework v1081) X-Mailer: Apple Mail (2.1081) X-Mirapoint-Received-SPF: 198.82.161.152 auth3.smtp.vt.edu pmather@vt.edu 2 pass X-Mirapoint-IP-Reputation: reputation=neutral-1, source=Fixed, refid=n/a, actions=MAILHURDLE SPF TAG X-Junkmail-Status: score=10/50, host=zidane.cc.vt.edu X-Junkmail-SD-Raw: score=unknown, refid=str=0001.0A020203.4C2B6BDA.032E,ss=1,fgs=0, ip=0.0.0.0, so=2009-09-22 00:05:22, dmn=2009-09-10 00:05:08, mode=single engine X-Junkmail-IWF: false X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Problems with ATA_CAM support in RELENG_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: Wed, 30 Jun 2010 16:27:20 -0000 --Apple-Mail-7--1040836416 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii I am running FreeBSD/amd64 RELENG_8 on a Dell Optiplex 745. The hard = drive in the system is SATA and I have "Normal", not "Legacy" SATA = support enabled in the BIOS. (BIOS is V2.6.4.) I am assuming this will = enable native AHCI mode for the drive. I built a kernel with ATA_CAM support, but for some reason the SATA = drive is probing at slow, UDMA2, speeds: ada0 at ata2 bus 0 scbus0 target 0 lun 0 ada0: ATA-7 SATA 2.x device ada0: 33.300MB/s transfers (UDMA2, PIO 8192bytes) ada0: 152587MB (312500000 512 byte sectors: 16H 63S/T 16383C) When I run "camcontrol identify" on the drive, it states the drive is = capable of UDMA6 speeds: backup# camcontrol identify ada0 pass0: ATA-7 SATA 2.x device pass0: 33.300MB/s transfers (UDMA2, PIO 8192bytes) protocol ATA/ATAPI-7 SATA 2.x device model ST3160812AS firmware revision 3.ADJ serial number 5LS8PPDD cylinders 16383 heads 16 sectors/track 63 sector size logical 512, physical 512, offset 0 LBA supported 268435455 sectors LBA48 supported 312500000 sectors PIO supported PIO4 DMA supported WDMA2 UDMA6=20 Feature Support Enable Value Vendor read ahead yes yes write cache yes yes flush cache yes yes overlap no Tagged Command Queuing (TCQ) no no Native Command Queuing (NCQ) yes 32 tags SMART yes yes microcode download yes yes security yes no power management yes yes advanced power management no no 65278/0xFEFE automatic acoustic management yes yes 254/0xFE 208/0xD0 media status notification no no power-up in Standby no no write-read-verify no no 0/0x0 unload no no free-fall no no data set management (TRIM) no So, why the slower speed? Also, "camcontrol identify" states the drive = supports NCQ with up to 32 tags supported, yet "camcontrol tags ada0" = reports only 1 device opening, not 32 as I would expect: backup# camcontrol tags ada0 (pass0:ata2:0:0:0): device openings: 1 To enable ATA_CAM AHCI support, I included this in my kernel config = file: # ATA and ATAPI devices options ATA_CAM device ahci device atacore device atapci options ATA_STATIC_ID # Static device numbering Is this the correct way to enable ATA_CAM AHCI support? I tried = initially including just "options ATA_CAM" and "device ahci" but the = resultant kernel would not probe my disk drive as ada0. Does my problem lie with my kernel config or is the Dell Optiplex 745 = BIOS brain dead when it comes to AHCI native support? The only option = it appears to have in the BIOS is "Normal" and "Legacy" when it comes to = the SATA controller mode. I've attached my full kernel config and dmesg at the end of this e-mail. Cheers, Paul. Kernel config: # # GENERIC -- Generic kernel configuration file for FreeBSD/amd64 # # For more information on this file, please read the config(5) manual = page, # and/or the handbook section on Kernel Configuration Files: # # = http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-con= fig.html # # The handbook is also available locally in /usr/share/doc/handbook # if you've installed the doc distribution, otherwise always see the # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the # latest information. # # An exhaustive list of options and more detailed explanations of the # device lines is also present in the ../../conf/NOTES and NOTES files. # If you are in doubt as to the purpose or necessity of a line, check = first # in NOTES. # # $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.531.2.13 2010/05/02 06:24:17 = imp Exp $ cpu HAMMER ident VPN # To statically compile in device wiring instead of /boot/device.hints #hints "GENERIC.hints" # Default places to look for = devices. # Use the following to compile in values accessible to the kernel # through getenv() (or kenv(1) in userland). The format of the file # is 'variable=3Dvalue', see kenv(1) # # env "GENERIC.env" #makeoptions DEBUG=3D-g # Build kernel with gdb(1) debug = symbols options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread = preemption options INET # InterNETworking options INET6 # IPv6 communications protocols options SCTP # Stream Control Transmission = Protocol options FFS # Berkeley Fast Filesystem options SOFTUPDATES # Enable FFS soft updates = support options UFS_ACL # Support for access control = lists options UFS_DIRHASH # Improve performance on big = directories options UFS_GJOURNAL # Enable gjournal-based UFS = journaling options MD_ROOT # MD is a potential root device #options NFSCLIENT # Network Filesystem Client #options NFSSERVER # Network Filesystem Server #options NFSLOCKD # Network Lock Manager #options NFS_ROOT # NFS usable as /, requires = NFSCLIENT #options MSDOSFS # MSDOS Filesystem #options CD9660 # ISO 9660 Filesystem options PROCFS # Process filesystem (requires = PSEUDOFS) options PSEUDOFS # Pseudo-filesystem framework options GEOM_PART_GPT # GUID Partition Tables. options GEOM_LABEL # Provides labelization options COMPAT_43TTY # BSD 4.3 TTY compat (sgtty) options COMPAT_FREEBSD32 # Compatible with i386 binaries #options COMPAT_FREEBSD4 # Compatible with FreeBSD4 #options COMPAT_FREEBSD5 # Compatible with FreeBSD5 #options COMPAT_FREEBSD6 # Compatible with FreeBSD6 #options COMPAT_FREEBSD7 # Compatible with FreeBSD7 options SCSI_DELAY=3D5000 # Delay (in ms) before = probing SCSI options KTRACE # ktrace(1) support options STACK # stack(9) support options SYSVSHM # SYSV-style shared memory options SYSVMSG # SYSV-style message queues options SYSVSEM # SYSV-style semaphores options P1003_1B_SEMAPHORES # POSIX-style semaphores options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time = extensions options PRINTF_BUFR_SIZE=3D128 # Prevent printf output being = interspersed. options KBD_INSTALL_CDEV # install a CDEV entry in /dev options HWPMC_HOOKS # Necessary kernel hooks for = hwpmc(4) options AUDIT # Security event auditing options MAC # TrustedBSD MAC Framework options FLOWTABLE # per-cpu routing cache #options KDTRACE_FRAME # Ensure frames are compiled in #options KDTRACE_HOOKS # Kernel DTrace hooks options INCLUDE_CONFIG_FILE # Include this file in kernel # Make an SMP-capable kernel by default options SMP # Symmetric MultiProcessor = Kernel # CPU frequency control device cpufreq # Bus support. device acpi device pci # Floppy drives device fdc # ATA and ATAPI devices options ATA_CAM device ahci device atacore device atapci options ATA_STATIC_ID # Static device numbering # SCSI peripherals device scbus # SCSI bus (required for SCSI) device ch # SCSI media changers device da # Direct Access (disks) device sa # Sequential Access (tape etc) device cd # CD device pass # Passthrough device (direct SCSI = access) device ses # SCSI Environmental Services (and = SAF-TE) # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc # AT keyboard controller device atkbd # AT keyboard device psm # PS/2 mouse device kbdmux # keyboard multiplexer device vga # VGA video card driver device splash # Splash screen and screen saver support # syscons is the default console driver, resembling an SCO console device sc device agp # support several AGP chipsets # Serial (COM) ports device uart # Generic UART driver # Parallel port device ppc device ppbus # Parallel port bus (required) # PCI Ethernet NICs that use the common MII bus controller code. # NOTE: Be sure to keep the 'device miibus' line in order to use these = NICs! device miibus # MII bus support device bge # Broadcom BCM570xx Gigabit Ethernet # Pseudo devices. device loop # Network loopback device random # Entropy device device ether # Ethernet support device vlan # 802.1Q VLAN support device tun # Packet tunnel. device pty # BSD-style compatibility pseudo ttys device md # Memory "disks" device gif # IPv6 and IPv4 tunneling #device faith # IPv6-to-IPv4 relaying (translation) device firmware # firmware assist module # The `bpf' device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! # Note that 'bpf' is required for DHCP. device bpf # Berkeley packet filter # USB support options USB_DEBUG # enable debug msgs device uhci # UHCI PCI->USB interface device ehci # EHCI PCI->USB interface (USB 2.0) device usb # USB Bus (required) #device udbp # USB Double Bulk Pipe devices device ukbd # Keyboard device umass # Disks/Mass storage - Requires scbus = and da device ums # Mouse # pf firewall with ALTQ support device pf device pflog device pfsync options ALTQ options ALTQ_CBQ # Class Bases Queuing (CBQ) options ALTQ_RED # Random Early Detection (RED) options ALTQ_RIO # RED In/Out options ALTQ_HFSC # Hierarchical Packet Scheduler (HFSC) options ALTQ_PRIQ # Priority Queuing (PRIQ) options ALTQ_NOPCC # Required for SMP build # In order to enable IPSEC you MUST also add device crypto to=20 # your kernel configuration options IPSEC # IP security (requires device crypto) options IPSEC_NAT_T # NAT-T support, UDP encap of ESP device crypto # core crypto support Dmesg: Copyright (c) 1992-2010 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 8.1-PRERELEASE #7: Mon Jun 28 13:02:30 EDT 2010 paul@backup.tower.lib.vt.edu:/usr/obj/usr/src/sys/VPN amd64 Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz (1862.01-MHz = K8-class CPU) Origin =3D "GenuineIntel" Id =3D 0x6f6 Family =3D 6 Model =3D f = Stepping =3D 6 = Features=3D0xbfebfbff = Features2=3D0xe3bd AMD Features=3D0x20000800 AMD Features2=3D0x1 TSC: P-state invariant real memory =3D 536870912 (512 MB) avail memory =3D 504094720 (480 MB) ACPI APIC Table: FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs FreeBSD/SMP: 1 package(s) x 2 core(s) cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 ioapic0: Changing APIC ID to 8 ioapic0 irqs 0-23 on motherboard lapic0: Forcing LINT1 to edge trigger kbd1 at kbdmux0 cryptosoft0: on motherboard acpi0: on motherboard acpi0: [ITHREAD] acpi0: Power Button (fixed) acpi0: reservation of 0, a0000 (3) failed acpi0: reservation of 100000, f00000 (3) failed acpi0: reservation of 1000000, 1edffc00 (3) failed Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 cpu0: on acpi0 cpu1: on acpi0 acpi_hpet0: iomem 0xfed00000-0xfed003ff on = acpi0 Timecounter "HPET" frequency 14318180 Hz quality 900 acpi_button0: on acpi0 acpi_button0: enable wake failed pcib0: port 0xcf8-0xcff on acpi0 pci0: on pcib0 pcib1: irq 16 at device 1.0 on pci0 pci1: on pcib1 vgapci0: mem = 0xfc000000-0xfcffffff,0xd0000000-0xdfffffff,0xfd000000-0xfdffffff irq 16 = at device 0.0 on pci1 uhci0: port 0xff20-0xff3f irq = 16 at device 26.0 on pci0 uhci0: [ITHREAD] usbus0: on uhci0 uhci1: port 0xff00-0xff1f irq = 17 at device 26.1 on pci0 uhci1: [ITHREAD] usbus1: on uhci1 ehci0: mem = 0xfebfbc00-0xfebfbfff irq 22 at device 26.7 on pci0 ehci0: [ITHREAD] usbus2: EHCI version 1.0 usbus2: on ehci0 hdac0: mem = 0xfebfc000-0xfebfffff irq 16 at device 27.0 on pci0 hdac0: HDA Driver Revision: 20100226_0142 hdac0: [ITHREAD] pcib2: irq 16 at device 28.0 on pci0 pci2: on pcib2 pcib3: irq 16 at device 28.4 on pci0 pci3: on pcib3 bge0: mem 0xfbef0000-0xfbefffff irq 16 at device 0.0 on pci3 miibus0: on bge0 brgphy0: PHY 1 on miibus0 brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, = 1000baseT-FDX, auto bge0: Ethernet address: 00:19:b9:17:ba:4f bge0: [FILTER] uhci2: port 0xff80-0xff9f irq = 23 at device 29.0 on pci0 uhci2: [ITHREAD] usbus3: on uhci2 uhci3: port 0xff60-0xff7f irq = 17 at device 29.1 on pci0 uhci3: [ITHREAD] usbus4: on uhci3 uhci4: port 0xff40-0xff5f irq = 18 at device 29.2 on pci0 uhci4: [ITHREAD] usbus5: on uhci4 ehci1: mem = 0xff980800-0xff980bff irq 23 at device 29.7 on pci0 ehci1: [ITHREAD] usbus6: EHCI version 1.0 usbus6: on ehci1 pcib4: at device 30.0 on pci0 pci4: on pcib4 isab0: at device 31.0 on pci0 isa0: on isab0 atapci0: port = 0xfe00-0xfe07,0xfe10-0xfe13,0xfe20-0xfe27,0xfe30-0xfe33,0xfec0-0xfecf,0xec= c0-0xeccf irq 20 at device 31.2 on pci0 atapci0: [ITHREAD] ata2: on atapci0 ata2: [ITHREAD] ata3: on atapci0 ata3: [ITHREAD] ichsmb0: port 0xece0-0xecff mem = 0xfebfbb00-0xfebfbbff irq 20 at device 31.3 on pci0 ichsmb0: [ITHREAD] smbus0: on ichsmb0 atapci1: port = 0xfe40-0xfe47,0xfe50-0xfe53,0xfe60-0xfe67,0xfe70-0xfe73,0xfed0-0xfedf,0xec= d0-0xecdf irq 20 at device 31.5 on pci0 atapci1: [ITHREAD] ata4: on atapci1 ata4: [ITHREAD] ata5: on atapci1 ata5: [ITHREAD] atrtc0: port 0x70-0x7f irq 8 on acpi0 ppc0: port 0x378-0x37f,0x778-0x77f irq 7 on acpi0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/8 bytes threshold ppc0: [ITHREAD] ppbus0: on ppc0 uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 uart0: [FILTER] orm0: at iomem = 0xc0000-0xce7ff,0xce800-0xd07ff,0xd0800-0xd3fff on isa0 sc0: at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=3D0x300> vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on = isa0 atkbdc0: at port 0x60,0x64 on isa0 atkbd0: irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] atkbd0: [ITHREAD] est0: on cpu0 p4tcc0: on cpu0 est1: on cpu1 p4tcc1: on cpu1 Timecounters tick every 1.000 msec IPsec: Initialized Security Association Processing. hdac0: HDA Codec #0: Analog Devices AD1983 usbus0: 12Mbps Full Speed USB v1.0 usbus1: 12Mbps Full Speed USB v1.0 usbus2: 480Mbps High Speed USB v2.0 usbus3: 12Mbps Full Speed USB v1.0 usbus4: 12Mbps Full Speed USB v1.0 usbus5: 12Mbps Full Speed USB v1.0 usbus6: 480Mbps High Speed USB v2.0 pcm0: at cad 0 nid 1 on hdac0 ugen0.1: at usbus0 uhub0: on usbus0 ugen1.1: at usbus1 uhub1: on usbus1 ugen2.1: at usbus2 uhub2: on usbus2 ugen3.1: at usbus3 uhub3: on usbus3 ugen4.1: at usbus4 uhub4: on usbus4 ugen5.1: at usbus5 uhub5: on usbus5 ugen6.1: at usbus6 uhub6: on usbus6 ata4: timeout waiting for read DRQ ata4: timeout waiting for read DRQ ada0 at ata2 bus 0 scbus0 target 0 lun 0 ada0: ATA-7 SATA 2.x device ada0: 33.300MB/s transfers (UDMA2, PIO 8192bytes) ada0: 152587MB (312500000 512 byte sectors: 16H 63S/T 16383C) lapic1: Forcing LINT1 to edge trigger SMP: AP CPU #1 Launched! cd0 at ata4 bus 0 scbus2 target 0 lun 0 cd0: Removable CD-ROM SCSI-0 device=20 cd0: 33.300MB/s transfers (UDMA2, ATAPI 12bytes, PIO 8192bytes) cd0: Attempt to query device size failed: NOT READY, Medium not present = - tray closed uhub0: 2 ports with 2 removable, self powered uhub1: 2 ports with 2 removable, self powered uhub3: 2 ports with 2 removable, self powered uhub4: 2 ports with 2 removable, self powered uhub5: 2 ports with 2 removable, self powered Root mount waiting for: usbus6 usbus2 Root mount waiting for: usbus6 usbus2 uhub2: 4 ports with 4 removable, self powered uhub6: 6 ports with 6 removable, self powered Root mount waiting for: usbus6 ugen6.2: at usbus6 umass0: = on usbus6 umass0: SCSI over Bulk-Only; quirks =3D 0x0000 ugen1.2: at usbus1 ukbd0: on usbus1 kbd2 at ukbd0 Root mount waiting for: usbus6 Trying to mount root from ufs:/dev/ada0s1a ugen1.3: at usbus1 ums0: = on usbus1 ums0: 3 buttons and [XYZ] coordinates ID=3D0 bge0: link state changed to UP --Apple-Mail-7--1040836416--