Bug 5390

Summary: Unexpected dereference of Index reference returned by Method and immediately passed to another Method
Product: ACPI Reporter: Valery A Podrezov (Valery.A.Podrezov)
Component: ACPICA-CoreAssignee: Lin Ming (ming.m.lin)
Status: CLOSED DUPLICATE    
Severity: normal CC: acpi-bugzilla
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6 Subsystem:
Regression: --- Bisected commit-id:
Attachments: ASL code to reproduce bug.

Description Valery A Podrezov 2005-10-07 08:03:23 UTC
Most recent kernel where this bug did not occur:
Distribution:
Hardware Environment:
Software Environment:
Problem Description:

The Linux kernel ACPI interpreter fails the following
AML test when it is compiled into a simulator. So if an
OEM BIOS includes this code, Linux would fail.

Steps to reproduce:

Run interpreter with the .asl demo code attached below.
Comment 1 Valery A Podrezov 2005-10-07 08:08:51 UTC
Created attachment 6252 [details]
ASL code to reproduce bug.

The Index reference returned by some Method is immediately passed
to another Method. The expected value to be visible from inside
the Method is a reference to object but instead the object itself
is visible. That is wrong. The value represented by argX should
be reference to object but not object itself.

Note.
These might be references to Locals of the terminated Method returned that
reference!
But, it is not a disallowed somehow practice of ACPI.
So, we should follow integrity and uniformity.
The relevant local object pointed out by reference will be alive in this case
after
termination of the Method which returned reference until it is referred in some

effective operation.

INTERNAL BUG NUMBER

   115
Comment 2 Lin Ming 2007-11-05 17:30:07 UTC

*** This bug has been marked as a duplicate of bug 5389 ***