Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp17723iob; Wed, 11 May 2022 08:41:54 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwnqzVr/ekGubJ8QXfZXaVz4PED727fiG0L6Vcp+Fml1AJWusiJs3r4ax9vsCN+EipcgUuB X-Received: by 2002:a17:902:f155:b0:15e:a5f8:e12a with SMTP id d21-20020a170902f15500b0015ea5f8e12amr26022271plb.30.1652283714253; Wed, 11 May 2022 08:41:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652283714; cv=none; d=google.com; s=arc-20160816; b=grvjZ2JWgWMmUtOJ3K5UTMDSs2lJ+D5jo86g6V87UxBDua5XX+e1k/90UNiYdCB4XN pC4s8UUvm7Ae/5MIi318r/GPBvUkRS+p9NARnqHYIb4nG7O2SnqI3oPCDwap/VNLoKCO uA8lVHtLRLBZDudnyOZkojWnvBXFUg5qrrI3sVJTBPtI57rDsmYTgtedSAhoht/QZt8D Ct82djx3Qc2iUvWGzWYpvXJ5XHblVLuJxfhQfYD7PXr0QHeU6IqzZux0Q3t6cx7cOxDN oPcokxpn05IFpkZvlMNya5C8ILUcLegqY3ABj6qAJtGWzcoXFvEDEnSirPIRejnt6BMC SwYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:date:from:dkim-signature; bh=aaocLKEhVrgGEk7ab2JMyksMiZhFBp6/WjQurYu/Fv4=; b=LN0MkV/bs60PWHIQP15QyuGNLXMZO8wfynL8UVyRqfSubWacicJ5JxY/MQxcc0H3P5 zNmrZcDBO4slGyppowmnIMexFzsfNjtwEjvzQH9fOdrpqGa46Ge/qB5LhUqDqO0X72Ev iDtL7XzpEl4Kx9kyHwlHaugRfgDR/H2tLbMQaBNQ2OV9yeUIn4VWkHRuRLqZN+otWy+L iDGaWrhltCUh993rq67hJOW1nIVDDI8cAwI5yf6SwNYBUlEg6y9bWslQlsRrL/ZMnLe9 LMvDeQrbgHrarbr5uBvxXbf/092lKjCCUdAuPmzPmroxBFSPRns38PyqF5mnJU/UsEI4 t7CA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=O8oA1+By; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n20-20020aa79054000000b0050bb3e9c4f7si2366548pfo.134.2022.05.11.08.41.39; Wed, 11 May 2022 08:41:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=O8oA1+By; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245123AbiEKOve (ORCPT + 99 others); Wed, 11 May 2022 10:51:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39490 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229503AbiEKOvb (ORCPT ); Wed, 11 May 2022 10:51:31 -0400 Received: from mail-lf1-x134.google.com (mail-lf1-x134.google.com [IPv6:2a00:1450:4864:20::134]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D635BAC061; Wed, 11 May 2022 07:51:29 -0700 (PDT) Received: by mail-lf1-x134.google.com with SMTP id h29so4046146lfj.2; Wed, 11 May 2022 07:51:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:date:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=aaocLKEhVrgGEk7ab2JMyksMiZhFBp6/WjQurYu/Fv4=; b=O8oA1+ByEU3XK736sKVGXGrzgKtsn5HyrrosgpWE6RnrCR9I2TfKptA0D1gnu1DetV RWk1Ln2qrbaMKbmzStSs/SvBcbp/9kmFIYFp6tnmCxE96R+pcJbepJBWoZBn8tI1zs1s mstuGRSEBh34MiOtw/5nBbwTiliOvMpNvE4idpTxQVtyW1nA0OfmMx/20l1bahBfc9MX DPz5pXT3frdPQ6uYudP5LnMEQR6mgxvb3SgssDQIf5+YzkFBNwnNozq31A96CvgsNtRJ q06zRFEQ4T2l5YJi0pZiEvO0O3s8uYi3dc0gbrNJZsTgPpKmWRJTcquDHoMUsximZQ8h K/8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:date:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=aaocLKEhVrgGEk7ab2JMyksMiZhFBp6/WjQurYu/Fv4=; b=BZCmlg2rZ1imQ9TD3a2OaO3rKESbIVIfCzNU6Ohf2kxZ8bnR4W/AzM1H02NUqQw+D+ Mm/TgWO2de0Wk++goxRemse0fhX6th7qevAoDsAsRAHOg2NGhuIwtHnozPLVwA32se2A nhLNIfOJse197rkZgKs89OIKqAM+zjZbrExytJAWV/1kwbSRDiy+uArWanrF8nZViX1w iJKNfVgzBX+p7BzWhf8WpCKLeIsIxkchNNRyLH+2e2dKVMEXR4n7EEU+AS4ahkGSrp+g 0G6ETGayWkMu2PQ5O5on9bxwq4ybovpH0/ig4GGKhMB2c/+qx0xMQEnl47mldkv/n7sg 7G8Q== X-Gm-Message-State: AOAM53316fSiLq+adX5yoMqD1VMwjeI4Wwx1E/Iqv7vzAPFoTEVPgeaC FmkHBXXM8vymaDhZ6CnELck= X-Received: by 2002:a05:6512:2386:b0:473:a4e3:d4aa with SMTP id c6-20020a056512238600b00473a4e3d4aamr20081049lfv.448.1652280687957; Wed, 11 May 2022 07:51:27 -0700 (PDT) Received: from pc638.lan ([155.137.26.201]) by smtp.gmail.com with ESMTPSA id i33-20020a0565123e2100b0047255d211e9sm310120lfv.280.2022.05.11.07.51.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 May 2022 07:51:27 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Wed, 11 May 2022 16:51:25 +0200 To: Steven Rostedt Cc: Uladzislau Rezki , "Paul E. McKenney" , Joel Fernandes , Alison Chaiken , Sebastian Andrzej Siewior , LKML , RCU , Frederic Weisbecker , Neeraj Upadhyay , Oleksiy Avramchenko Subject: Re: [PATCH] rcu/nocb: Add an option to ON/OFF an offloading from RT context Message-ID: References: <20220508213222.GL1790663@paulmck-ThinkPad-P17-Gen-1> <20220509033740.GM1790663@paulmck-ThinkPad-P17-Gen-1> <20220509181417.GO1790663@paulmck-ThinkPad-P17-Gen-1> <20220510100135.62a4f7df@gandalf.local.home> <20220511102957.56bd582b@gandalf.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220511102957.56bd582b@gandalf.local.home> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 11, 2022 at 10:29:57AM -0400, Steven Rostedt wrote: > On Wed, 11 May 2022 15:39:56 +0200 > Uladzislau Rezki wrote: > > > > > rcuop/6-54 [000] .N.. 183.753018: rcu_invoke_callback: rcu_preempt rhp=0xffffff88ffd440b0 func=__d_free.cfi_jt > > rcuop/6-54 [000] .N.. 183.753020: rcu_invoke_callback: rcu_preempt rhp=0xffffff892ffd8400 func=inode_free_by_rcu.cfi_jt > > rcuop/6-54 [000] .N.. 183.753021: rcu_invoke_callback: rcu_preempt rhp=0xffffff89327cd708 func=i_callback.cfi_jt > > ... > > rcuop/6-54 [000] .N.. 183.755941: rcu_invoke_callback: rcu_preempt rhp=0xffffff8993c5a968 func=i_callback.cfi_jt > > rcuop/6-54 [000] .N.. 183.755942: rcu_invoke_callback: rcu_preempt rhp=0xffffff8993c4bd20 func=__d_free.cfi_jt > > rcuop/6-54 [000] dN.. 183.755944: rcu_batch_end: rcu_preempt CBs-invoked=2112 idle=>c<>c<>c<>c< > > rcuop/6-54 [000] dN.. 183.755946: rcu_utilization: Start context switch > > rcuop/6-54 [000] dN.. 183.755946: rcu_utilization: End context switch > > > > > > i spent some time in order to understand why the context was not switched, > > even though the "rcuop" kthread was marked as TIF_NEED_RESCHED and an IPI > > was sent to the CPU_0 to reschedule. The last "." in latency field shows > > that a context has not disabled any preemption. So everything should be fine. > > > > An explanation is that a local_bh_disable() modifies the current_thread_info()->preempt.count > > so a task becomes non preemtable but the ftrace does not provide any signal about > > it. So i was fooled for some time by my tracer logs. > > > > Do you have any thoughts about it? Should it be solved or signaled > > somehow that a task in fact is not preemtable if a counter > 0? > > Hmm, it should show it in the first part (where the 'd' is). Is this a > snapshot from the kernel or from trace-cmd? > I do both and the behavior is the same. But the above one looks like a kernel trace output, the trace-cmd snapshot looks differently. So you mean "s" has to be there then? entry->preempt_count = pc & 0xff; entry->pid = (tsk) ? tsk->pid : 0; entry->type = type; entry->flags = #ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT (irqs_disabled_flags(flags) ? TRACE_FLAG_IRQS_OFF : 0) | #else TRACE_FLAG_IRQS_NOSUPPORT | #endif ((pc & NMI_MASK ) ? TRACE_FLAG_NMI : 0) | ((pc & HARDIRQ_MASK) ? TRACE_FLAG_HARDIRQ : 0) | ((pc & SOFTIRQ_OFFSET) ? TRACE_FLAG_SOFTIRQ : 0) | (tif_need_resched() ? TRACE_FLAG_NEED_RESCHED : 0) | (test_preempt_need_resched() ? TRACE_FLAG_PREEMPT_RESCHED : 0); BTW, i am not the 5.10 kernel. I have not checked the latest kernel and what ftrace reports under holding local_bh_disable(). -- Uladzislau Rezki