Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3919985imm; Mon, 4 Jun 2018 11:28:08 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKQVf8UGIIRsxQi9yXKbl2nicY+wVXMnf2MO+w9Cpwk1BFXD1+EyW52H4mJMppyZTFySRop X-Received: by 2002:a17:902:8602:: with SMTP id f2-v6mr22765369plo.5.1528136887953; Mon, 04 Jun 2018 11:28:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528136887; cv=none; d=google.com; s=arc-20160816; b=Gn/GANaTn2JkrZLDwpP3bKulCYwh8y0+aVTWVH6DMk5KKuMpT0JSmUUY1UKnzvBTlE pgIHZtwPACjloroG0kbXQJ9VPl6V108vPknEUs9pifGBnXQcuKVsgIaPjPh9MLZsZo3u H+l+QWG5WUBm0+c3qoFDd5WZLsu2EgqcqRYFHShCac49rsADhmaLDVkT++uzxhQgVdP3 1r1G7bnJkIg6XeAHgW85Q69g/sXKt+wf7ceaxgdfa59jSM2OsH8YbE3WEXbOrEOecQ/U qbuo10k+0cfTA+RPAFJx8/4HunG5MpHveaOH/Ghg96nqdZy6JVezzuzAHJfCHm0qMm2p M49Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=cY/lx9N/F/K4nv87zUevCU6Oznw/u93jHdEG4t3mlYU=; b=kntVsoVIK/9hKkm2i/qJnGA/ansc7Qe5oOa3WStZ6iPM1RQ0ooTSsbdYjMgmwlgE9W PX9w+wcN7IHjFYk2UIUK8B9baporn/51Nq85l6nrB+C1iXyezT657mC/+BMwCDBZQYDW qiu77Bx/5ncQhMh3U/aKQhxGPKjcjLJklZzck+rb1b+Vi1SyKAXjftb2pYOfWM5V3yuJ YxzCGF+DVYj6MurhVu4AlJUTWNO13gUe8GkDzlMjKuRSPbMrMRh3dsvVkpqsF8XWZKtf nLlkjxjiQXyCdJ8QyI4tT5RQ87JH9odLpFN6Qf5x2B0fSTT7mYKNC90b0CT9aNVp5+BT WXIg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=Y+o9JBPJ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r5-v6si8145023pgr.491.2018.06.04.11.27.52; Mon, 04 Jun 2018 11:28:07 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=Y+o9JBPJ; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751357AbeFDS0W (ORCPT + 99 others); Mon, 4 Jun 2018 14:26:22 -0400 Received: from mail-pg0-f65.google.com ([74.125.83.65]:46274 "EHLO mail-pg0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751091AbeFDS0U (ORCPT ); Mon, 4 Jun 2018 14:26:20 -0400 Received: by mail-pg0-f65.google.com with SMTP id d2-v6so4196074pga.13 for ; Mon, 04 Jun 2018 11:26:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id; bh=cY/lx9N/F/K4nv87zUevCU6Oznw/u93jHdEG4t3mlYU=; b=Y+o9JBPJLGFxiKSWiWqmQoBGFzXJ4y5BzxECgfAM0C/V70RkVRCJgHfIUmbrm5dScS vp5Mcvrn8riQPJlDxAW29KGQYmREMHw/ClNC31Ol+PIqwuobegwHUK0hTUfID5MuafY8 3bTR3x53L7L/um2Iitg78WPXSeWthDdHqhm1M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=cY/lx9N/F/K4nv87zUevCU6Oznw/u93jHdEG4t3mlYU=; b=IQVwtJN/syzWbCm+dvubgzNWPkwuGfJgUvrVOdUmPnFtMhu78KBtC/UIeqtlfIWP/Y 1AmgN80QMcU9XiNmvgqj6DdDXqSOcXYav5BUmSUw8LOtFW5Erzf1+pC6mlLPdjY//V9V FC4C0BmvZuEt9Q82FgkE2i6wYHqIekdNblw08GFQ4S9EvOS2gTFKoKvYuxF5r/U+rUdZ z5pSgh3pWiFHYBuvwSVZdPFMmFSDqI4dkj9Jf0LMZwa/t23mpdXffwaChSJANeOlDeuo fApcMepSuLQHplmFp6Q273tXxXZswrSy6QosmlN8AEY2fDLy6/qgD+jmomujs6/X/hGN 62VQ== X-Gm-Message-State: APt69E2OBcDMu7yyBYjq2fgRAfob8NuPBGJSGFSc8rHKozxlj+oTsfLw 8DOZREKoYy+bgrmnVq9zdQ9sHA== X-Received: by 2002:a65:5306:: with SMTP id m6-v6mr5691629pgq.250.1528136780026; Mon, 04 Jun 2018 11:26:20 -0700 (PDT) Received: from ravisadineni0.mtv.corp.google.com ([2620:0:1000:1501:1f1:adfa:a458:823f]) by smtp.gmail.com with ESMTPSA id d6-v6sm27274770pgc.38.2018.06.04.11.26.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Jun 2018 11:26:19 -0700 (PDT) From: Ravi Chandra Sadineni To: rjw@rjwysocki.net, lenb@kernel.org, ravisadineni@chromium.org, ravisadineni@google.com Cc: dmitry.torokhov@gmail.com, tbroch@google.com, linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org, rajatja@google.com, bleung@google.com, furquan@chromium.org Subject: [PATCH] ACPI LID: increment wakeup count only when notified. Date: Mon, 4 Jun 2018 11:26:12 -0700 Message-Id: <20180604182612.72699-1-ravisadineni@chromium.org> X-Mailer: git-send-email 2.17.1.1185.g55be947832-goog Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Currently ACPI LID increments wakeup count irrespective of the wake source. This is because we call acpi_lid_initialize_state on every resume. Userland deamons using wakeup_count to identify the potential wake source for the last wake will be thrown off by this. Instead increment the wakeup count only when there is a FIXED_HARDWARE/NOTFIY_STATUS event. Signed-off-by: Ravi Chandra Sadineni --- drivers/acpi/button.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/acpi/button.c b/drivers/acpi/button.c index f1cc4f9d31cd9..d40fef7241f08 100644 --- a/drivers/acpi/button.c +++ b/drivers/acpi/button.c @@ -235,9 +235,6 @@ static int acpi_lid_notify_state(struct acpi_device *device, int state) button->last_time = ktime_get(); } - if (state) - acpi_pm_wakeup_event(&device->dev); - ret = blocking_notifier_call_chain(&acpi_lid_notifier, state, device); if (ret == NOTIFY_DONE) ret = blocking_notifier_call_chain(&acpi_lid_notifier, state, @@ -417,6 +414,7 @@ static void acpi_button_notify(struct acpi_device *device, u32 event) /* fall through */ case ACPI_BUTTON_NOTIFY_STATUS: input = button->input; + acpi_pm_wakeup_event(&device->dev); if (button->type == ACPI_BUTTON_TYPE_LID) { mutex_lock(&button->input->mutex); users = button->input->users; @@ -426,7 +424,6 @@ static void acpi_button_notify(struct acpi_device *device, u32 event) } else { int keycode; - acpi_pm_wakeup_event(&device->dev); if (button->suspended) break; -- 2.17.1.1185.g55be947832-goog