From owner-freebsd-sparc64@FreeBSD.ORG Fri Jan 20 18:50:09 2012 Return-Path: Delivered-To: freebsd-sparc64@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1EB7E106564A for ; Fri, 20 Jan 2012 18:50:09 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id EDA448FC0C for ; Fri, 20 Jan 2012 18:50:08 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q0KIo8hC082523 for ; Fri, 20 Jan 2012 18:50:08 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q0KIo80D082522; Fri, 20 Jan 2012 18:50:08 GMT (envelope-from gnats) Date: Fri, 20 Jan 2012 18:50:08 GMT Message-Id: <201201201850.q0KIo80D082522@freefall.freebsd.org> To: freebsd-sparc64@FreeBSD.org From: Alexander Motin Cc: Subject: Re: sparc64/164226: Data corruption on 9.0-RELEASE when reading from CDROM X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Alexander Motin List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 20 Jan 2012 18:50:09 -0000 The following reply was made to PR sparc64/164226; it has been noted by GNATS. From: Alexander Motin To: Marius Strobl Cc: freebsd-gnats-submit@freebsd.org, "C. P. Ghost" 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