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