Bug 8046

Summary: ACPI errors during kernel boot complaining about IDE controller
Product: Drivers Reporter: Lukas Hejtmanek (xhejtman)
Component: PlatformAssignee: acpi_platform-drivers (acpi_platform-drivers)
Status: REJECTED DUPLICATE    
Severity: normal    
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.20-git15 Subsystem:
Regression: --- Bisected commit-id:
Attachments: lspci output
dmesg with disabled SATA ACPI

Description Lukas Hejtmanek 2007-02-20 12:52:36 UTC
Most recent kernel where this bug did *NOT* occur: 2.6.20
Distribution: debian/unstable
Hardware Environment: Asus M6A Notebook
Software Environment: standard environment
Problem Description: I got the following ACPI errors during startup:
kernel: ata_piix 0000:00:1f.1: version 2.00ac7
kernel: ACPI: PCI Interrupt 0000:00:1f.1[A] -> GSI 18 (level, low) -> IRQ 18
kernel: PCI: Setting latency timer of device 0000:00:1f.1 to 64
kernel: ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x0001ffa0
irq 14
kernel: ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x0001ffa8
irq 15
kernel: scsi0 : ata_piix
kernel: ACPI Error (dsopcode-0481): Attempt to CreateField of length zero [20070126]
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.RATA] (Node eef90888), AE_AML_OPERAND_VALUE
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.CHN0.DRV0._GTF] (Node eef90aa4), AE_AML_OPERAND_VALUE
kernel: ata1.00: ATA-6: ST9100824A, 3.04, max UDMA/100
kernel: ata1.00: 195371568 sectors, multi 16: LBA48
kernel: ACPI Error (dsopcode-0481): Attempt to CreateField of length zero [20070126]
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.RATA] (Node eef90888), AE_AML_OPERAND_VALUE
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.CHN0.DRV0._GTF] (Node eef90aa4), AE_AML_OPERAND_VALUE
kernel: ata1.01: ATAPI, max UDMA/33
kernel: ACPI Error (dsopcode-0481): Attempt to CreateField of length zero [20070126]
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.RATA] (Node eef90888), AE_AML_OPERAND_VALUE
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.CHN0.DRV0._GTF] (Node eef90aa4), AE_AML_OPERAND_VALUE
kernel: ata1.00: configured for UDMA/33
kernel: ACPI Error (dsopcode-0481): Attempt to CreateField of length zero [20070126]
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.RATA] (Node eef90888), AE_AML_OPERAND_VALUE
kernel: ACPI Error (psparse-0537): Method parse/execution failed
[\_SB_.PCI0.IDE0.CHN0.DRV0._GTF] (Node eef90aa4), AE_AML_OPERAND_VALUE
kernel: ata1.01: configured for UDMA/33
kernel: scsi1 : ata_piix
kernel: ATA: abnormal status 0x7F on port 0x00010177
Comment 1 Lukas Hejtmanek 2007-02-20 15:13:45 UTC
Created attachment 10476 [details]
lspci output
Comment 2 Lukas Hejtmanek 2007-02-20 15:14:23 UTC
Created attachment 10477 [details]
dmesg with disabled SATA ACPI
Comment 3 Robert Moore 2007-03-06 16:00:01 UTC
Additional info from Thomas Renninger:

> ACPI Error (dsopcode-0481): Attempt to CreateField of length zero [20070126]

I expect this to be ACPI (interpreter) unrelated and the bug should be in 
drivers/ata/libata-acpi.c. The problem is that libata-acpi.c calls _GTF 
function before _STM has been called. This is forbidden by ACPI spec. The 
Field is created in _STM. When _GTF is called first, an uninitialized Field is 
tried to be accessed. ACPI subsystem behaves correctly here.

Probably same as bug #8095
Comment 4 Len Brown 2007-03-08 15:43:29 UTC
this goes away with libata.noacpi=1 ?
Comment 5 Len Brown 2007-03-08 15:54:12 UTC

*** This bug has been marked as a duplicate of 7907 ***
Comment 6 Lukas Hejtmanek 2007-03-12 08:14:44 UTC
with libata.noacpi=1 it is OK. 
Recodniging device as UDMA/33 has been another issue already solved.