Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp6555943ybx; Mon, 11 Nov 2019 10:53:42 -0800 (PST) X-Google-Smtp-Source: APXvYqzvuqZrSQ3RiAZNzBF+dVPHlrvccaRSbdxvkJNAtjw5XP2lezt1pdYazfetYhaJdq63/CHu X-Received: by 2002:a17:906:a457:: with SMTP id cb23mr24108963ejb.191.1573498422401; Mon, 11 Nov 2019 10:53:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1573498422; cv=none; d=google.com; s=arc-20160816; b=a2r0R2SpRsSGyaZhlnVIt/E31yJiNu+TC00IoAm6NANHAYR25zOT6ntE8pyx/dgFI5 ExSAJ5mp3QbFTJ0imip65VjTtEsqUEWqTqxveXb14ARi7H6sMaGPb7KQQaJ5vL7wLnbH XCgqGP5x+qOXC8ni49Rp6GRrm83JXwC3XEptbw+sBPEI1bYCqxqaeC/vTYzngdTi3ceS rzwxMZcZtLjXnUGvfierX6/NZ/iY4uCf/S64BfuWf1DT7iVJGIKM2k1rpWz+TU0h678I J4E7hQN5yjRtz1AcwTI3fll5JpWgubcG8NoJOTdIgN7T084mHwILKUNbosKU+H5N/1cV 0UsA== 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:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=fmC+XsRJcDdN5bYtJrpq49sDK7UOLhypNZVYoY8KeJc=; b=0/07oAARywJPd8ZQ2h1gUGse/QZ/l0XEKjtzdSRIHNFrSbbQlCuuXb7WVtYzSFsevk Rj2bWmPw2YlqYNQ9wosIRzVuGDYgPgrt8w2MRBmiQAvNzSaAIlYbNi8g014YTtz7eQo+ rmrz781f434iIGr+XMaWjeyl0gA6kYsBM8NbZsgMAa8zEjBIPhvk064b3x/hPRw9gXlq JCtEOfMvmfqq/iuIM/hgG04a5DyKkE8QltiRyNycVSXF1Yk1CysiwsiBak/I/ISWBwlF f9LgHJUCP6NsLxde8dtvRCt30DBcUZ1MwJGXYtEfQUPOYP41iHXNYU/4uZSUf7PCp0vi ZA8Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=HHktI2Z7; 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 y57si11843221edb.138.2019.11.11.10.53.18; Mon, 11 Nov 2019 10:53:42 -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=HHktI2Z7; 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 S1729767AbfKKSwv (ORCPT + 99 others); Mon, 11 Nov 2019 13:52:51 -0500 Received: from mail.kernel.org ([198.145.29.99]:47306 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729325AbfKKSwr (ORCPT ); Mon, 11 Nov 2019 13:52:47 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (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 70F0420818; Mon, 11 Nov 2019 18:52:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1573498367; bh=ayfuX91gx37T++DZ/DF4dGO8PJP51xbQu+nZsKOaIl4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HHktI2Z7svSzL5+WRUKaw4VuNdoMF7K7CQl49uphUZETla7Svjb+AbM783ylnILxP o/F+0QBkD23BUo/AJ03YLtahlAJGFrsX4uuNtpP+WyG0h/ofpjcKFPGpvbNXn6b7UJ cD0zfQIQyTBnZB1nWAsnPOk+8wcFEWtoBNpqRqjE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Christophe Leroy , Michael Ellerman , Sasha Levin Subject: [PATCH 5.3 098/193] powerpc/32s: fix allow/prevent_user_access() when crossing segment boundaries. Date: Mon, 11 Nov 2019 19:28:00 +0100 Message-Id: <20191111181508.368745009@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191111181459.850623879@linuxfoundation.org> References: <20191111181459.850623879@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Christophe Leroy [ Upstream commit d10f60ae27d26d811e2a1bb39ded47df96d7499f ] Make sure starting addr is aligned to segment boundary so that when incrementing the segment, the starting address of the new segment is below the end address. Otherwise the last segment might get missed. Fixes: a68c31fc01ef ("powerpc/32s: Implement Kernel Userspace Access Protection") Signed-off-by: Christophe Leroy Signed-off-by: Michael Ellerman Link: https://lore.kernel.org/r/067a1b09f15f421d40797c2d04c22d4049a1cee8.1571071875.git.christophe.leroy@c-s.fr Signed-off-by: Sasha Levin --- arch/powerpc/include/asm/book3s/32/kup.h | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/powerpc/include/asm/book3s/32/kup.h b/arch/powerpc/include/asm/book3s/32/kup.h index 677e9babef801..f9dc597b0b868 100644 --- a/arch/powerpc/include/asm/book3s/32/kup.h +++ b/arch/powerpc/include/asm/book3s/32/kup.h @@ -91,6 +91,7 @@ static inline void kuap_update_sr(u32 sr, u32 addr, u32 end) { + addr &= 0xf0000000; /* align addr to start of segment */ barrier(); /* make sure thread.kuap is updated before playing with SRs */ while (addr < end) { mtsrin(sr, addr); -- 2.20.1