From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 33721C63777 for ; Thu, 19 Nov 2020 22:53:02 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A8D9A2078D for ; Thu, 19 Nov 2020 22:53:01 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="ly2PAm8p"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="KRZQqwvx" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A8D9A2078D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=mDF87059rWahz8HrO1cfRw977KMQvYTfhw/U16j5s08=; b=ly2PAm8pG3Edq4BH6VBdBo+gk Xd8oxNOw1wyppS1XhISsHIzPCGf5n1xcZk2oSaFoocF2DM0oTZ7fMEBNde2d7gwUQrmYT+OAFMqH5 xl/TkYBS7/y+Uzj3Fb6IAQ1RMu5GydCKYvAe9+YdveoMfgub7VmtKjPbWkzG8PxeAZUmOuxTcp21V CbW/ciCtjIzhFdgoHYbjQIHfZy7O2AthuMEZOFTLDlAnBkJW2Omu3YLU1Ba/MvIw+bNqWas3k17Sh 7tEJ473BgSF8baKJ2gEv9V/SgOXzzhIJH97LHXGDrpUEpFTELFwf5krZMAZJWPKN+2avusj2Dap6Z N8xPcYShA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kfsn3-0002bK-Ey; Thu, 19 Nov 2020 22:52:33 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kfsn1-0002aU-5p; Thu, 19 Nov 2020 22:52:32 +0000 Received: from localhost (unknown [176.167.53.63]) (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 2D7CC22227; Thu, 19 Nov 2020 22:52:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1605826349; bh=YLqkp5mZrk9CzpMu4+a95ZqlYmTlizCb/DRTtNW383U=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=KRZQqwvxbeFf/W1N7gd/3zhLy6+ReIC1tIAYoB02wMTpS5S57L0KqoVejeKj8Rj7p E9g7O+Q+m7koeWwx0OuXxbiJ6etNatPA6fDWE9KS4bpj1kCKbN0eZg37dSdjeWnUCG XMceozTbM8+W147S5bCl7/IP6SDwziwSVHGxRQFk= Date: Thu, 19 Nov 2020 23:52:27 +0100 From: Frederic Weisbecker To: Thomas Gleixner Subject: Re: [patch 12/19] softirq: Add RT specific softirq accounting Message-ID: <20201119225227.GA29717@lothringen> References: <20201113140207.499353218@linutronix.de> <20201113141734.096224353@linutronix.de> <20201119121801.GA20115@lothringen> <87ima1p55m.fsf@nanos.tec.linutronix.de> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <87ima1p55m.fsf@nanos.tec.linutronix.de> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201119_175231_323422_07C64565 X-CRM114-Status: GOOD ( 20.92 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Rich Felker , Catalin Marinas , Paul McKenney , Arnd Bergmann , linux-sh@vger.kernel.org, Peter Zijlstra , Richard Weinberger , Sebastian Andrzej Siewior , Valentin Schneider , Jeff Dike , LKML , Yoshinori Sato , "James E.J. Bottomley" , linux-parisc@vger.kernel.org, Marc Zyngier , Russell King , linux-um@lists.infradead.org, Will Deacon , Helge Deller , linux-arm-kernel@lists.infradead.org, Anton Ivanov Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Thu, Nov 19, 2020 at 07:34:13PM +0100, Thomas Gleixner wrote: > On Thu, Nov 19 2020 at 13:18, Frederic Weisbecker wrote: > > On Fri, Nov 13, 2020 at 03:02:19PM +0100, Thomas Gleixner wrote: > >> RT requires the softirq to be preemptible and uses a per CPU local lock to > >> protect BH disabled sections and softirq processing. Therefore RT cannot > >> use the preempt counter to keep track of BH disabled/serving. > >> > >> Add a RT only counter to task struct and adjust the relevant macros in > >> preempt.h. > > > > You may want to describe a bit the reason for this per task counter. > > It's not intuitive at this stage. > > Something like this: > > RT requires the softirq processing and local bottomhalf disabled regions > to be preemptible. Using the normal preempt count based serialization is > therefore not possible because this implicitely disables preemption. > > RT kernels use a per CPU local lock to serialize bottomhalfs. As > local_bh_disable() can nest the lock can only be acquired on the > outermost invocation of local_bh_disable() and released when the nest > count becomes zero. Tasks which hold the local lock can be preempted so > its required to keep track of the nest count per task. > > Add a RT only counter to task struct and adjust the relevant macros in > preempt.h. > > Thanks, Very good, thanks! _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel