lkml.org 
[lkml]   [2018]   [Jan]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL for 4.14 025/100] ACPI / bus: Leave modalias empty for devices which are not present
    Date
    From: Hans de Goede <hdegoede@redhat.com>

    [ Upstream commit 10809bb976648ac58194a629e3d7af99e7400297 ]

    Most Bay and Cherry Trail devices use a generic DSDT with all possible
    peripheral devices present in the DSDT, with their _STA returning 0x00 or
    0x0f based on AML variables which describe what is actually present on
    the board.

    Since ACPI device objects with a 0x00 status (not present) still get an
    entry under /sys/bus/acpi/devices, and those entry had an acpi:PNPID
    modalias, userspace would end up loading modules for non present hardware.

    This commit fixes this by leaving the modalias empty for non present
    devices. This results in 10 modules less being loaded with a generic
    distro kernel config on my Cherry Trail test-device (a GPD pocket).

    Signed-off-by: Hans de Goede <hdegoede@redhat.com>
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    ---
    drivers/acpi/device_sysfs.c | 4 ++++
    1 file changed, 4 insertions(+)

    diff --git a/drivers/acpi/device_sysfs.c b/drivers/acpi/device_sysfs.c
    index 24418932612e..a041689e5701 100644
    --- a/drivers/acpi/device_sysfs.c
    +++ b/drivers/acpi/device_sysfs.c
    @@ -146,6 +146,10 @@ static int create_pnp_modalias(struct acpi_device *acpi_dev, char *modalias,
    int count;
    struct acpi_hardware_id *id;

    + /* Avoid unnecessarily loading modules for non present devices. */
    + if (!acpi_device_is_present(acpi_dev))
    + return 0;
    +
    /*
    * Since we skip ACPI_DT_NAMESPACE_HID from the modalias below, 0 should
    * be returned if ACPI_DT_NAMESPACE_HID is the only ACPI/PNP ID in the
    --
    2.11.0
    \
     
     \ /
      Last update: 2018-01-24 06:03    [W:4.270 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site