Re: [PATCH] ata-acpi: don't call _GTF for disabled drive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tuesday, 25 of March 2008, Shaohua Li wrote:
> I got below log after a S3 resume in a ASUS A6VC laptop. The system has
> only one IDE drive. It appears there is no reason calling _GTF for
> disabled drive.
> 
> ACPI Error (dsopcode-0483): Attempt to CreateField of length zero [20070126]
> ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.IDE0.RATA] (Node df822a7c), AE_AML_OPERAND_VALUE
> ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.IDE0.CHN1.DRV0._GTF] (Node df822bd0), AE_AML_OPERAND_VALUE
> ata2.00: _GTF evaluation failed (AE 0x3006)
> ACPI Error (dsopcode-0483): Attempt to CreateField of length zero [20070126]
> ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.IDE0.RATA] (Node df822a7c), AE_AML_OPERAND_VALUE
> ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.IDE0.CHN1.DRV1._GTF] (Node df822b94), AE_AML_OPERAND_VALUE
> ata2.01: _GTF evaluation failed (AE 0x3006)
> 
> Signed-off-by: Shaohua Li <shaohua.li@xxxxxxxxx>
> 
> diff --git a/drivers/ata/libata-acpi.c b/drivers/ata/libata-acpi.c
> index bf98a56..7cbf023 100644
> --- a/drivers/ata/libata-acpi.c
> +++ b/drivers/ata/libata-acpi.c
> @@ -839,7 +839,8 @@ void ata_acpi_on_resume(struct ata_port *ap)
>  		 */
>  		ata_link_for_each_dev(dev, &ap->link) {
>  			ata_acpi_clear_gtf(dev);

Hmm.  What is the effect of calling ata_acpi_clear_gtf() on a disabled device? 

> -			if (ata_dev_get_GTF(dev, NULL) >= 0)
> +			if (ata_dev_enabled(dev) &&
> +			    ata_dev_get_GTF(dev, NULL) >= 0)
>  				dev->flags |= ATA_DFLAG_ACPI_PENDING;
>  		}
>  	} else {
> @@ -849,7 +850,8 @@ void ata_acpi_on_resume(struct ata_port *ap)
>  		 */
>  		ata_link_for_each_dev(dev, &ap->link) {
>  			ata_acpi_clear_gtf(dev);
> -			dev->flags |= ATA_DFLAG_ACPI_PENDING;
> +			if (ata_dev_enabled(dev))
> +				dev->flags |= ATA_DFLAG_ACPI_PENDING;
>  		}
>  	}
>  }
> 

Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux