Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp8805475ybi; Tue, 23 Jul 2019 15:40:09 -0700 (PDT) X-Google-Smtp-Source: APXvYqysPNSH5yJm79SP9DVPyeGXn5+Eoveg2CuV0XBFKPzrH3PPDgY/P1fWcUoxw1wMpbiCKzW+ X-Received: by 2002:a17:902:7088:: with SMTP id z8mr83987746plk.125.1563921609522; Tue, 23 Jul 2019 15:40:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1563921609; cv=none; d=google.com; s=arc-20160816; b=NPWLX5BJuGtbOVk7kiPEQZgTOI6LJYCg//ZUCc6vEFdm1/qwBS9OhqITg8plqK0rFn gRmFHsTT7lvHHrTNlce4c3URJzXtA/odp4r7qBrj3iQOmBRO1kW3ZuFY0FjszqYZ9cLU y3FHLMx8BvG+ytFgRuVdvc+tpQP0aUOCDOqTyKF08xvZcFMvbvnta+NkanMV980Cc8FB kt25JlDnVRzWrcaCTx6VhUA1inWkzXVEu8UYsrqBDmrewtcv3mY5Z8TKJJhoE6miSHoW njsWGn4QpFNGR/7tDgsPxuqK7H0GuYEuHUm9RqMTyOwYEKhpl90sLUO2hM2xtiD1QgXK NxGA== 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; bh=EYOQ+AD1dWnzpc3Y5qo5pgxpeRIZp4zTQrVijOuegoY=; b=ki9v9MUEeEBnXbI/pj/WSBKDdkGsXrO7lsp/Yx8LQ4bYJS2H3YgBIEJSqlmWjPx1RB 7ZeA7OnwaX5k5YA52COcdtCgV90OpAV9Vx/4GDwBgZAwCH/X2QgykiUQXRqfEU4oNse6 Io1Fn1jHCL1viaY+EoMzuTnKzrW84XwmFCR9/59RnRKx2LmwnOJ0zKdaI+QyW5ZpbFy4 Fwcblvn7GVs0ZEe1RPSyLPFGs4owRUCd3gCv/8/r0p5iv/F3X08wkTX1NXodxNQTQXng n0jWxw+E/K5CjpsZoVnD7Lbgw858ek5wrOnIZcLPEP5f0n4YdEHP++p6I+b+ht6xIBx5 FCbg== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d1si11444041pla.75.2019.07.23.15.39.53; Tue, 23 Jul 2019 15:40:09 -0700 (PDT) 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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389456AbfGWLzV (ORCPT + 99 others); Tue, 23 Jul 2019 07:55:21 -0400 Received: from foss.arm.com ([217.140.110.172]:53516 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730821AbfGWLzU (ORCPT ); Tue, 23 Jul 2019 07:55:20 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D35F0337; Tue, 23 Jul 2019 04:55:19 -0700 (PDT) Received: from arrakis.emea.arm.com (arrakis.cambridge.arm.com [10.1.196.78]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B56943F71A; Tue, 23 Jul 2019 04:55:18 -0700 (PDT) Date: Tue, 23 Jul 2019 12:55:16 +0100 From: Catalin Marinas To: Takao Indoh Cc: Jonathan Corbet , Will Deacon , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, QI Fuli , Takao Indoh Subject: Re: [PATCH 1/2] arm64: mm: Restore mm_cpumask (revert commit 38d96287504a ("arm64: mm: kill mm_cpumask usage")) Message-ID: <20190723115516.GA16928@arrakis.emea.arm.com> References: <20190617143255.10462-1-indou.takao@jp.fujitsu.com> <20190617143255.10462-2-indou.takao@jp.fujitsu.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190617143255.10462-2-indou.takao@jp.fujitsu.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, I know Will is on the case but just expressing some thoughts of my own. On Mon, Jun 17, 2019 at 11:32:54PM +0900, Takao Indoh wrote: > From: Takao Indoh > > mm_cpumask was deleted by the commit 38d96287504a ("arm64: mm: kill > mm_cpumask usage") because it was not used at that time. Now this is needed > to find appropriate CPUs for TLB flush, so this patch reverts this commit. > > Signed-off-by: QI Fuli > Signed-off-by: Takao Indoh > --- > arch/arm64/include/asm/mmu_context.h | 7 ++++++- > arch/arm64/kernel/smp.c | 6 ++++++ > arch/arm64/mm/context.c | 2 ++ > 3 files changed, 14 insertions(+), 1 deletion(-) > > diff --git a/arch/arm64/include/asm/mmu_context.h b/arch/arm64/include/asm/mmu_context.h > index 2da3e478fd8f..21ef11590bcb 100644 > --- a/arch/arm64/include/asm/mmu_context.h > +++ b/arch/arm64/include/asm/mmu_context.h > @@ -241,8 +241,13 @@ static inline void > switch_mm(struct mm_struct *prev, struct mm_struct *next, > struct task_struct *tsk) > { > - if (prev != next) > + unsigned int cpu = smp_processor_id(); > + > + if (prev != next) { > __switch_mm(next); > + cpumask_clear_cpu(cpu, mm_cpumask(prev)); > + local_flush_tlb_mm(prev); > + } That's not actually a revert as we've never flushed the TLBs on the switch_mm() path. Also, this flush is not sufficient on a CnP capable CPU since another thread of the same CPU could have the prev TTBR0_EL1 value set and loading the TLB back. -- Catalin