Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp116983pxb; Tue, 28 Sep 2021 16:59:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzhvJOWobrOg0QZzQPpWnPqB/DWwJUMIlUHPk0zJaRxin+PDHbuNM20yruiwDS7bk5z/d+1 X-Received: by 2002:a17:906:3fc8:: with SMTP id k8mr9995943ejj.217.1632873561907; Tue, 28 Sep 2021 16:59:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632873561; cv=none; d=google.com; s=arc-20160816; b=OXZe3Nhwf/lqnUoags0PN6eUjyAVTYe0SSQd7/+O+ZeZMLQPfOGZlBhze/bPJwVSMK 1LJx/kWOcXFb4X1qPity75NYp43Cgma81r3px4GAdwu6EfvCRLlKXDCEakyPIatoTOhP E7btlO+NZeIKMF4At9SW7Lnad0cGiSIbcrMjdAbCGpgTSltb0zTKhZMy/QP5pVL3u/xp ma+C1La9gMFnYwZWRhmUSiW7Ouhrxq14p7ZmY2t5XJIwVlCtDqhdfBMFDS/LuMAUMFY4 Zwgu1Yt17WB3HVBxUUMz5Chql9Kkw9SJQeajq6/hMPzQ7mQ5GqA3G2nepUYIi4hgpPaJ uYEg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:references:mime-version :message-id:in-reply-to:date:dkim-signature; bh=FyJ369ORhnTpgfvJUNNRTX2KSF/fWPdPTlu0VC0PyLM=; b=b9wyTnp6LHiR81rRgIzUdzEHZmVJcJ1cHwWl/FSqsPd1r9qHcpj95c4DePwBvhLhqI 14869OePbS2sJQbHmB4l8LOhAYcWEKW/BB8lTYQwlJeZq9P3HCsumz+WINVSJMdtodNb XA9S8n1UkmZwcovTnAKzUCUsmRRYqr3MqwzHU7hDFERbwpOi3la9t0hFz/xJLd8azRvX 9g5ijQHMtqaTwW3+BVWJX/SgLu1dexpMtav92xq1gq7wgLVPcWEQvHXdzIpTRsLM75JB ViXuiWIH/2h0DMFmnE3/IMV0X7nnD4dY2XA/hG3lKHJpSbL8YHIYDYPdNtuA3UM5DZeb J/kA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b="PaaG/yNg"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c14si948458edm.165.2021.09.28.16.58.58; Tue, 28 Sep 2021 16:59:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b="PaaG/yNg"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243433AbhI1X6j (ORCPT + 99 others); Tue, 28 Sep 2021 19:58:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43104 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243390AbhI1X6g (ORCPT ); Tue, 28 Sep 2021 19:58:36 -0400 Received: from mail-qv1-xf4a.google.com (mail-qv1-xf4a.google.com [IPv6:2607:f8b0:4864:20::f4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2F4D7C06174E for ; Tue, 28 Sep 2021 16:56:56 -0700 (PDT) Received: by mail-qv1-xf4a.google.com with SMTP id dl13-20020ad44e0d000000b0038263927ea7so2451400qvb.9 for ; Tue, 28 Sep 2021 16:56:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=FyJ369ORhnTpgfvJUNNRTX2KSF/fWPdPTlu0VC0PyLM=; b=PaaG/yNgQ5UlgBkmQMFEj8x5onJx3t43YX9/gnMIOkLb7hb/2GHCo2NiDGbztXWhU5 PfEZ+2dEaedybg8p1NuLLUGjjBsUjMjmQidENXeBsYaPdIxgl4NREIsuMiQ5ujBcKhAy e3DQhc8vYrDPZly86xqtzuaQ5jsETHOFRYEiQrMZ1HNZUgJNbiuZHQJMpQ8t2ZcBuo/s RhQ9Gm/FUQ99OUT1SsozOGpD2/jCyDK8nVab+7l8+wMDHLWJWlCwdiYntY8vl9o2VXJx DZabR5owhv031c4fsluZeHJvOXU7TyaOq7ESATZPsUeXaJjSQ9R/JHeWwVvRCNv3wiKk LLhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=FyJ369ORhnTpgfvJUNNRTX2KSF/fWPdPTlu0VC0PyLM=; b=cnSvnvzd2lmObQBbPHcMJ5MbxLn1ba/q/RLc2fl59mFXpWXj89YSWvo391NOK3Olgk 8isJuwd43IwDdxBxuiaX6o6CCFmkNb9gu4sHvMLw/yXTEts2o3phEmM7UvJP4TRNPd7E yOOPJ63EQoW7hcaWSYidiAhP9fxrs9W9ZibS8lo4Jhb5RO+MRIDXfsrDx+3lBbsbIIDt inYkLHui0mfMCR7yVtn5kCDTBO5lCHJFM3KSyXrATo9q2KqgBevImsGkbvZYWtxo8Kwg yIG/7WxxqEA/err3KC15gEj/TlUGdHldPBJSzUgfue7f2QgzgGYb1dIT5gltqFGp24yL EKqg== X-Gm-Message-State: AOAM531ueFUDW1Dci/ay7+4xCGMm0OA8v8p34yW0FZi9klKKsHRjgnfn 4lX5wGRuvoLZWIJWvNuqb5iznKr6/8aowN+iCIs= X-Received: from willmcvicker.c.googlers.com ([fda3:e722:ac3:cc00:24:72f4:c0a8:2dd0]) (user=willmcvicker job=sendgmr) by 2002:ad4:476a:: with SMTP id d10mr8228907qvx.59.1632873415332; Tue, 28 Sep 2021 16:56:55 -0700 (PDT) Date: Tue, 28 Sep 2021 23:56:19 +0000 In-Reply-To: <20210928235635.1348330-1-willmcvicker@google.com> Message-Id: <20210928235635.1348330-3-willmcvicker@google.com> Mime-Version: 1.0 References: <20210928235635.1348330-1-willmcvicker@google.com> X-Mailer: git-send-email 2.33.0.685.g46640cef36-goog Subject: [PATCH v2 02/12] timekeeping: add API for getting timekeeping_suspended From: Will McVicker To: Russell King , Krzysztof Kozlowski , Catalin Marinas , Will Deacon , Michael Turquette , Stephen Boyd , Sylwester Nawrocki , Tomasz Figa , Chanwoo Choi , Linus Walleij , Alessandro Zummo , Alexandre Belloni , John Stultz , Thomas Gleixner Cc: Lee Jones , Geert Uytterhoeven , Saravana Kannan , Will McVicker , kernel-team@android.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org, linux-clk@vger.kernel.org, linux-gpio@vger.kernel.org, linux-rtc@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This allows modules to access the value of timekeeping_suspended without giving them write access to the variable. Signed-off-by: Will McVicker --- include/linux/timekeeping.h | 1 + kernel/time/timekeeping.c | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/include/linux/timekeeping.h b/include/linux/timekeeping.h index 78a98bdff76d..cdc84421d77b 100644 --- a/include/linux/timekeeping.h +++ b/include/linux/timekeeping.h @@ -8,6 +8,7 @@ /* Included from linux/ktime.h */ void timekeeping_init(void); +extern bool timekeeping_is_suspended(void); extern int timekeeping_suspended; /* Architecture timer tick functions: */ diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index b348749a9fc6..27873c052e57 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -57,6 +57,17 @@ static struct timekeeper shadow_timekeeper; /* flag for if timekeeping is suspended */ int __read_mostly timekeeping_suspended; +/** + * timekeeping_is_suspended - query for timekeeping_suspended + * + * Returns the true/false based on the value of timekeeping_suspened. + */ +bool timekeeping_is_suspended(void) +{ + return timekeeping_suspended ? true : false; +} +EXPORT_SYMBOL_GPL(timekeeping_is_suspended); + /** * struct tk_fast - NMI safe timekeeper * @seq: Sequence counter for protecting updates. The lowest bit -- 2.33.0.685.g46640cef36-goog