From owner-freebsd-stable@FreeBSD.ORG Thu Jul 24 03:01:01 2008 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 441E71065675 for ; Thu, 24 Jul 2008 03:01:01 +0000 (UTC) (envelope-from ohuchi@iij.ad.jp) Received: from otm-mgo00.iij.ad.jp (otm-mgo00.iij.ad.jp [210.138.20.174]) by mx1.freebsd.org (Postfix) with ESMTP id BBCB58FC15 for ; Thu, 24 Jul 2008 03:01:00 +0000 (UTC) (envelope-from ohuchi@iij.ad.jp) DKIM-Signature: v=1;a=rsa-sha256;c=relaxed/simple;d=iij.ad.jp;h=Message-ID: From:To:Cc:Subject:Date:MIME-Version:Content-Type:Content-Transfer-Encoding; i=ohuchi@iij.ad.jp; s=omgo0; t=1216866528; x=1218076128; bh=BDGVtRXCqoq975xoGVrII KeQyOFfOn9jVgFoBL0UhuE=; b=O/U1cEzfYhAmAKD6Shjvl+VjdCaS4OcoPWD0V/x9xpVBo1kqBBY 0XoTaHgiKAgt92kfewvqM1sT66Nrkr8x8mc+B2RQzpjus2uAWTaKHFStaaAIFFETcCkRO7zQ7MwjR 70kpkKS/3EtzrzYyvaOfUkANmwUDNt7igOPyKy0iMXg=; Received: OTM-MO(otm-mgo00) id m6O2SmT6014758; Thu, 24 Jul 2008 11:28:48 +0900 (JST) Received: OTM-MIX(otm-mix00) id m6O2SliK019851; Thu, 24 Jul 2008 11:28:47 +0900 (JST) Received: from moon (moon.iij.ad.jp [192.168.168.71]) by rsmtp.iij.ad.jp (OTM-MR/rsmtp01) id m6O2SloP008808 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NOT); Thu, 24 Jul 2008 11:28:47 +0900 (JST) Message-ID: <021501c8ed35$0053a330$47a8a8c0@iij.ad.jp> From: "Munenori Ohuchi" To: Date: Thu, 24 Jul 2008 11:28:45 +0900 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="Windows-1252"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.3138 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 Cc: Munenori Ohuchi Subject: Re: MCP55 SATA data corruption in FreeBSD 7 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: Thu, 24 Jul 2008 03:01:01 -0000 Hi Daniel, Could you try the following patch? You can apply this patch in freebsd 7.0 just by copying and pasting to your shell. Before you apply this patch, you can check as follows if this works on your environment or not. 1. Set bootverbose mode. cat >> /boot/loader.conf << EOF boot_verbose="YES" EOF 2. Reboot your machine. 3. Check the dmesg log of your HDDs as follows. dmesg | grep ata . . ata2-master: pio=PIO4 wdma=WDMA2 udma=UDMA100 cable=40 wire ^^^^^^^^^^^^ ad4: 115328MB at ata2-master SATA150 ata3-master: pio=PIO4 wdma=WDMA2 udma=UDMA133 cable=40 wire ad6: 953869MB at ata3-master SATA150 If you have a device like 'ad4' which is detected as 'udma=UDMA100', this patch will work. ------------------------patch start---------------------------- cd /usr/src/sys/dev/ata cat> ata-chipset.c.patch <param; /* * if we detect that the device isn't a real SATA device we limit @@ -390,7 +391,7 @@ /* on some drives we need to set the transfer mode */ ata_controlcmd(dev, ATA_SETFEATURES, ATA_SF_SETXFER, 0, - ata_limit_mode(dev, mode, ATA_UDMA6)); + ata_limit_mode(dev, mode, ata_umode(atacap))); /* query SATA STATUS for the speed */ if (ch->r_io[ATA_SSTATUS].res && EOF patch -l < ata-chipset.c.patch ------------------------patch end---------------------------- Best regards, -- Munenori Ohuchi Internet Initiative Japan Inc.