Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp3155448pxa; Tue, 25 Aug 2020 13:01:43 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyyoTiy/9c+moJZOS/bgIQqbqNxcSiPB9ogTZEIZHznnv/b94HAyH8lAuovERt7pjT+8j/O X-Received: by 2002:a17:906:f6c9:: with SMTP id jo9mr10578816ejb.152.1598385702937; Tue, 25 Aug 2020 13:01:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1598385702; cv=none; d=google.com; s=arc-20160816; b=GR83yGq2cN2CJnZ3iQ1F89Q4lpGGJ+DdYStnGfUjz9TumhkzQqGUK+ak9Yq9Ya8TjI 9+fvL8ngeuS1gxryJsNYu1kF0V3LO5Efvz0N9oFre2tbBe7w7jWZVPoz1L54uHBV1NWN RsGan4MuKuAkpdUPl31MWQzKrtad+lN1VIzazvV8j4WJymPyEvAm9N1lQ6eOgtkqUM/E bd3XMKfnbkeMvqnFeQp4l+6h5f5quZUTrJYQ3jao2jFYfj/8mEyLQtJ87o8IGt5//F2k mIU72O6DDZ4/Gkhm65YhTzIUjjx9LwxesHfEvRjFfgqNqvbwgQEBifSLuWakLQLrNKPP QpAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:reply-to:message-id :subject:cc:to:from:date:dkim-signature; bh=pBnAOnTONeFJcJr6geS5vJ1yUAMg2h5/Jzcg24wTKhA=; b=02MhEuqQ3+0plkRJaNEqsITWBhwRGfNdvtN3vv5argAuGHcnJzddAmlBj87SktEc3L yXnVWpSU0++i6cMF8pmxTBZe4tfUWZcD/Kp4NMVKST6k5SEu7+m/mnLlMympcbc2Q5Di wxetQ18McqJxWJV078SIEyBB3/nY6G8gbiK41GfVrY4HpnVxwYnQRobMyGKp2Cfij734 BlIdIbR6NYgTbOQ83MbUfY7zKBeBEuFZDbgiSo8dfqYSE1/GLW40dBI2lVosK3j23nqO Uf0GQbYXHHLd9HistMtfsvQOOvgnJtYymCVw3u4o3NfbL1r+n0PzG/M8z6I/tcxR9v0H PoZg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=DCaCFv42; 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=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id la24si57461ejb.55.2020.08.25.13.01.19; Tue, 25 Aug 2020 13:01:42 -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=@kernel.org header.s=default header.b=DCaCFv42; 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=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726718AbgHYT6F (ORCPT + 99 others); Tue, 25 Aug 2020 15:58:05 -0400 Received: from mail.kernel.org ([198.145.29.99]:39014 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726593AbgHYT6E (ORCPT ); Tue, 25 Aug 2020 15:58:04 -0400 Received: from paulmck-ThinkPad-P72.home (unknown [50.45.173.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 4F71B2074D; Tue, 25 Aug 2020 19:58:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1598385483; bh=gTvnzTg+mh28yy9zqmATxGIIdaAhnLyvMTWA22zHNvs=; h=Date:From:To:Cc:Subject:Reply-To:References:In-Reply-To:From; b=DCaCFv42ZpU14KZD7iJxSZtD5MEEWCdwE3yFALD9cUx3kcX+BDXKUHx8/D2xJKQ2h +/3lqsihXNrjV6iCNYTKhYNDzS8tHaZJpKsfwsb4Eq3+xI09MdsozZc3bFL1C18xNK uq0s0U75OVIolNI0SamqgtHr4mM39LbaVyyfcWks= Received: by paulmck-ThinkPad-P72.home (Postfix, from userid 1000) id 30B1135226AE; Tue, 25 Aug 2020 12:58:03 -0700 (PDT) Date: Tue, 25 Aug 2020 12:58:03 -0700 From: "Paul E. McKenney" To: "Joel Fernandes (Google)" Cc: linux-kernel@vger.kernel.org, boqun.feng@gmail.com, dave@stgolabs.net, Ingo Molnar , Josh Triplett , Lai Jiangshan , Madhuparna Bhowmik , Mathieu Desnoyers , neeraj.iitr10@gmail.com, rcu@vger.kernel.org, Steven Rostedt , "Uladzislau Rezki (Sony)" , vineethrp@gmail.com Subject: Re: [PATCH v4 -rcu 0/4] Maintain the length of each segment in the segcblist Message-ID: <20200825195803.GV2855@paulmck-ThinkPad-P72> Reply-To: paulmck@kernel.org References: <20200825024842.3408659-1-joel@joelfernandes.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200825024842.3408659-1-joel@joelfernandes.org> User-Agent: Mutt/1.9.4 (2018-02-28) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Aug 24, 2020 at 10:48:38PM -0400, Joel Fernandes (Google) wrote: > This is required for several usecases identified. One of them being tracing how > the segmented callback list changes. Tracing this has identified issues in RCU > code in the past. The trace patch is the last one in this series. Thank you for doing this! Another use case is of course more accurately determining whether a given CPU's large pile of callbacks can be best served by making grace periods go faster, invoking callbacks more vigorously, or both. It should also be possible to simplify some of the callback handling a bit, given that some of the unnatural acts are due to there having been no per-batch counts. Thanx, Paul > Passes 30 minutes of TREE01, TREE03, TREE07. Testing of other TREE configs is > in progress. > > Patches are based on -rcu commit: > 4f43de2a419a ("Merge branch 'lkmm-dev.2020.08.24a' into HEAD") > > Revision history: > v4: Restructured rcu_do_batch() and segcblist merging to avoid issues. > Fixed minor nit from Davidlohr. > v1->v3: minor nits. > (https://lore.kernel.org/lkml/20200719034210.2382053-1-joel@joelfernandes.org/) > > Joel Fernandes (Google) (4): > rcu/segcblist: Do not depend on rcl->len to store the segcb len during > merge > rcu/tree: Make rcu_do_batch count how many callbacks were executed > rcu/segcblist: Add counters to segcblist datastructure > rcu/trace: Add tracing for how segcb list changes > > include/linux/rcu_segcblist.h | 2 + > include/trace/events/rcu.h | 25 +++++++ > kernel/rcu/rcu_segcblist.c | 119 ++++++++++++++++++++++++++++++++-- > kernel/rcu/rcu_segcblist.h | 8 +++ > kernel/rcu/tree.c | 32 +++++++-- > 5 files changed, 175 insertions(+), 11 deletions(-) > > -- > 2.28.0.297.g1956fa8f8d-goog >