[Bugme-new] [Bug 32602] New: nouveau_acpi/intel_acpi call _DSM with wrong parameter

bugzilla-daemon at bugzilla.kernel.org bugzilla-daemon at bugzilla.kernel.org
Sun Apr 3 20:37:32 PDT 2011


https://bugzilla.kernel.org/show_bug.cgi?id=32602

           Summary: nouveau_acpi/intel_acpi call _DSM with wrong parameter
           Product: Drivers
           Version: 2.5
    Kernel Version: 2.6.38
          Platform: All
        OS/Version: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: Video(Other)
        AssignedTo: drivers_video-other at kernel-bugs.osdl.org
        ReportedBy: alex.williamson at redhat.com
        Regression: No


Both drivers/gpu/drm/i915/intel_acpi.c and
drivers/gpu/drm/nouveau/nouveau_acpi.c call _DSM methods with parameters of
_DSM(Buffer, Integer, Integer, Integer).  The ACPI spec defines the parameters
to be _DSM(Buffer, Integer, Integer, Package).  On a UL30VT, the AML preforms
operations on Arg3 which are not valid for an Integer data type, resulting in
ACPI faults.  Excerpt of DSDT:

Method (_DSM, 4, NotSerialized)
{
    If (LEqual (Arg0, Buffer (0x10)
            {
                /* 0000 */    0xA0, 0xA0, 0x95, 0x9D, 0x60, 0x00, 0x48, 0x4D,
                /* 0008 */    0xB3, 0x4D, 0x7E, 0x5F, 0xEA, 0x12, 0x9F, 0xD4
            }))
    {
        Store (Zero, Local0)
        Store (ShiftLeft (DerefOf (Index (Arg3, 0x03)), 0x18), Local0)
        Add (ShiftLeft (DerefOf (Index (Arg3, 0x02)), 0x10), Local0, Local0)
        Add (ShiftLeft (DerefOf (Index (Arg3, One)), 0x08), Local0, Local0)
        Add (ShiftLeft (DerefOf (Index (Arg3, Zero)), Zero), Local0, Local0)
        ...

The Index operation is only valid on a Buffer, String, or Package, which is
perfectly reasonable given the definition of the _DSM call.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


More information about the Bugme-new mailing list