Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp6973262ybf; Fri, 6 Mar 2020 08:01:19 -0800 (PST) X-Google-Smtp-Source: ADFU+vsZVysKHId9MIny9jZo86tqFW5MeUt93SZ8sw9Wy2T+0PJYr38KD/rkr+c3cTfyEmIlgOIS X-Received: by 2002:a54:4801:: with SMTP id j1mr3192381oij.108.1583510479459; Fri, 06 Mar 2020 08:01:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583510479; cv=none; d=google.com; s=arc-20160816; b=QCeglzk6AodRacroh4eR5HwBcaNe7kaI2V4qynI50Q1u5i8hpqIxS9PrmsmVnuBcmG 5NIv15JBaQi7egFY3FcFCBDdNcH+PqlSEXSrYpIFVumLnLAt/amGyMXgzUGl1NgW/TVY qTpkRAfQNlRoytwUeLR7bTTv7ono+eNrPCBjegsL44HUoZb1NQsq/jkg7hx0JsZwNjMW 6JmWDmeZ8Pq+TxRrAUxifrdoRnuHm9QWbryAgLQ+AF3OSYINxo3MRr4L634X2KmuHAr6 0UH9IWOBfGjtFDnjB8m+8qoVuaw9T31/nL/0jJMOBvJxUSaR1wLL5EAOFUSWaZhtFPl6 pONQ== 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:message-id:subject:cc :to:from:date:dkim-signature; bh=5sIbpnS+Xrewfq0U7naoKftdqCisSdNhonQoJZ9susQ=; b=H9dwTosKXwupZr/uqGN0yPzcrn6CJT5XC1wAF0//HE5Yn/GLk3P/tr1nKz2LtcaNPx aOakJ0zrVSbTrWA0ckRoGeHpfFJNizamvNKHcqk3DISEn2o+Pvl4VW9tDAPSCAHZmk+D /oyeXPM0UR424IvAiXLt47zSiazy4sYdO44omFykp7e5okUmqtIXAuuLs4CP1OozLR5k C0S7oQ3t+l9kxFgimNYkSlp7BZe/GtzP6jYx4C0pox0butuZw38tMChope580JF1H9Xm W6nJXIiuO1OvMU0OtyEL3vf5PKQBY+pRttM9kIPLo3VrXBemeVuanVBB/6xKNObYNV9g /kxg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=RXuEwq58; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m25si1584816oie.207.2020.03.06.08.01.06; Fri, 06 Mar 2020 08:01:19 -0800 (PST) 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=@kernel.org header.s=default header.b=RXuEwq58; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726633AbgCFQAj (ORCPT + 99 others); Fri, 6 Mar 2020 11:00:39 -0500 Received: from mail.kernel.org ([198.145.29.99]:35056 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725935AbgCFQAj (ORCPT ); Fri, 6 Mar 2020 11:00:39 -0500 Received: from localhost (lfbn-ncy-1-985-231.w90-101.abo.wanadoo.fr [90.101.63.231]) (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 57FD62072A; Fri, 6 Mar 2020 16:00:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1583510438; bh=nbAHA1WahxgO35nO+HhwXLm7RmPwbLsiDfTj5Z3wtuY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=RXuEwq58XWL66xOdJk0nkgY5LaZFkURF9dB1PupzeUJDfjLHH0IyC5acMAA7SOLXk GP+iC/MrX8N0QCe3qoaviZNve1eGKSjkzLpNL5K1dB70vv0XeSxZfeVFVF8wNh9kSs 2rNH6zagvGemfUaQL+1vPezMgKk3H5vqR1j5QhkI= Date: Fri, 6 Mar 2020 17:00:36 +0100 From: Frederic Weisbecker To: Alex Belits Cc: "rostedt@goodmis.org" , "mingo@kernel.org" , "peterz@infradead.org" , "linux-kernel@vger.kernel.org" , Prasun Kapoor , "tglx@linutronix.de" , "linux-api@vger.kernel.org" , "linux-mm@vger.kernel.org" , "linux-arch@vger.kernel.org" Subject: Re: [PATCH 03/12] task_isolation: userspace hard isolation from kernel Message-ID: <20200306160035.GD8590@lenoir> References: <4473787e1b6bc3cc226067e8d122092a678b63de.camel@marvell.com> <36d84b8dd168a38e6a56549dedc15dd6ebf8c09e.camel@marvell.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <36d84b8dd168a38e6a56549dedc15dd6ebf8c09e.camel@marvell.com> 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 Wed, Mar 04, 2020 at 04:07:12PM +0000, Alex Belits wrote: > +#ifdef CONFIG_TASK_ISOLATION > +int try_stop_full_tick(void) > +{ > + int cpu = smp_processor_id(); > + struct tick_sched *ts = this_cpu_ptr(&tick_cpu_sched); > + > + /* For an unstable clock, we should return a permanent error code. */ > + if (atomic_read(&tick_dep_mask) & TICK_DEP_MASK_CLOCK_UNSTABLE) > + return -EINVAL; > + > + if (!can_stop_full_tick(cpu, ts)) > + return -EAGAIN; Note that the stop_tick naming in nohz can be misleading. It means we actually leave the periodic mode and we enter in dynamic tick mode. In practice it means that the tick is delayed until the next event, which in the worst case may well be in 1 ms and in the best case never. So what you probably want to check instead is whether the tick has been entirely stopped (ie: we called hrtimer_cancel(&ts->sched_timer)). Thanks. > + > + tick_nohz_stop_sched_tick(ts, cpu); > + return 0; > +} > +#endif > + > static bool can_stop_idle_tick(int cpu, struct tick_sched *ts) > { > /* > -- > 2.20.1 >