From owner-freebsd-current@FreeBSD.ORG Fri Jul 3 19:00:43 2009 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 54C31106566C; Fri, 3 Jul 2009 19:00:43 +0000 (UTC) (envelope-from mike@sentex.net) Received: from lava.sentex.ca (pyroxene.sentex.ca [199.212.134.18]) by mx1.freebsd.org (Postfix) with ESMTP id 15DC68FC0C; Fri, 3 Jul 2009 19:00:42 +0000 (UTC) (envelope-from mike@sentex.net) Received: from mdt-xp.sentex.net (simeon.sentex.ca [192.168.43.27]) by lava.sentex.ca (8.14.3/8.14.3) with ESMTP id n63IwDIt018455; Fri, 3 Jul 2009 14:58:13 -0400 (EDT) (envelope-from mike@sentex.net) Message-Id: <200907031858.n63IwDIt018455@lava.sentex.ca> X-Mailer: QUALCOMM Windows Eudora Version 7.1.0.9 Date: Fri, 03 Jul 2009 15:00:34 -0400 To: Alexander Motin From: Mike Tancsa In-Reply-To: <4A4E1A6C.3090605@FreeBSD.org> References: <4A4517BE.9040504@FreeBSD.org> <200906272303.n5RN3rTi070177@lava.sentex.ca> <4A471F44.7010108@FreeBSD.org> <200907021859.n62IxghN009931@lava.sentex.ca> <4A4D0B7E.8060503@FreeBSD.org> <200907022117.n62LHrvZ010791@lava.sentex.ca> <200907031326.n63DQCGM016627@lava.sentex.ca> <4A4E0D51.3080904@FreeBSD.org> <200907031413.n63ED2jl016885@lava.sentex.ca> <4A4E1525.2040809@FreeBSD.org> <200907031430.n63EUMH1016965@lava.sentex.ca> <4A4E1A6C.3090605@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Cc: FreeBSD-Current , scottl@FreeBSD.org Subject: Re: RFC: ATA to CAM integration patch (INTEL DX58SO) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Jul 2009 19:00:43 -0000 At 10:49 AM 7/3/2009, Alexander Motin wrote: >Mike Tancsa wrote: > > At 10:26 AM 7/3/2009, Alexander Motin wrote: > > > >> Wait! Stop! I have got lost in what we are testing. In some of your your > >> previous messages today I have seen: > > > > Sorry, I just opened up the case to confirm, and it is indeed a SATA DVD > > drive. > >Messages like "it's just not working" will not give anything except >upsetting me. Usually I need more information. So if you are really what >to track and fix some problem, please, identify it somehow, to be able >to send more follow-ups later and compare to different user's results. >Open cases one by one in separate emails. Sorry again for the confusion. I am trying a *different* motherboard (INTEL DX58SO) and drive now with your 0629 patch as well as the diff below. --- ahci.c.prev 2009-06-29 12:48:45.000000000 +0300 +++ ahci.c 2009-06-29 17:25:29.000000000 +0300 @@ -986,7 +986,7 @@ ahci_begin_transaction(device_t dev, uni if (ch->slot[tag].state == AHCI_SLOT_EMPTY) break; } while (tag != ch->lastslot); - if (tag == ch->lastslot) + if (ch->slot[tag].state != AHCI_SLOT_EMPTY) device_printf(ch->dev, "ALL SLOTS BUSY!\n"); ch->lastslot = tag; /* Occupy chosen slot. */ Without the diff, I was getting a steady stream of ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! ahcich0: ALL SLOTS BUSY! With the above diff, all seems to work well. Full verbose dmesg and pciconf -lvc at http://www.tancsa.com/ahci/DX58SO.txt Read/Write speed looks good with a more modern disk as well -------Sequential Output-------- ---Sequential Input-- --Random-- -Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks--- Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU 4000 103884 51.4 109344 9.7 42048 6.0 91201 59.0 116723 8.5 1123.4 2.0 0(ich10)# dd if=/dev/ada0 of=/dev/null bs=1m count=1000 1000+0 records in 1000+0 records out 1048576000 bytes transferred in 7.562206 secs (138660068 bytes/sec) 0(ich10)# The eSata port does not work, but it never did under the old driver either. I think it has a separate controller ? At the BIOS boot up time, it shows some Marvell controller talking to the eSata attached drive, and pciconf does show a separate ATA controller ahci0@pci0:0:31:2: class=0x010601 card=0x4f538086 chip=0x3a228086 rev=0x00 hdr=0x00 vendor = 'Intel Corporation' device = '6 port SATA AHCI Controller' class = mass storage subclass = SATA cap 05[80] = MSI supports 16 messages enabled with 1 message cap 01[70] = powerspec 3 supports D0 D3 current D0 cap 12[a8] = SATA Index-Data Pair none7@pci0:0:31:3: class=0x0c0500 card=0x4f538086 chip=0x3a308086 rev=0x00 hdr=0x00 vendor = 'Intel Corporation' device = 'SMB controller (50011458)' class = serial bus subclass = SMBus atapci0@pci0:6:0:0: class=0x01018f card=0x4f538086 chip=0x612111ab rev=0xb2 hdr=0x00 vendor = 'Marvell Semiconductor (Was: Galileo Technology Ltd)' device = '6121 SATA2 Controller' class = mass storage subclass = ATA cap 01[48] = powerspec 2 supports D0 D1 D3 current D0 cap 05[50] = MSI supports 1 message cap 10[e0] = PCI-Express 1 legacy endpoint max data 128(128) link x1(x1)