sparc64/164226: Data corruption on 9.0-RELEASE when reading from CDROM

Alexander Motin mav at FreeBSD.org
Fri Jan 20 18:50:09 UTC 2012


The following reply was made to PR sparc64/164226; it has been noted by GNATS.

From: Alexander Motin <mav at FreeBSD.org>
To: Marius Strobl <marius at alchemy.franken.de>
Cc: freebsd-gnats-submit at freebsd.org, "C. P. Ghost" <cpghost at cordula.ws>
Subject: Re: sparc64/164226: Data corruption on 9.0-RELEASE when reading from
 CDROM
Date: Fri, 20 Jan 2012 20:13:38 +0200

 On 20.01.2012 19:51, Marius Strobl wrote:
 > Alexander, could you please look into this?
 > Apparently, using cd(4) with ATA_CAM on sparc64 causes seemingly
 > random data corruption while using the same hardware with acd(4)
 > doesn't. Also cd(4) works just fine with SPI CD-ROMs. This affects
 > CD-ROMs connected to both AcerLabs M5229 and CMD 646.
 > Btw., apparently hw.ata.ata_dma and w.ata.atapi_dma no longer
 > work when using ATA_CAM as ata_getparam() isn't called in the
 > first place. On a quick glance hw.ata.ata_dma_check_80pin and
 > hw.ata.wc probably also are no longer available with ATA_CAM.
 > Is there an alternative to these tunables to achieve the same
 > when using ATA_CAM?
 
 hw.ata.ata_dma and hw.ata.atapi_dma are indeed no longer exist. But 
 hint.ata.X.mode and hint.ata.X.devX.mode are working. In run tame it can 
 be done via `camcontrol negotiate cd0 -U -M mode; camcontrol rescan X`, 
 where X is a CAM bus number.
 
 hw.ata.ata_dma_check_80pin still exist, but CAM ATA transport is no 
 longer look on whet device thinks about cable type. It is tricky in SATA 
 world. Cable type is checked only from controller driver side now. Looks 
 like none of mentioned controller drivers are doing it.
 
 hw.ata.wc was replaced by kern.cam.ada.write_cache and 
 kern.cam.ada.X.write_cache.
 
 I would start experiments from limiting transfer speed manually.
 
 -- 
 Alexander Motin


More information about the freebsd-sparc64 mailing list