From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4418FC433EF for ; Thu, 16 Jun 2022 10:02:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D7A396B0075; Thu, 16 Jun 2022 06:02:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D2A266B0078; Thu, 16 Jun 2022 06:02:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C18FF6B007B; Thu, 16 Jun 2022 06:02:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id B2C956B0075 for ; Thu, 16 Jun 2022 06:02:36 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 889A461674 for ; Thu, 16 Jun 2022 10:02:36 +0000 (UTC) X-FDA: 79583659512.14.9BBEF3B Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) by imf22.hostedemail.com (Postfix) with ESMTP id 363FAC009E for ; Thu, 16 Jun 2022 10:02:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=OQ8QjhId98aVZtkzwB92ymmCSygUJEF1LPTt92pl2Gc=; b=UDL5O5cYUZMb9AxEHHsVf7wADA bZGqmqtsWJ9W9SkQQXVbppUmg0g7E44h6X1TRU1QDmbI/6WUWcYUMVT2p7Zm4OyALLebThJMIPUn2 ysg4d8OVIdPWFOwhd7cx8ET4cudZ+TVVq2W7LBMZ662sjTgxyMSv6wtfDt1CaZtz87sTiRJsYBG+V 2ojUkX0OOP3p7xq1/d5bh/23wZRMwkGAL5QwNSgEWBIW07uLvqiTDT1qWiHaa6jv6m6SV+I02QvnT yKQEGZSH86LXX2H3qMkaNXYdomgfGBYkQvGNN6O4Dg6D5chWPluFzEhEM2UyA9c00XkDpETTZSByp vSRK4IcQ==; Received: from dhcp-077-249-017-003.chello.nl ([77.249.17.3] helo=noisy.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1o1mKQ-008NxA-BT; Thu, 16 Jun 2022 10:02:18 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id 64BC2302E2E; Thu, 16 Jun 2022 12:02:16 +0200 (CEST) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id 568BB201A4015; Thu, 16 Jun 2022 12:02:16 +0200 (CEST) Date: Thu, 16 Jun 2022 12:02:16 +0200 From: Peter Zijlstra To: "Kirill A. Shutemov" Cc: Dave Hansen , Andy Lutomirski , x86@kernel.org, Kostya Serebryany , Andrey Ryabinin , Andrey Konovalov , Alexander Potapenko , Dmitry Vyukov , "H . J . Lu" , Andi Kleen , Rick Edgecombe , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCHv3 5/8] x86/uaccess: Provide untagged_addr() and remove tags before address check Message-ID: References: <20220610143527.22974-1-kirill.shutemov@linux.intel.com> <20220610143527.22974-6-kirill.shutemov@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220610143527.22974-6-kirill.shutemov@linux.intel.com> ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1655373756; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=OQ8QjhId98aVZtkzwB92ymmCSygUJEF1LPTt92pl2Gc=; b=1ixHzNfHYdzwTFIMUwnI6dhE+2VBqwa+5dbZ7JaV2hu7KlaKj/bdHDUBggL8JXBOC704D7 toqYnL9ttndMyqWYYWnkQv2m2b3wiPcxIgbvGQH/WKmCwYpqjZdu+kE5Bz1/YtW6bF5ipB JLWYv4smWMaDAoJAW7WwHshRfL2jbk0= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=infradead.org header.s=desiato.20200630 header.b=UDL5O5cY; dmarc=none; spf=none (imf22.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.92.199) smtp.mailfrom=peterz@infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1655373756; a=rsa-sha256; cv=none; b=aDO/aWwGOf5CL8nwslIMUHyAFJ1NmVGraHAjw9MWtnoLJKa6ZGvX46YS8stioTomtU7Vn9 x6nEPrm7DV8BSEd54IT/2fO84lc7vB2kiwZQk5bXPzx9tn8Uo7tHtdA9sPeLEeC942VGlL wJAUTxrZc7MvW/17Tfj7Q/XcwEam4x4= X-Rspamd-Queue-Id: 363FAC009E X-Rspam-User: X-Stat-Signature: 9wsjrotznur8khk9yroe5z31z6jri1yt Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=infradead.org header.s=desiato.20200630 header.b=UDL5O5cY; dmarc=none; spf=none (imf22.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.92.199) smtp.mailfrom=peterz@infradead.org X-Rspamd-Server: rspam04 X-HE-Tag: 1655373756-203841 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Fri, Jun 10, 2022 at 05:35:24PM +0300, Kirill A. Shutemov wrote: > +#ifdef CONFIG_X86_64 > +/* > + * Mask out tag bits from the address. > + * > + * Magic with the 'sign' allows to untag userspace pointer without any branches > + * while leaving kernel addresses intact. > + */ > +#define untagged_addr(mm, addr) ({ \ > + u64 __addr = (__force u64)(addr); \ > + s64 sign = (s64)__addr >> 63; \ > + __addr ^= sign; \ > + __addr &= (mm)->context.untag_mask; \ > + __addr ^= sign; \ > + (__force __typeof__(addr))__addr; \ > +}) Can't we make that mask a constant and *always* unmask U57 irrespective of LAM being on?