Received: by 10.213.65.68 with SMTP id h4csp31845imn; Mon, 26 Mar 2018 14:23:33 -0700 (PDT) X-Google-Smtp-Source: AG47ELs2STkNvE0NCoMmuIFUbuaWzc3t3HLcIOeRk7ur2Bus5XWgq+Lj5bRx3F6iYReykxeOZEod X-Received: by 2002:a17:902:20eb:: with SMTP id v40-v6mr42308217plg.277.1522099413913; Mon, 26 Mar 2018 14:23:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522099413; cv=none; d=google.com; s=arc-20160816; b=e13gakLjxtcCuPxCwcsAcwi5+yNcNZe5hT978A65Dp7X1UIONU+2v4closTSwRgDgA dTnRdo6Y7+oStfvRkOLyGnJOyKF/KNVQyZwUKpTlqMS83m9GAPdrqVt4+e+UYbDdNURZ X9rGWJvi8iXY0ezqUvTMyGpHzLXkc3ML0Dr/xzGJHfGV/ih0W5jVahP4cdTweyeOMNyP ZavfKUZpwjzMh9HF7I48GCgWdPG17vmcNx3ozEFRbvV7klnRR0pudCCjRm3AMkXxgMNI zOwLSVDWlAMrRo4uLU+dE6fxSvIL2dLqXM6m1g2755H1dD5mWgIIBsJRu9j5+73N4Kxr seQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:arc-authentication-results; bh=LtIBCe52A7QlgQZ1B620Mz6tRpkriEohGP0uoDuTga4=; b=rgWim90YpNYFZvmrd4IDySh0Ex8zFYKyXGhP4v8RGKvsHgQ9Jfn1fmwxAcd8KqtshM JoCBgKijRPzFNIErw6GHr4xTliE7/DJlHha8doIRkeiqm4HI9P30/eEInmEK/USRnKJl C3rFZlhHCC0ENGyF+ZBLvAxD2U4rqaFuCiRzI6B2Tt7mNkfgUVjHZ9Zu386EQGO+DxGZ nNLC9iDQIHKMvkk+jVkI7faYa5HyN6gshQ7JPDmpHpeGXQbjJf1RwnJj1zOf052a8yLa Qyi0p4j/n3gSlKnFNpBnS3wQons1MMWr+guhHnJrSxQ7Tg1AtHGRKQ5Bhqic5MUEtJwk zPHA== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z124si8635691pfb.188.2018.03.26.14.23.19; Mon, 26 Mar 2018 14:23:33 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752197AbeCZVWD (ORCPT + 99 others); Mon, 26 Mar 2018 17:22:03 -0400 Received: from smtp2.provo.novell.com ([137.65.250.81]:49268 "EHLO smtp2.provo.novell.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751805AbeCZVWB (ORCPT ); Mon, 26 Mar 2018 17:22:01 -0400 Received: from linux-n805.suse.de (prv-ext-foundry1int.gns.novell.com [137.65.251.240]) by smtp2.provo.novell.com with ESMTP (TLS encrypted); Mon, 26 Mar 2018 15:21:56 -0600 From: Davidlohr Bueso To: peterz@infradead.org, mingo@kernel.org, akpm@linux-foundation.org Cc: linux-kernel@vger.kernel.org, Davidlohr Bueso , Wolfram Sang , linux-i2c@vger.kernel.org, Davidlohr Bueso Subject: [PATCH 1/6] drivers/i2c: Update i2c_trace_msg static key to modern api Date: Mon, 26 Mar 2018 14:09:24 -0700 Message-Id: <20180326210929.5244-2-dave@stgolabs.net> X-Mailer: git-send-email 2.13.6 In-Reply-To: <20180326210929.5244-1-dave@stgolabs.net> References: <20180326210929.5244-1-dave@stgolabs.net> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org No changes in refcount semantics -- key init is false; replace static_key_slow_inc|dec with static_branch_inc|dec static_key_false with static_branch_unlikely Added a '_key' suffix to i2c_trace_msg, for better self documentation. Cc: Wolfram Sang Cc: linux-i2c@vger.kernel.org Signed-off-by: Davidlohr Bueso --- drivers/i2c/i2c-core-base.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c index 16a3b73375a6..bfcff2a6f0a3 100644 --- a/drivers/i2c/i2c-core-base.c +++ b/drivers/i2c/i2c-core-base.c @@ -69,18 +69,18 @@ static DEFINE_IDR(i2c_adapter_idr); static int i2c_detect(struct i2c_adapter *adapter, struct i2c_driver *driver); -static struct static_key i2c_trace_msg = STATIC_KEY_INIT_FALSE; +static DEFINE_STATIC_KEY_FALSE(i2c_trace_msg_key); static bool is_registered; int i2c_transfer_trace_reg(void) { - static_key_slow_inc(&i2c_trace_msg); + static_branch_inc(&i2c_trace_msg_key); return 0; } void i2c_transfer_trace_unreg(void) { - static_key_slow_dec(&i2c_trace_msg); + static_branch_dec(&i2c_trace_msg_key); } const struct i2c_device_id *i2c_match_id(const struct i2c_device_id *id, @@ -1848,11 +1848,12 @@ int __i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) if (adap->quirks && i2c_check_for_quirks(adap, msgs, num)) return -EOPNOTSUPP; - /* i2c_trace_msg gets enabled when tracepoint i2c_transfer gets + /* + * i2c_trace_msg_key gets enabled when tracepoint i2c_transfer gets * enabled. This is an efficient way of keeping the for-loop from * being executed when not needed. */ - if (static_key_false(&i2c_trace_msg)) { + if (static_branch_unlikely(&i2c_trace_msg_key)) { int i; for (i = 0; i < num; i++) if (msgs[i].flags & I2C_M_RD) @@ -1871,7 +1872,7 @@ int __i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) break; } - if (static_key_false(&i2c_trace_msg)) { + if (static_branch_unlikely(&i2c_trace_msg_key)) { int i; for (i = 0; i < ret; i++) if (msgs[i].flags & I2C_M_RD) -- 2.13.6