From patchwork Wed Apr 13 16:50:16 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heitor Alves de Siqueira X-Patchwork-Id: 1616857 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=canonical.com header.i=@canonical.com header.a=rsa-sha256 header.s=20210705 header.b=ETw33kgS; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4KdpW35h52z9sGS for ; Thu, 14 Apr 2022 02:50:39 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1negCQ-0002Dj-FJ; Wed, 13 Apr 2022 16:50:34 +0000 Received: from smtp-relay-internal-0.internal ([10.131.114.225] helo=smtp-relay-internal-0.canonical.com) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1negCM-0002Ak-GJ for kernel-team@lists.ubuntu.com; Wed, 13 Apr 2022 16:50:30 +0000 Received: from mail-ot1-f71.google.com (mail-ot1-f71.google.com [209.85.210.71]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 81DA73F157 for ; Wed, 13 Apr 2022 16:50:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1649868629; bh=6ABABTyBetH/wkdq2h6uBZTIqQ1ZuhHMcf8fn+CJUn8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ETw33kgSJYEMA/EHI5KO9TxWJqUfZtv3obqvYjFkT/Ac3D5FMQgCQj9UbFCOFA9Ep eV7/GPS+yjkoozWkq2ql8NZvSLmAzkbQc8PIAVmOtYWG/yKAFiu6Sfm5Kq+a/TP5SY cUdRsa7BGkRAKxFXQhdDfEx8+OZldzYD4+c+yMr67aL7rUYFpxErvsluVenxwEBRmm g3KiqJRtnfK79SthBNyT9u1C8n9p/GkJUa+tSsHB40KpwW38Uzv7rhwpPpp7zRyrcN wEcncjTmb76RaWRE2lg68iKJNJTP2mGb045mPPdxHiYH+n/gF8jOaCobFEfw4cWYAt QLm5A14TsIBSQ== Received: by mail-ot1-f71.google.com with SMTP id v12-20020a05683018cc00b005cb5db35adaso1228848ote.22 for ; Wed, 13 Apr 2022 09:50:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6ABABTyBetH/wkdq2h6uBZTIqQ1ZuhHMcf8fn+CJUn8=; b=nqv6tDDAERNy7EuiFq29VjV5CIaE3ZZvBc7sY2lAbyCBGH3NT0uDzWi0rrjDuzAkjp ZzaSNm1X71dx8soLPTUrv1ZVIVpEmzbq+EWUSZEcfXOZ3b784AoMCNtVvmnog+Y0bpvX 7864B0zE/Rj6PQrOWhRGW0NbpTdQokAW0EPAayhypBggW0cudrt7wddbib0vGu2QIXNv +gpkgRdz3BASG0x2UVq9zdHK1qqSMk9owYFxC9EZNWaLu5wN7gDnR9ia7wlGAz/792fH oqF31jO2tOURviZzL/S+l2wROMivuKlCfr8xkUEQsSaA2uIvmp6FjicbXsfjopeoG5Bc yPzQ== X-Gm-Message-State: AOAM5310ih/Tmp4YDDJISg1y3jLvEq7qxQDGZgrHIqVRVMVopcbiTudQ nSXH3twuSDUYdhHqgJqc8bSOXXyt4TfL/GyMTDB5YhV01MzxhDhrBMC8RwAwclLzs6iFJw5ePSf tiJfUdqXYXy5yX6fUW8UEYW+Z3SKh6qj+d22G7thWlw== X-Received: by 2002:a05:6808:14ca:b0:2da:2fbd:ebad with SMTP id f10-20020a05680814ca00b002da2fbdebadmr4415248oiw.24.1649868628127; Wed, 13 Apr 2022 09:50:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzKMAek0Nc3wc+dXMyudlO0hQrjixMj/XXghf3dkXgAJyMOpgF9rzGV3yd+krsfrsPUeiYneA== X-Received: by 2002:a05:6808:14ca:b0:2da:2fbd:ebad with SMTP id f10-20020a05680814ca00b002da2fbdebadmr4415231oiw.24.1649868627884; Wed, 13 Apr 2022 09:50:27 -0700 (PDT) Received: from sonoran.. ([2804:431:cfea:8429::436]) by smtp.gmail.com with ESMTPSA id h11-20020a9d6f8b000000b005b230ab0461sm14695563otq.64.2022.04.13.09.50.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Apr 2022 09:50:27 -0700 (PDT) From: Heitor Alves de Siqueira To: kernel-team@lists.ubuntu.com Subject: [PATCH 1/1] [SRU][OEM-5.14] ACPI: PM: Do not turn off power resources in unknown state Date: Wed, 13 Apr 2022 13:50:16 -0300 Message-Id: <20220413165017.360226-3-halves@canonical.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220413165017.360226-1-halves@canonical.com> References: <20220413165017.360226-1-halves@canonical.com> MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Heitor Alves de Siqueira Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" From: "Rafael J. Wysocki" BugLink: https://bugs.launchpad.net/bugs/1942624 Commit 6381195ad7d0 ("ACPI: power: Rework turning off unused power resources") caused power resources in unknown state with reference counters equal to zero to be turned off too, but that caused issues to appear in the field, so modify the code to only turn off power resources that are known to be "on". Link: https://lore.kernel.org/linux-acpi/6faf4b92-78d5-47a4-63df-cc2bab7769d0@molgen.mpg.de/ Fixes: 6381195ad7d0 ("ACPI: power: Rework turning off unused power resources") Reported-by: Andreas K. Huettel Tested-by: Andreas K. Huettel Signed-off-by: Rafael J. Wysocki Cc: 5.14+ # 5.14+ (backported from commit bc28368596436e6e81ffc48c815b8225d96121c0) Signed-off-by: Heitor Alves de Siqueira --- drivers/acpi/power.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/drivers/acpi/power.c b/drivers/acpi/power.c index 36c554a1cfbf..081adec0065b 100644 --- a/drivers/acpi/power.c +++ b/drivers/acpi/power.c @@ -1003,13 +1003,8 @@ void acpi_turn_off_unused_power_resources(void) list_for_each_entry_reverse(resource, &acpi_power_resource_list, list_node) { mutex_lock(&resource->resource_lock); - /* - * Turn off power resources in an unknown state too, because the - * platform firmware on some system expects the OS to turn off - * power resources without any users unconditionally. - */ if (!resource->ref_count && - resource->state != ACPI_POWER_RESOURCE_STATE_OFF) { + resource->state == ACPI_POWER_RESOURCE_STATE_ON) { dev_dbg(&resource->device.dev, "Turning OFF\n"); __acpi_power_off(resource); }