From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stan Hoeppner Subject: Re: ata2.00: failed to set xfermode (err_mask=0x100),ata2.00: disabled, CD-ROM drive dead Date: Sun, 28 Mar 2010 19:09:07 -0500 Message-ID: <4BAFEFA3.3090502@hardwarefreak.com> References: <4B9EA02F.2070704@hardwarefreak.com> <4B9EC67A.3020201@gmail.com> <4B9ED027.30800@hardwarefreak.com> <4BAAB080.3010401@kernel.org> <4BAB2A94.8010001@hardwarefreak.com> <20100325215242.GA9785@localhost.localdomain> <4BAF9670.6010706@hardwarefreak.com> <4BAFB58C.5050702@gmail.com> <4BAFEA7A.50904@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Return-path: Received: from mo-65-41-216-221.sta.embarqhsd.net ([65.41.216.221]:39268 "EHLO greer.hardwarefreak.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755381Ab0C2AJJ (ORCPT ); Sun, 28 Mar 2010 20:09:09 -0400 Received: from [192.168.100.53] (gffx.hardwarefreak.com [192.168.100.53]) by greer.hardwarefreak.com (Postfix) with ESMTP id 29DDF6C362 for ; Sun, 28 Mar 2010 19:09:08 -0500 (CDT) In-Reply-To: <4BAFEA7A.50904@kernel.org> Sender: linux-ide-owner@vger.kernel.org List-Id: linux-ide@vger.kernel.org To: linux-ide@vger.kernel.org Tejun Heo put forth on 3/28/2010 6:47 PM: > Hello, > > On 03/29/2010 05:01 AM, Robert Hancock wrote: >>> ata2.00: ATAPI: Pioneer CD-ROM ATAPI Model DR-A24X 0102, E1.02, max >>> MWDMA2 >>> ata2.00: NOSETXFER but PATA detected - can't skip SETXFER, might >>> malfunction >> >> Yeah, NOSETXFER doesn't take effect on PATA drives. It could, but it >> would assume that the BIOS has set the right mode which seems rather >> dangerous. > > Well, we can issue the command, ignore the error and then check the > correct mode is configured during revalidation. For now, the > following should show us whether something like that would work. > > diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c > index 4a28420..ca4a50a 100644 > --- a/drivers/ata/libata-core.c > +++ b/drivers/ata/libata-core.c > @@ -3446,6 +3446,10 @@ static int ata_dev_set_mode(struct ata_device *dev) > "NOSETXFER but PATA detected - can't " > "skip SETXFER, might malfunction\n"); > err_mask = ata_dev_set_xfermode(dev); > + if (err_mask) > + ata_dev_printk(dev, KERN_WARNING, "SETXFER failed w/ %x\n", > + err_mask); > + err_mask = 0; > } > > if (err_mask & ~AC_ERR_DEV) I'm still using 2.6.32.9. Is it ok to apply this against 2.6.32.9? -- Stan