Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2510073pxj; Mon, 10 May 2021 04:52:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwCOslomH/cJsm2bInpQqEjoS2cc6o3ISsxT2B/Wjj3+WzWFGPOWf/R0wl2Pthn5Bp3mMX6 X-Received: by 2002:a05:6402:17d7:: with SMTP id s23mr28912430edy.66.1620647522111; Mon, 10 May 2021 04:52:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620647522; cv=none; d=google.com; s=arc-20160816; b=NMnrWn5djVPbpGYc8YSihvUbxcSe9E96d94QIekLClUsD8yl1TseU/TAl0UZI5oT4V RVZePtYy/V7FcVpDATG9KTK+TpMpA9tPqFmqq2WjyiUQvsAa0c3Uv7MkOFgn00p8PpF9 DnkH3qAazuEeQ6LnXZsXYfC/QwR3DBvvDjgdifN1CPSIxZ77zkIQqzRUPbXJBbPzoiIn tizjSH/T4nsRDbtp9suW7pioO7/5fsM1QhbE/74Fnvd8Ax9B4WWMd1CXSBX40uI6ZlXV V594HL2INdSc+87kTj+axNKKNORM+1dSFDYzQqly+0k0c3mzZVZNOfpqG3lq9stvluSS gj9Q== 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:from:date:dkim-signature; bh=pIbK7KL++/6Qxj4g2sELpb/AwCSJHHxmRatmmaceQEo=; b=D5XE39/JMyN/PwDyaqhsBVjml1TSX2Hy64dAuJ2Nk03iSk+75W/GCR+KKo9l/Gl8U3 PcwSHajMWNVXdlRBrv6cWo8ue3DDy0tftweHR8Ricn9JyV5Nmf4ushFn7GS0DPLsf3rT 7g/2/14Hem/wqS4Hw7Yy/VRL31DCFKfz/Nt7fZCyyWNOwg3Uh7AFp9JAKR3y8E/KdY6/ 5Vi1rdaDW85FVN5zXna6j40oqtMzs0AgH2+SwEQ57Iywmi+9MShpS5828DAIWhFjc7G9 fm8h24RI4Agget47RZ61086leB11urB+WY3Wmvem2ucIBHGXd2qiOV3M6w0+lZBd0rdS ps3Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=vEBxY3xv; 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 gx12si7597704ejb.555.2021.05.10.04.51.31; Mon, 10 May 2021 04:52:02 -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=k20201202 header.b=vEBxY3xv; 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 S231932AbhEJLsf (ORCPT + 99 others); Mon, 10 May 2021 07:48:35 -0400 Received: from mail.kernel.org ([198.145.29.99]:37324 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234016AbhEJLCH (ORCPT ); Mon, 10 May 2021 07:02:07 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id E974061108; Mon, 10 May 2021 10:54:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1620644043; bh=TLLlvGAs4hL4JF1E9xTbjkLlvWbBt4JKhCr2YX0T1BU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=vEBxY3xvjoJF9tu3AylZTlYt1tS/kQxluqU1dNLC4opoQ+uu6DayCj/lgRWgZfyv3 Ui9W0XVxPmlfX1nAUMYeNyi0oETEGRADwo+q/E3RJOMWZb8Kk1ZeHVqpbqvpf0ybO0 ioc258bAQqmEwjsQshtXz5FMGkvWxwuWgf5LlERprgDBwA+R249uB67sjNeYAad+uA 6PbmZWc3BgbTtTF2emiuW1ll4VhJwMZeniywTHU51sjEs3eKZT7JqBJhrxmwodgigS S/wQ+ZKv7UJZRfAH66nwOHT8tUfqQo8BNpIwc4P2aw2svZHhuKB8tJdjuqROIQgzvM ayRjEg/2EB0tA== Date: Mon, 10 May 2021 12:54:00 +0200 From: Frederic Weisbecker To: Peter Zijlstra Cc: Thomas Gleixner , LKML , "Rafael J . Wysocki" , Yunfeng Ye , Marcelo Tosatti Subject: Re: [PATCH 6/8] tick/nohz: Only wakeup a single target cpu when kicking a task Message-ID: <20210510105400.GC97481@lothringen> References: <20210422120158.33629-1-frederic@kernel.org> <20210422120158.33629-7-frederic@kernel.org> <20210510103901.GA97481@lothringen> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, May 10, 2021 at 12:48:14PM +0200, Peter Zijlstra wrote: > On Mon, May 10, 2021 at 12:39:01PM +0200, Frederic Weisbecker wrote: > > On Wed, May 05, 2021 at 03:43:28PM +0200, Peter Zijlstra wrote: > > > That had me looking at tick_nohz_task_switch(), does we want the below? > > > > > > > > > diff --git a/kernel/sched/core.c b/kernel/sched/core.c > > > index 9143163fa678..ff45fc513ba7 100644 > > > --- a/kernel/sched/core.c > > > +++ b/kernel/sched/core.c > > > @@ -4207,6 +4207,7 @@ static struct rq *finish_task_switch(struct task_struct *prev) > > > vtime_task_switch(prev); > > > perf_event_task_sched_in(prev, current); > > > finish_task(prev); > > > + tick_nohz_task_switch(); > > > finish_lock_switch(rq); > > > finish_arch_post_lock_switch(); > > > kcov_finish_switch(current); > > > @@ -4252,7 +4253,6 @@ static struct rq *finish_task_switch(struct task_struct *prev) > > > put_task_struct_rcu_user(prev); > > > } > > > > > > - tick_nohz_task_switch(); > > > return rq; > > > } > > > > > > diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c > > > index 828b091501ca..ea079be9097f 100644 > > > --- a/kernel/time/tick-sched.c > > > +++ b/kernel/time/tick-sched.c > > > @@ -447,13 +447,10 @@ void tick_nohz_dep_clear_signal(struct signal_struct *sig, enum tick_dep_bits bi > > > */ > > > void __tick_nohz_task_switch(void) > > > { > > > - unsigned long flags; > > > struct tick_sched *ts; > > > > > > - local_irq_save(flags); > > > - > > > if (!tick_nohz_full_cpu(smp_processor_id())) > > > - goto out; > > > + return; > > > > > > ts = this_cpu_ptr(&tick_cpu_sched); > > > > > > @@ -462,8 +459,6 @@ void __tick_nohz_task_switch(void) > > > atomic_read(¤t->signal->tick_dep_mask)) > > > tick_nohz_full_kick(); > > > } > > > -out: > > > - local_irq_restore(flags); > > > } > > > > > > /* Get the boot-time nohz CPU list from the kernel parameters. */ > > > > > > Sure, I'll take your SoB on that too, ok? > > OK, but please also test it :-) I didn't even ask a compiler it's > opinion on the thing. Of course, there will be another version of the patchset + usual testing :-)