Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp3034886imj; Mon, 11 Feb 2019 12:40:40 -0800 (PST) X-Google-Smtp-Source: AHgI3IYHYDRw0PWRjp+nACiWT7TR7mxKaY+Cu+Mh9x2tpDIDRH8uxGlJuQdqAsSTmk8hmygkLU6B X-Received: by 2002:a17:902:f64:: with SMTP id 91mr138027ply.132.1549917640383; Mon, 11 Feb 2019 12:40:40 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1549917640; cv=none; d=google.com; s=arc-20160816; b=vQ7j5QTO1PCbmZFo5JfbJw0xhg2QKTxwxU9Mc8uOgxgfGWDBGH9Qel8EQ7BSFQjRcN Ki6Yz2MAcP7Bp6vanOL1tT/wGB6i98pcoL2BfJVKtoQYcAbKjSlNBTutA1ycjKlF+Mz+ Whu2jM9weBpyY5V0N7QHPeOKNo1ggPNy//xrzDTkm5VtnBoXQEmkncYRu0DGhZ+mBmXX CBAbUqDhyw5+0Ve4xrDWSGl2xRrkgSUs5xLTz46+UI59pDouhzMpA5fyjAnffQf1BOwa GUOqeeRb4yAiQT8ACMraY9O4/RmmjmDYkZ0h1W5JfPXVbCVCLaHOMVe8Yo6e1QFfSf5F uUvg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:to:references:message-id :content-transfer-encoding:cc:date:in-reply-to:from:subject :mime-version:dkim-signature; bh=nXXWwRuaJ6+ems3kM7ee19N3t7IhdXW1WW/p2CXVYdI=; b=dMIVIME7B/vAp/5lI6z9s5Y3NFJTuSAFfree0Rno34CKglh7ZZjc+pS4fVLX1Y9Jri bBzHnrMMDusp/91+dLSZMgHYx/daXweA7LwvSrT8Y/wRR7OpYb3uMucoqzGErRU9mMyp pKkCkeH8G7lkjYwewWdd+Wxi0Q+SSjoOin6krpDNkTGEIPaPiz8r365zdOinM0K0jyUl uJ7p2S13fCtv9/0m3vwcaclcb0wNtcULito0KHdOGWwCnIV3CuCno2vkFBExD54ZoTGT AknydSjXTEOhlWcAKV+0VUL3bNVfIm8t4Fkgf2LQY+O86RR7NCXQxMERqO0kdkdes5xN pWXQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="f5tw/40m"; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h68si1546361plb.375.2019.02.11.12.40.24; Mon, 11 Feb 2019 12:40:40 -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=@gmail.com header.s=20161025 header.b="f5tw/40m"; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387653AbfBKTJe (ORCPT + 99 others); Mon, 11 Feb 2019 14:09:34 -0500 Received: from mail-pg1-f196.google.com ([209.85.215.196]:44615 "EHLO mail-pg1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387609AbfBKTJc (ORCPT ); Mon, 11 Feb 2019 14:09:32 -0500 Received: by mail-pg1-f196.google.com with SMTP id y1so5357279pgk.11; Mon, 11 Feb 2019 11:09:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=nXXWwRuaJ6+ems3kM7ee19N3t7IhdXW1WW/p2CXVYdI=; b=f5tw/40mwGuzkdOcN4HgctENimk7IRkUtncSGUWBNxDfImzcfpFsSc/X2DOrcTTZ3A n0LbnvfXS7EVdDtkI/WPQ7IIjassAhqHIEVRy0c3cmH3zmtXgj3WdNJbc8kaTzTRzaqE 0Rkmf1uLlb/c4Tij/veYAEwld984BfNK6Ze2hcTrtWqKjpHDo16VbqPp6veoBC9kDcet R2f4dlLxSLhTx/PL3c/S084cipdpplX0FmsL0nLr3Du3QKb6NA7aVAtMjZ5pyGT2C65J CWJvHJsvyIJgLBV62FRx2aregf9ZQXjCbrTIO2Ma29AhKazy6qBW6cDZQhqz/63XTFzV DuGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=nXXWwRuaJ6+ems3kM7ee19N3t7IhdXW1WW/p2CXVYdI=; b=j14uYVeT8lS3Z0UbJfNESCTdnE+4lZ08VbMLJwAhzYfDhu6DDDzFlF3Xx14qoPTgHS +GXioXzhysQrl1aUSZwPdCfGFJNLNQ0Gq/REppjCRhrGF4Bq3qWTTi8wiy0gmiH7NDLd UvqeIhrTydphLrLTySRNKO/pTs3Savv+uc1pS8eCAg2srv/75e4to4PNLnVOtrByiu0q AhlOxljcTWBYCQyPePTS6Jl4fRM8iP3yRnvmloUuDSnT+0N+syCGVuLQrCzHYggvKEeK awa57uLlN8eMm1lLXNko4824bXrBHG0ZQ93WOM//iNMQG9E5ASjFcRQNdctzexzSsLpt ED7g== X-Gm-Message-State: AHQUAuZQyudcJfU39iXjHlfDeAz8CysohnbD2M1N66uVDpXWjJgNuSET gUtmR2NJ7HriRG2/IDLqUhw= X-Received: by 2002:a63:e051:: with SMTP id n17mr35005871pgj.258.1549912171925; Mon, 11 Feb 2019 11:09:31 -0800 (PST) Received: from [10.33.115.182] ([66.170.99.1]) by smtp.gmail.com with ESMTPSA id a15sm16655637pgd.4.2019.02.11.11.09.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 11 Feb 2019 11:09:31 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\)) Subject: Re: [PATCH v2 10/20] x86: avoid W^X being broken during modules loading From: Nadav Amit In-Reply-To: <20190211190108.GP19618@zn.tnic> Date: Mon, 11 Feb 2019 11:09:25 -0800 Cc: Rick Edgecombe , Andy Lutomirski , Ingo Molnar , LKML , X86 ML , "H. Peter Anvin" , Thomas Gleixner , Dave Hansen , Peter Zijlstra , Damian Tometzki , linux-integrity , LSM List , Andrew Morton , Kernel Hardening , Linux-MM , Will Deacon , Ard Biesheuvel , Kristen Carlson Accardi , "Dock, Deneen T" , Kees Cook , Dave Hansen , Masami Hiramatsu Content-Transfer-Encoding: quoted-printable Message-Id: References: <20190129003422.9328-1-rick.p.edgecombe@intel.com> <20190129003422.9328-11-rick.p.edgecombe@intel.com> <20190211182956.GN19618@zn.tnic> <1533F2BB-2284-499B-9912-6D74D0B87BC1@gmail.com> <20190211190108.GP19618@zn.tnic> To: Borislav Petkov X-Mailer: Apple Mail (2.3445.102.3) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > On Feb 11, 2019, at 11:01 AM, Borislav Petkov wrote: >=20 > On Mon, Feb 11, 2019 at 10:45:26AM -0800, Nadav Amit wrote: >> Are you sure about that? This path is still used when modules are = loaded. >=20 > Yes, I'm sure. Loading a module does a gazillion things so saving a > couple of insns - yes, boot_cpu_has() is usually a RIP-relative MOV = and a > TEST - doesn't show even as a blip on any radar. I fully agree, if that is the standard. It is just that I find the use of static_cpu_has()/boot_cpu_has() to be = very inconsistent. I doubt that show_cpuinfo_misc(), = copy_fpstate_to_sigframe(), or i915_memcpy_init_early() that use static_cpu_has() are any hotter = than text_poke_early(). Anyhow, I=E2=80=99ll use boot_cpu_has() as you said.=