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

            Bug ID: 91341
           Summary: Optimus laptop: Fail to evaluate _DSM due to type
                    mismatch on argument #4
           Product: ACPI
           Version: 2.5
    Kernel Version: -> 3.19-rc4
          Hardware: All
                OS: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: Config-Tables
          Assignee: acpi_config-tab...@kernel-bugs.osdl.org
          Reporter: pierre.mor...@free.fr
        Regression: No

Created attachment 163521
  --> https://bugzilla.kernel.org/attachment.cgi?id=163521&action=edit
dmesg with ACPI_DEBUG=y, drm.debug=0x3

Hardware: MacBook Pro 5,3 mid 2009 with two GPUs (9400M and 9600M GT), optimus
laptop

When Nouveau tries to determine whether the laptop is optimus compatible or
not, it receives a NULL object resulting in the `ACPI: \_SB_.PCI0.RP01.GFX0:
failed to evaluate _DSM` message. Prior to that acpi emits `ACPI Warning:
\_SB_.PCI0.RP01.GFX0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI
requires [Package] (20141107/nsarguments-95)`.

I had a look at the `acpi_evaluate_dsm` function which is (indirectly) called
by Nouveau, and its documentation does say that argument #4 should be an
ACPI_TYPE_PACKAGE, but that "some old BIOSes do expect a buffer". The function
takes a pointer to an acpi_object in order to allow callers to specify which
type argument #4 should be. Nouveau does specify it should be an
ACPI_TYPE_BUFFER, but the preceding warning is still emited, and
`acpi_evaluate_dsm` returns an ACPI_TYPE_INTEGER rather than the expected
ACPI_TYPE_BUFFER.

This error has been there for some time, but I can't recall if it is a
regression or if it was already there when I started using Linux on this
laptop.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.

------------------------------------------------------------------------------
New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
GigeNET is offering a free month of service with a new server in Ashburn.
Choose from 2 high performing configs, both with 100TB of bandwidth.
Higher redundancy.Lower latency.Increased capacity.Completely compliant.
http://p.sf.net/sfu/gigenet
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to