Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp3143436imm;
Sun, 24 Jun 2018 12:36:00 -0700 (PDT)
X-Google-Smtp-Source: ADUXVKLKxzv49AwAPUbE6X/nVOPXwpFvymi6z7DJ1LYQgouggWaYIP+jZv2ct4VfqNj6MKd6jzCU
X-Received: by 2002:a63:951e:: with SMTP id p30-v6mr8274984pgd.318.1529868960701;
Sun, 24 Jun 2018 12:36:00 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1529868960; cv=none;
d=google.com; s=arc-20160816;
b=uXde+FcTwMTycPO4RDoZp8+HXLZzU10qFZ7sue1JIymPi4Rb7xJk4rux9MmjvS1i+Y
AoZT+2gj6I5r3KVAtAbWKDC9KmXtVPs/MU6XyEahzrpkHH3fScZkVi1Uu4wJ1Un3HKH9
Ude7+Tu+b66EuE+1Hi8Mw1j6wTJ6PQaCHj3KIW1tRZ07HqsxjgdAmG9qPlTnYjGxUV0+
7dE81yQGAO5lh4DnD4ZEJ1Uro/LNZuVgyDaNeAgrSK8A6TWbdIqrJSGOboU5chWbwt0+
DxCngzgYO+mtRfBlKfOfL+cEuEQcXc4HFV9w1jZGVB0S5Gam7+Of2QJ/VQVuVitzTMr6
bkBg==
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=oM8Tr8TK/eW4MzZR6eU5Xgrt37oTYon44hf7ccfXntQ=;
b=Kn98Lms14zth4ApTfprVIjCNuleLXJXYIIh8dhh3BR3GVauSh1aeASPNr07/h7nIhH
rJQgCF+GZSe7qtwFxvKV0LUA0fAG3NMWu1f0DDKZle+Zq9bvcW2OM59LJceXjiYy+FbW
u88lhkN9p5Wb+/IM1SxXL6U7r8TrIrHTEk97hPZpZXbP62apMusX80/QCWT1+UW5jI/X
UpLUg3hmA25qe2ZAQu9/cVGEfVdR7bzWbSDpNQOUYXJkgO6JjQkBRI/0XddXvtvCs6ho
kbtrtp1WIjjr+U1TEnX+Kc1+lyFdAEgXI4qtQkiOZmJGSJDcEAUGBGnjP4YW21mdRYnV
8QLw==
ARC-Authentication-Results: i=1; mx.google.com;
dkim=pass header.i=@joelfernandes.org header.s=google header.b=RRYTw8mz;
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 u23-v6si12551116plk.487.2018.06.24.12.35.43;
Sun, 24 Jun 2018 12:36:00 -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=@joelfernandes.org header.s=google header.b=RRYTw8mz;
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 S1751858AbeFXTfA (ORCPT
+ 99 others); Sun, 24 Jun 2018 15:35:00 -0400
Received: from mail-pf0-f195.google.com ([209.85.192.195]:46457 "EHLO
mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org
with ESMTP id S1751597AbeFXTe7 (ORCPT
);
Sun, 24 Jun 2018 15:34:59 -0400
Received: by mail-pf0-f195.google.com with SMTP id q1-v6so5430098pff.13
for ; Sun, 24 Jun 2018 12:34:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=joelfernandes.org; s=google;
h=from:to:cc:subject:date:message-id;
bh=oM8Tr8TK/eW4MzZR6eU5Xgrt37oTYon44hf7ccfXntQ=;
b=RRYTw8mzSnt2oDezVTdlZxw6s/q0PDluprf5McDCvrMLCO93pTj0n1E0qZLVrEdsg9
YJKjA88YjePR1N3z2Jn7CYANpmD7LKiIL1QXJiQKSGOsl959frHwIftmtA8vyQbXgIpe
nPqBl2lp+Pge1a3GuEkFZAuvZnaEm3ubNN7UA=
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=oM8Tr8TK/eW4MzZR6eU5Xgrt37oTYon44hf7ccfXntQ=;
b=uATel9BhvWSm9dhV2pBIOXL0lsiEUa0WF+Qhoj5E1yUPuRVNeTWi8GTCTa5yhUbsmo
9Oe+NVhuoIA9G3tHQ6W2Mdp1Sq5nlXw2n5NjXLaMPjSMBHzP7bjN2buWc982NZIQRqu4
fjd/xAvNGvMbuGehxuqR1Aq/oviquLoku8PKR9FbshUT7nw6cZT36o2RqeLOhD69m2b4
p6oG0tIdz4E68EturD00Aurxw/V1kFOYBRzaQKLh8fC4/IqbIBscztjzA6Hn4D8ch305
k1n2RxHUcJY6/meoYJ0A2USotmIi6pBx2leJgEsxpWX0w5Ky9lM7+RS1L3eMlTo87kwy
FWhw==
X-Gm-Message-State: APt69E3zJk+cSawuW4cVKSx54P7mAijSD0kA73BP52f7hY6muU8Xdz2V
4UO01VC8n2+02vAZImGxQGI6owmJQag=
X-Received: by 2002:a62:84e:: with SMTP id c75-v6mr10215617pfd.35.1529868898855;
Sun, 24 Jun 2018 12:34:58 -0700 (PDT)
Received: from joelaf.mtv.corp.google.com ([2620:0:1000:1600:3122:ea9c:d178:eb])
by smtp.gmail.com with ESMTPSA id n76-v6sm28132167pfg.98.2018.06.24.12.34.57
(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Sun, 24 Jun 2018 12:34:58 -0700 (PDT)
From: Joel Fernandes
To: linux-kernel@vger.kernel.org
Cc: "Joel Fernandes (Google)" ,
Jonathan Corbet ,
Josh Triplett ,
Lai Jiangshan ,
linux-doc@vger.kernel.org,
Mathieu Desnoyers ,
"Paul E. McKenney" ,
Steven Rostedt , byungchul.park@lge.com
Subject: [RFC] doc: Improve rcu_dynticks::dynticks documentation
Date: Sun, 24 Jun 2018 12:34:51 -0700
Message-Id: <20180624193451.250855-1-joel@joelfernandes.org>
X-Mailer: git-send-email 2.18.0.rc2.346.g013aa6912e-goog
Sender: linux-kernel-owner@vger.kernel.org
Precedence: bulk
List-ID:
X-Mailing-List: linux-kernel@vger.kernel.org
From: "Joel Fernandes (Google)"
The very useful RCU Data-Structures describes that the dynticks counter
of the rcu_dynticks data structure is incremented when we transitions to
or from dynticks-idle mode. However it doesn't mention that it is also
incremented due to transitions to and from user mode which for dynticks
purposes is an extended quiescent state.
I found this with tracing calls to rcu_dynticks_eqs_enter which can also
happen from rcu_user_enter. Lets add this information to the
Data-Structures document.
Signed-off-by: Joel Fernandes (Google)
---
.../RCU/Design/Data-Structures/Data-Structures.html | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/Documentation/RCU/Design/Data-Structures/Data-Structures.html b/Documentation/RCU/Design/Data-Structures/Data-Structures.html
index f5120a00f511..50be87e59937 100644
--- a/Documentation/RCU/Design/Data-Structures/Data-Structures.html
+++ b/Documentation/RCU/Design/Data-Structures/Data-Structures.html
@@ -1227,9 +1227,11 @@ to overflow the counter, this approach corrects the
CPU enters the idle loop from process context.
The ->dynticks field counts the corresponding
-CPU's transitions to and from dyntick-idle mode, so that this counter
-has an even value when the CPU is in dyntick-idle mode and an odd
-value otherwise.
+CPU's transitions to and from either dyntick-idle or user mode, so
+that this counter has an even value when the CPU is in dyntick-idle
+mode or user mode and an odd value otherwise. The transitions to/from
+user mode need to be counted for user mode adaptive-ticks support
+(see timers/NO_HZ.txt).
The ->rcu_need_heavy_qs field is used
to record the fact that the RCU core code would really like to
--
2.18.0.rc2.346.g013aa6912e-goog