Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1886777ybl; Sat, 1 Feb 2020 08:28:45 -0800 (PST) X-Google-Smtp-Source: APXvYqxYYSo+zDEy6Df4byw89AbW2VFtDoIoyF2Llbx+yDbPpNj1GYSFw8r1j/3PFu/RGellT8Y7 X-Received: by 2002:a05:6830:1317:: with SMTP id p23mr11955932otq.3.1580574525866; Sat, 01 Feb 2020 08:28:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580574525; cv=none; d=google.com; s=arc-20160816; b=ymW6syiWjlafZTl2jREcZETS6GmQV9GrY9hJPfXwWvFsWJ4WVo3xFlLxvuv4rJLvip mH/QxmGFmVNBKksoYpBrn2KXknX+zGP+l0zOxf2c2zZ+fKXItIQPndpur/RlR1RBPsRr +C/5ZiFNr8v26IkIEqh2zhHE31boGNeU6SyvY1rgf5Ym3euptFQEqLhF93i6Hpvf0P79 Q8zNogHC1kAkGZQb3Xg8nU4yZ+UIcAtm7loWbSh+/56jyniUquWUa8Fki0S86bZj6PsT QUJ21ESHo0/2YlnYRW79TUJqeosO2DJA7MXcAs62QeAI7plU6650xbWKWrAjrVbGvtCU 3HdA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:references:cc:to:from:subject:dkim-signature; bh=ZjmS/adFTgLgsg7zeCN7l9gy5WSfkM50nGalFqI61jU=; b=ZAh4JcmnQYTm17DpHXzU143bMkpPG1FcVaHp5drpvTrSSbebSScx+1Z/1MebBM9AE4 IYfyhEr2izX7XHR0TXWwPFeP445AeZmqYvKnbL47469toAwkkSH9g60cIkqEGsWoRJpL /WTveYWMnMrFnQLpJfHquPbL+Ez7QJchxPE6tAHy0A3daAVB5rq8NcwkRSrRcJXnYwmd BjueJvSMN5WRixarUoBVRBcdpEDZ8OgxvTyFi9FIqvqks3PIo3oBIdDqG12rnoY0a+yu uRise01+GfdcuR5GUPX/xae4SMA1FMnNp2DYBGt7DV/4PSc8W/PCWVBvCsHk9w+z0RlP 7Btg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@c-s.fr header.s=mail header.b=OND2aOfE; 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 s15si5463876oih.252.2020.02.01.08.28.34; Sat, 01 Feb 2020 08:28:45 -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=@c-s.fr header.s=mail header.b=OND2aOfE; 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 S1726789AbgBAQ1g (ORCPT + 99 others); Sat, 1 Feb 2020 11:27:36 -0500 Received: from pegase1.c-s.fr ([93.17.236.30]:54892 "EHLO pegase1.c-s.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726622AbgBAQ1g (ORCPT ); Sat, 1 Feb 2020 11:27:36 -0500 Received: from localhost (mailhub1-int [192.168.12.234]) by localhost (Postfix) with ESMTP id 488zyY576yz9vBmZ; Sat, 1 Feb 2020 17:27:33 +0100 (CET) Authentication-Results: localhost; dkim=pass reason="1024-bit key; insecure key" header.d=c-s.fr header.i=@c-s.fr header.b=OND2aOfE; dkim-adsp=pass; dkim-atps=neutral X-Virus-Scanned: Debian amavisd-new at c-s.fr Received: from pegase1.c-s.fr ([192.168.12.234]) by localhost (pegase1.c-s.fr [192.168.12.234]) (amavisd-new, port 10024) with ESMTP id cOc3nVoSmWt8; Sat, 1 Feb 2020 17:27:33 +0100 (CET) Received: from messagerie.si.c-s.fr (messagerie.si.c-s.fr [192.168.25.192]) by pegase1.c-s.fr (Postfix) with ESMTP id 488zyY3LN2z9vBmY; Sat, 1 Feb 2020 17:27:33 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=c-s.fr; s=mail; t=1580574453; bh=ZjmS/adFTgLgsg7zeCN7l9gy5WSfkM50nGalFqI61jU=; h=Subject:From:To:Cc:References:Date:In-Reply-To:From; b=OND2aOfEStqUhg9CLiDtWmwPWq3FmlU74CaysGCTUMcz0p1a48c2qlAmwAxt7MAQQ E265BrP4WfszNHtCemUVGjvXf5G2t1LHZmExnGWA733/QVFOZ423m52qO9DBQnzs0e YdVUZmhsiDqgEteMFdpWWdCCqfYLJk8o0SjKAFp4= Received: from localhost (localhost [127.0.0.1]) by messagerie.si.c-s.fr (Postfix) with ESMTP id 054808B78B; Sat, 1 Feb 2020 17:27:35 +0100 (CET) X-Virus-Scanned: amavisd-new at c-s.fr Received: from messagerie.si.c-s.fr ([127.0.0.1]) by localhost (messagerie.si.c-s.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id artbkuQxn9DU; Sat, 1 Feb 2020 17:27:34 +0100 (CET) Received: from [192.168.4.90] (unknown [192.168.4.90]) by messagerie.si.c-s.fr (Postfix) with ESMTP id A0A648B752; Sat, 1 Feb 2020 17:27:34 +0100 (CET) Subject: Re: [PATCH v2] powerpc/32s: Don't flush all TLBs when flushing one page From: Christophe Leroy To: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman Cc: linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org References: Message-ID: <601bc775-6b51-c6c3-128e-ccd36d54f933@c-s.fr> Date: Sat, 1 Feb 2020 17:27:33 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.4.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: fr Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Le 01/02/2020 à 09:04, Christophe Leroy a écrit : > When flushing any memory range, the flushing function > flushes all TLBs. > > When (start) and (end - 1) are in the same memory page, > flush that page instead. > > Signed-off-by: Christophe Leroy Reviewed-by: Segher Boessenkool > --- > v2: Reworked the test as the previous one was always false (end - start was PAGE_SIZE - 1 for a single page) > --- > arch/powerpc/mm/book3s32/tlb.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/arch/powerpc/mm/book3s32/tlb.c b/arch/powerpc/mm/book3s32/tlb.c > index 2fcd321040ff..724c0490fb17 100644 > --- a/arch/powerpc/mm/book3s32/tlb.c > +++ b/arch/powerpc/mm/book3s32/tlb.c > @@ -79,11 +79,14 @@ static void flush_range(struct mm_struct *mm, unsigned long start, > int count; > unsigned int ctx = mm->context.id; > > + start &= PAGE_MASK; > if (!Hash) { > - _tlbia(); > + if (end - start <= PAGE_SIZE) > + _tlbie(start); > + else > + _tlbia(); > return; > } > - start &= PAGE_MASK; > if (start >= end) > return; > end = (end - 1) | ~PAGE_MASK; >