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 CA7A0C77B7C for ; Tue, 24 Jun 2025 11:37:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 500236B00AE; Tue, 24 Jun 2025 07:37:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4B0726B00AF; Tue, 24 Jun 2025 07:37:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 39F106B00B2; Tue, 24 Jun 2025 07:37:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 23E5C6B00AE for ; Tue, 24 Jun 2025 07:37:39 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id BC238160582 for ; Tue, 24 Jun 2025 11:37:38 +0000 (UTC) X-FDA: 83590094196.14.6A00B0A Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.9]) by imf14.hostedemail.com (Postfix) with ESMTP id E64F8100007 for ; Tue, 24 Jun 2025 11:37:35 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=hpzFJi7d; spf=none (imf14.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 192.198.163.9) smtp.mailfrom=kirill.shutemov@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1750765056; 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=X1pyH1Eh48ja/AubjnGSzYSQhqaCLBnItxrjwYtS2+k=; b=HlpgWtRcfiOydj1IxfVSHeWXOTGB473fLUaCrGgFXpVPu4lv7Tr/bnVkkFEqmWYjA/fK4l CRj3OhS5vJsTfKAMRAPWC4thF1HqFe3KkGunOuyt0oWXY1v/xmed1NSyDa4LJxS0dGdbXs wjOXtw/yyamr4FJlj5Xdwcg/FXhBpLE= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=hpzFJi7d; spf=none (imf14.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 192.198.163.9) smtp.mailfrom=kirill.shutemov@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1750765056; a=rsa-sha256; cv=none; b=LKlxQD0YFZu31iVmMH7wNfsgo0KfkxHIoWiiTogoE7T0V7jPcqTTRT2EGJdVqUz7XaPi43 aG3l/FDD+vcNQD8wTFaZvYaO9a63K8btgdzNSCInYceSYN70auYMrf1Jeg+WhoEsvuQT1Q rJmZlS5wIN7U4Xsf0wpmXK2ZSwAaLRo= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1750765056; x=1782301056; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=1zp6mhXvmMH8trlbOZRktJXmdXnam+2EnOgo74XACPI=; b=hpzFJi7dCpnBfKkbNFt0OJW/O3V81Ud/NtMbZRPqg/huS9KxDTqNYMm/ t8uyfMi2nhVYxi8kZtV/2nWgsI0gLxkCX6ZNTYnRgL2uFTQPTChxv3I69 rqn4iOWkrvOLo6BivplTEaO5C+1DvhlicXOBvhiejGcR7x2Z1GgrewcVy PwbDkudyaTb2R0ePKDdgJD6vtjt8CdsfVC4neZcdTEwPhfSe5YppXlq88 nuVGzpEpG3zEZ5895A6wzyhG/bjWICgw1CmaZ9pLBysQYrLLItqDO/Mrc b7bOR7Md/i12PlarKqTUI0yNzkBd++PTY6DvbFku4Q90iEogy1hK7WLON A==; X-CSE-ConnectionGUID: wYD9rhQaQtChYBzcBWo/uQ== X-CSE-MsgGUID: ZFTZqWtVQ9255uSDfUgpsQ== X-IronPort-AV: E=McAfee;i="6800,10657,11473"; a="63693218" X-IronPort-AV: E=Sophos;i="6.16,261,1744095600"; d="scan'208";a="63693218" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jun 2025 04:37:34 -0700 X-CSE-ConnectionGUID: E4+6VBWNT/KVds9ubA8IBg== X-CSE-MsgGUID: Xdm3O+jyTXuRhe76Z3qzAw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.16,261,1744095600"; d="scan'208";a="152399988" Received: from black.fi.intel.com ([10.237.72.28]) by orviesa008.jf.intel.com with ESMTP; 24 Jun 2025 04:37:22 -0700 Received: by black.fi.intel.com (Postfix, from userid 1000) id 48839224; Tue, 24 Jun 2025 14:37:21 +0300 (EEST) Date: Tue, 24 Jun 2025 14:37:21 +0300 From: "Kirill A. Shutemov" To: Dave Hansen Cc: Andrew Cooper , acme@redhat.com, aik@amd.com, akpm@linux-foundation.org, alexander.shishkin@linux.intel.com, ardb@kernel.org, ast@kernel.org, bp@alien8.de, brijesh.singh@amd.com, changbin.du@huawei.com, christophe.leroy@csgroup.eu, corbet@lwn.net, daniel.sneddon@linux.intel.com, dave.hansen@linux.intel.com, ebiggers@google.com, geert+renesas@glider.be, houtao1@huawei.com, hpa@zytor.com, jgg@ziepe.ca, jgross@suse.com, jpoimboe@kernel.org, kai.huang@intel.com, kees@kernel.org, leitao@debian.org, linux-doc@vger.kernel.org, linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux@rasmusvillemoes.dk, luto@kernel.org, mcgrof@kernel.org, mhiramat@kernel.org, michael.roth@amd.com, mingo@kernel.org, mingo@redhat.com, namhyung@kernel.org, paulmck@kernel.org, pawan.kumar.gupta@linux.intel.com, peterz@infradead.org, rick.p.edgecombe@intel.com, rppt@kernel.org, sandipan.das@amd.com, shijie@os.amperecomputing.com, sohil.mehta@intel.com, tglx@linutronix.de, tj@kernel.org, tony.luck@intel.com, vegard.nossum@oracle.com, x86@kernel.org, xin3.li@intel.com, xiongwei.song@windriver.com, ytcoode@gmail.com Subject: Re: [PATCHv6 07/16] x86/vsyscall: Reorganize the #PF emulation code Message-ID: References: <9d351d80-66fe-486f-bdb3-370859dc47cc@intel.com> <262c0fd2-ac66-4ce7-903f-4062f1fe1d6e@citrix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Queue-Id: E64F8100007 X-Rspam-User: X-Rspamd-Server: rspam07 X-Stat-Signature: qku63br4ezz8kbwo7e1s85whnxr5qpa1 X-HE-Tag: 1750765055-456159 X-HE-Meta: U2FsdGVkX199USO8efDY5SgczDj0LyKkhT+oJMhrVaQx+AYMt4bIUbwQhZsuPZ6eR1J+CsLGTaFX2xCi+D3BJpNJUvBmlGNKrwFSGF03F6zTBMMTBMMFx9krYXZIhuoaCe6q/HzDuVnxIXXIB3NaE7bLLiYhcI/wGPN+zCY76VTwFgT1cJ16Kte43cwyjZkqWtTU6BMZ8yzueLhx7xEv32CBubrebtPDjFSw9r4ALBK+d7mz1yIpRKfotsLDU8bdvnNEdmGebLef3gaHF9tbENzX0qRSvl7CovQ/8fO6a0DrrSiTYO5iJqkeypHGcNv4Z5kc8l2NrsWqNgQtROi18mI4zKj+f5f0Se11tKhJz8WEjV9VeUtaTUa6xUdm/ORIv41h5ovfqnP7zeuyvy5aU8xxddDQc+CRwrwgWOZjJ7SltPSNJx7scPf+rPkQ2jztanBjIVpWwRSsr+jF2IgoZbimf0BXAQMoqtalzkU3K5ZZbCTsp2PV7YhKCOXxekTvfDnTze0K5XBhXk6WNCqvS+UCm3eo94ne25fjDhJMgGhyvlfRBXNFKgz74qkq5OTnJtilK/baA7HdGqSdqH7ghn90fnERrG71BvYYSnAbF21rmyO/fIqNjdT0voS6+tJRb2kNNUHG0eU2xSxEujPgTsLTqc7jLrfkK1vznhvVc0ccByvX7WqcHYmdDPk6l3S/+rtuWjpdEDGY1tGhk28redDhFq8thvS6gzP4jHOduAWwfdE16dgIV5GlBUFjnBDTsHAlEqKojRg7JmJ/ezktVkPwVgRLnqQRqxhRtp3B8sBIfuthYto69kL4OUvYyrJs03G+K5j8MqMoIRZDtEAZfeewYa421ybYLidxXaw2MQ2YWMeAZKTo27nPB+8jW5fruF3aFGomzhuV4KceWMsnDUA5Z/Ewn0MPYKjSj9LEYhPF4k7qD4aZicRT9pS0UubSBEIBjOl3rJ1F4Uu7AXH QuExkd3q SgpzgLrQY0AGShZICCInHRZfiQyYH4kxn+c9/V++Tqsvt+iGasn+5HbnayQ32AwxwOC2mlYxWmfEs7+XgKHZvVuHQwv2L21+5IWJaE7Dj+EizTvo/q+jNqd9pL0lZT+J6cBFZs5yjX5UbOPWeMgfX+VUsWaNqbSl9HlMvfmWNBe6sf0YQRu5geRUtLNMRMEdt5vkfMOGGyGtr6dPwPBa1D7SYyNXCvqDkG1N0Fq/KmRhIeINrKVs4aj3M/78ALMcuHKH32ESTUaXe91Q= 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: List-Subscribe: List-Unsubscribe: On Mon, Jun 23, 2025 at 08:32:53AM -0700, Dave Hansen wrote: > On 6/23/25 05:41, Kirill A. Shutemov wrote: > > So, IIUC, that's dependency of vsyscall PF on NX. Do we want to disable > > vsyscall on boot if NX is not available? > > Well, vsyscall=none can break old userspace, so forcing it on old > hardware doesn't seem like a great idea. > > But, either way, this doesn't really appear to be a LASS issue. This code: > > > if (!(error_code & X86_PF_INSTR)) { > > /* Failed vsyscall read */ > > if (vsyscall_mode == EMULATE) > > return false; > > Is really asking the question: > > Is this #PF from an instruction fetch in the vsyscall page? > > That _should_ be able to be done by comparing CR2 and regs->rip. In > fact, that's done just below anyway: > > WARN_ON_ONCE(address != regs->ip); > > So I think we can fix this up with something like the attached patch > which just drives the if() from regs->rip and make the warning NX-only. Looks good to me. Do you want me to include it into this patchset or will you apply it separately? -- Kiryl Shutsemau / Kirill A. Shutemov