rpms/kernel/F-8 linux-2.6-libata-dont-fail-revalidation-for-bad-gtf-methods.patch, NONE, 1.1 linux-2.6-libata-pata_serverworks-fix-drive-combinations.patch, NONE, 1.1 kernel.spec, 1.268, 1.269

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Mon Nov 19 20:06:19 UTC 2007


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-8
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv25835

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-libata-dont-fail-revalidation-for-bad-gtf-methods.patch 
	linux-2.6-libata-pata_serverworks-fix-drive-combinations.patch 
Log Message:
* Mon Nov 19 2007 Chuck Ebbert <cebbert at redhat.com>
- libata: fix resume on some systems
- libata: fix pata_serverworks with some drive combinations


linux-2.6-libata-dont-fail-revalidation-for-bad-gtf-methods.patch:

--- NEW FILE linux-2.6-libata-dont-fail-revalidation-for-bad-gtf-methods.patch ---
X-Mozilla-Status: 0001
X-Mozilla-Status2: 00000000
Return-Path: <git-commits-head-owner at vger.kernel.org>
Received: from mail.boston.redhat.com ([unix socket])
	 by mail.boston.redhat.com (Cyrus v2.2.12-Invoca-RPM-2.2.12-8.1.RHEL4) with LMTPA;
	 Sun, 11 Nov 2007 02:04:34 -0500
X-Sieve: CMU Sieve 2.2
Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254])
	by mail.boston.redhat.com (8.13.1/8.13.1) with ESMTP id lAB74Ycp014461;
	Sun, 11 Nov 2007 02:04:34 -0500
Received: from mx1.redhat.com (mx1.redhat.com [172.16.48.31])
	by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id lAB74XrW020470;
	Sun, 11 Nov 2007 02:04:33 -0500
Received: from vger.kernel.org (vger.kernel.org [209.132.176.167])
	by mx1.redhat.com (8.13.8/8.13.1) with ESMTP id lAB6ptmC020626;
	Sun, 11 Nov 2007 02:04:26 -0500
Received: (majordomo at vger.kernel.org) by vger.kernel.org via listexpand
	id S1755344AbXKJW74 (ORCPT <rfc822;cebbert at redhat.com> + 6 others);
	Sat, 10 Nov 2007 17:59:56 -0500
Received: (majordomo at vger.kernel.org) by vger.kernel.org id S1755289AbXKJW74
	(ORCPT <rfc822;git-commits-head-outgoing>);
	Sat, 10 Nov 2007 17:59:56 -0500
Received: from hera.kernel.org ([140.211.167.34]:42550 "EHLO hera.kernel.org"
	rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP
	id S1755934AbXKJW7h (ORCPT
	<rfc822;git-commits-head at vger.kernel.org>);
	Sat, 10 Nov 2007 17:59:37 -0500
Received: from hera.kernel.org (localhost [127.0.0.1])
	by hera.kernel.org (8.13.8/8.13.8) with ESMTP id lAAMxaC0031855
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO)
	for <git-commits-head at vger.kernel.org>; Sat, 10 Nov 2007 22:59:36 GMT
Received: (from dwmw2 at localhost)
	by hera.kernel.org (8.13.8/8.13.1/Submit) id lAAMxZkx031838
	for git-commits-head at vger.kernel.org; Sat, 10 Nov 2007 22:59:35 GMT
Date: 	Sat, 10 Nov 2007 22:59:35 GMT
Message-Id: <200711102259.lAAMxZkx031838 at hera.kernel.org>
From: Linux Kernel Mailing List <linux-kernel at vger.kernel.org>
To: git-commits-head at vger.kernel.org
Subject: libata: Don't fail device revalidation for bad _GTF methods
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Git-Commit: 037f6bb79f753c014bc84bca0de9bf98bb5ab169
X-Git-Parent: 32ebbc0c0d5d18c0135b55d1eb0029f48c54aff0
X-Spam-Status: No, score=-4.4 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00
	autolearn=ham version=3.2.3
X-Spam-Checker-Version: 	SpamAssassin 3.2.3 (2007-08-08) on hera.kernel.org
Sender: git-commits-head-owner at vger.kernel.org
Precedence: bulk
X-Mailing-List: 	git-commits-head at vger.kernel.org
X-RedHat-Spam-Score: 0.147 
X-Scanned-By: MIMEDefang 2.63 on 172.16.48.31

Gitweb:     http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=037f6bb79f753c014bc84bca0de9bf98bb5ab169
Commit:     037f6bb79f753c014bc84bca0de9bf98bb5ab169
Parent:     32ebbc0c0d5d18c0135b55d1eb0029f48c54aff0
Author:     Matthew Garrett <mjg59 at srcf.ucam.org>
AuthorDate: Thu Nov 8 18:37:07 2007 +0000
Committer:  Jeff Garzik <jeff at garzik.org>
CommitDate: Sat Nov 10 00:31:27 2007 -0500

    libata: Don't fail device revalidation for bad _GTF methods
    
    Experience suggests that the _GTF method may be bad. We currently fail
    device revalidation in that case, which seems excessive.
    
    Signed-off-by: Matthew Garrett <mjg59 at srcf.ucam.org>
    Signed-off-by: Jeff Garzik <jeff at garzik.org>
---
 drivers/ata/libata-acpi.c |   10 ++--------
 1 files changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/ata/libata-acpi.c b/drivers/ata/libata-acpi.c
index 08a52dd..545ea86 100644
--- a/drivers/ata/libata-acpi.c
+++ b/drivers/ata/libata-acpi.c
@@ -312,7 +312,7 @@ EXPORT_SYMBOL_GPL(ata_acpi_stm);
  *
  * RETURNS:
  * Number of taskfiles on success, 0 if _GTF doesn't exist or doesn't
- * contain valid data.  -errno on other errors.
+ * contain valid data.
  */
 static int ata_dev_get_GTF(struct ata_device *dev, struct ata_acpi_gtf **gtf,
 			   void **ptr_to_free)
@@ -339,7 +339,6 @@ static int ata_dev_get_GTF(struct ata_device *dev, struct ata_acpi_gtf **gtf,
 			ata_dev_printk(dev, KERN_WARNING,
 				       "_GTF evaluation failed (AE 0x%x)\n",
 				       status);
-			rc = -EIO;
 		}
 		goto out_free;
 	}
@@ -359,7 +358,6 @@ static int ata_dev_get_GTF(struct ata_device *dev, struct ata_acpi_gtf **gtf,
 		ata_dev_printk(dev, KERN_WARNING,
 			       "_GTF unexpected object type 0x%x\n",
 			       out_obj->type);
-		rc = -EINVAL;
 		goto out_free;
 	}
 
@@ -367,7 +365,6 @@ static int ata_dev_get_GTF(struct ata_device *dev, struct ata_acpi_gtf **gtf,
 		ata_dev_printk(dev, KERN_WARNING,
 			       "unexpected _GTF length (%d)\n",
 			       out_obj->buffer.length);
-		rc = -EINVAL;
 		goto out_free;
 	}
 
@@ -511,10 +508,7 @@ static int ata_acpi_exec_tfs(struct ata_device *dev)
 	int gtf_count, i, rc;
 
 	/* get taskfiles */
-	rc = ata_dev_get_GTF(dev, &gtf, &ptr_to_free);
-	if (rc < 0)
-		return rc;
-	gtf_count = rc;
+	gtf_count = ata_dev_get_GTF(dev, &gtf, &ptr_to_free);
 
 	/* execute them */
 	for (i = 0, rc = 0; i < gtf_count; i++) {
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


linux-2.6-libata-pata_serverworks-fix-drive-combinations.patch:

--- NEW FILE linux-2.6-libata-pata_serverworks-fix-drive-combinations.patch ---
bz 379971?

Gitweb:     http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36beb82390235236c60eb97ca526b1cad97e2df3
Commit:     36beb82390235236c60eb97ca526b1cad97e2df3
Parent:     152af05cc85119d294b977ab4de07a781795c298
Author:     Alan Cox <alan at lxorguk.ukuu.org.uk>
AuthorDate: Mon Nov 5 15:04:40 2007 +0000
Committer:  Jeff Garzik <jeff at garzik.org>
CommitDate: Mon Nov 5 18:08:46 2007 -0500

    pata_serverworks: Fix problem with some drive combinations
    
    The driver used the channel not the device number for deciding where to
    load some timing parameters. Also change so that we clear the UDMA field
    as the old driver did. Not believed neccessary but does no harm.
    
    Signed-off-by: Alan Cox <alan at redhat.com>
    Signed-off-by: Jeff Garzik <jeff at garzik.org>
---
 drivers/ata/pata_serverworks.c |   11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/ata/pata_serverworks.c b/drivers/ata/pata_serverworks.c
index df68806..8bed888 100644
--- a/drivers/ata/pata_serverworks.c
+++ b/drivers/ata/pata_serverworks.c
@@ -274,28 +274,27 @@ static void serverworks_set_dmamode(struct ata_port *ap, struct ata_device *adev
 {
 	static const u8 dma_mode[] = { 0x77, 0x21, 0x20 };
 	int offset = 1 + 2 * ap->port_no - adev->devno;
-	int devbits = (2 * ap->port_no + adev->devno);
+	int devbits = 2 * ap->port_no + adev->devno;
 	u8 ultra;
 	u8 ultra_cfg;
 	struct pci_dev *pdev = to_pci_dev(ap->host->dev);
 
 	pci_read_config_byte(pdev, 0x54, &ultra_cfg);
+	pci_read_config_byte(pdev, 0x56 + ap->port_no, &ultra);
+	ultra &= ~(0x0F << (adev->devno * 4));
 
 	if (adev->dma_mode >= XFER_UDMA_0) {
 		pci_write_config_byte(pdev, 0x44 + offset,  0x20);
 
-		pci_read_config_byte(pdev, 0x56 + ap->port_no, &ultra);
-		ultra &= ~(0x0F << (ap->port_no * 4));
 		ultra |= (adev->dma_mode - XFER_UDMA_0)
-					<< (ap->port_no * 4);
-		pci_write_config_byte(pdev, 0x56 + ap->port_no, ultra);
-
+					<< (adev->devno * 4);
 		ultra_cfg |=  (1 << devbits);
 	} else {
 		pci_write_config_byte(pdev, 0x44 + offset,
 			dma_mode[adev->dma_mode - XFER_MW_DMA_0]);
 		ultra_cfg &= ~(1 << devbits);
 	}
+	pci_write_config_byte(pdev, 0x56 + ap->port_no, ultra);
 	pci_write_config_byte(pdev, 0x54, ultra_cfg);
 }
 


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/kernel.spec,v
retrieving revision 1.268
retrieving revision 1.269
diff -u -r1.268 -r1.269
--- kernel.spec	19 Nov 2007 17:29:06 -0000	1.268
+++ kernel.spec	19 Nov 2007 20:05:42 -0000	1.269
@@ -667,6 +667,8 @@
 Patch662: linux-2.6-libata-add-dma-disable-option.patch
 Patch663: linux-2.6-libata-sata_sis-fix-scr-read.patch
 Patch664: linux-2.6-libata-sata_sis_correct-sg-table-size.patch
+Patch665: linux-2.6-libata-dont-fail-revalidation-for-bad-gtf-methods.patch
+Patch666: linux-2.6-libata-pata_serverworks-fix-drive-combinations.patch
 Patch670: linux-2.6-ata-quirk.patch
 Patch680: linux-2.6-wireless.patch
 Patch681: linux-2.6-wireless-pending.patch
@@ -1255,6 +1257,10 @@
 # Fix broken sata_sis in 2.6.23
 ApplyPatch linux-2.6-libata-sata_sis-fix-scr-read.patch
 ApplyPatch linux-2.6-libata-sata_sis_correct-sg-table-size.patch
+# fix resume failure on some systems
+ApplyPatch linux-2.6-libata-dont-fail-revalidation-for-bad-gtf-methods.patch
+# serverworks is broken with some drive combinations
+ApplyPatch linux-2.6-libata-pata_serverworks-fix-drive-combinations.patch
 
 # wireless patches headed for 2.6.24
 ApplyPatch linux-2.6-wireless.patch
@@ -1959,6 +1965,10 @@
 
 %changelog
 * Mon Nov 19 2007 Chuck Ebbert <cebbert at redhat.com>
+- libata: fix resume on some systems
+- libata: fix pata_serverworks with some drive combinations
+
+* Mon Nov 19 2007 Chuck Ebbert <cebbert at redhat.com>
 - Linux 2.6.23.8
 
 * Thu Nov 15 2007 John W. Linville <linville at redhat.com>




More information about the fedora-extras-commits mailing list