Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp865984ybb; Wed, 8 Apr 2020 11:24:33 -0700 (PDT) X-Google-Smtp-Source: APiQypIFzQDcqzFLGqBYUbqhE5rONQSKAwYeu4oMIrGX/UYzUaUx8ma5PCn9iAi2OTj3c7OHg9XU X-Received: by 2002:a9d:5191:: with SMTP id y17mr6882280otg.267.1586370269866; Wed, 08 Apr 2020 11:24:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586370269; cv=none; d=google.com; s=arc-20160816; b=R+GUeg8K3zbm2lhwrAJb+JUyGdLyM2B+lGj0e4JooKySXiDDupBV1qlo8CfPxvQOef w3tG8vj+15bUF99rqttHRvhFgB3z1n5jQRQgljuQrMbggb3MNdaSX1tN6sLnp7W/QPUd UUGl4EQfhaY1c1nAGR06YOgqmtwc73UwASU6bvAqtP23QuFz4aRz/YJkrCTO4FOZT3qs 5BztLnoVvBazx2FS7VgICobDswsCwmsNN1mh2tN3hZAXzjnTvMyFOqj36FXFsNFjKMkq 758hoGBxLF+ddE7i4edLtPczuI60iL4xTRuk7eqx5rZGPX6xeLsS/RTfNWND+861xzDX ufbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=8ai1EKIRdD2/sgGDHpp4MW/IoEI3Yks3//nqbuWrsVk=; b=SYjyEjrIN9DAT0nsoJnhE5syPeRpQKff+O/kBBTQBxsuf+52dJoNP6+4rysnuBQwHw 9lKtBaBXlENaEroAoCPWf/i7lZykbPmm72wRku2ChCNSRdNXE7N2jP/wgGO0tzg+ZBrq UHrp3ZBts2Gp+9qRx4LAuG7yeTVF4BR9tzLinTUEC+xX742GStYqVY2mywcxHVwRATub 6rt0Ksw2SHNocXbIWZ+1zfQ0Ysc6pB+t3ZhhFcbMT8tQwrlb9hMtOU0tdIS4VY6rMoNg 5ekNW0p8bVB5je89Q9iTMPOJ8Cw7oXdocESgcNvu6RNvtNW6DTSkFeDa3RqLAWiD/oLC w79A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=GbbtpXNU; 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=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o203si2751715oig.1.2020.04.08.11.24.17; Wed, 08 Apr 2020 11:24:29 -0700 (PDT) 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=GbbtpXNU; 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=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729850AbgDHPzB (ORCPT + 99 others); Wed, 8 Apr 2020 11:55:01 -0400 Received: from mail.kernel.org ([198.145.29.99]:54440 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729171AbgDHPzB (ORCPT ); Wed, 8 Apr 2020 11:55:01 -0400 Received: from linux-8ccs (p3EE2C7AC.dip0.t-ipconnect.de [62.226.199.172]) (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 9FE4620730; Wed, 8 Apr 2020 15:54:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1586361300; bh=srK23C8ykEqzmk67HFRfWIUxEO6G0UBRCN/+5bHhQT4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=GbbtpXNUkUPJejI4zWCd+Dlni1tb6Lru8e+gKPjvhdBOEUiBejtk61Uss7tjOzEHF XnLESMVxnTVmGECD9W3SX0BKSKRaTc4MjkhmkdWq1StIOHK7yXcCKn1Ahf4wrwlNMr qq1pKG1kuxbJixzqTRNZf3qtW6aaja+yyQJbCNys= Date: Wed, 8 Apr 2020 17:54:53 +0200 From: Jessica Yu To: Peter Zijlstra Cc: Steven Rostedt , tglx@linutronix.de, linux-kernel@vger.kernel.org, hch@infradead.org, sean.j.christopherson@intel.com, mingo@redhat.com, bp@alien8.de, hpa@zytor.com, x86@kernel.org, kenny@panix.com, rasmus.villemoes@prevas.dk, pbonzini@redhat.com, fenghua.yu@intel.com, xiaoyao.li@intel.com, nadav.amit@gmail.com, thellstrom@vmware.com, tony.luck@intel.com, gregkh@linuxfoundation.org, jannh@google.com, keescook@chromium.org, David.Laight@aculab.com, dcovelli@vmware.com, mhiramat@kernel.org Subject: Re: [PATCH 4/4] x86,module: Detect CRn and DRn manipulation Message-ID: <20200408155453.GB26619@linux-8ccs> References: <20200407110236.930134290@infradead.org> <20200407111007.429362016@infradead.org> <20200408092726.7c2bda01@gandalf.local.home> <20200408154419.GP20730@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <20200408154419.GP20730@hirez.programming.kicks-ass.net> X-OS: Linux linux-8ccs 4.12.14-lp150.12.61-default x86_64 User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org +++ Peter Zijlstra [08/04/20 17:44 +0200]: >On Wed, Apr 08, 2020 at 09:27:26AM -0400, Steven Rostedt wrote: >> On Tue, 07 Apr 2020 13:02:40 +0200 >> Peter Zijlstra wrote: > >> > + if (insn_is_mov_CRn(&insn) || insn_is_mov_DRn(&insn)) { >> > + pr_err("Module writes to CRn or DRn, please use the proper accessors: %s\n", mod->name); >> > + return -ENOEXEC; >> > + } >> > + >> >> Something like this should be done for all modules, not just out of tree >> modules. > >I'm all for it; but people were worried scanning all modules was too >expensive (I don't really believe it is, module loading just can't be a >hot-path). Also, in-tree modules are audited a lot more than out of tree >magic voodoo crap. The intention of the original patches was to do the text scan to catch a handful of out-of-tree hypervisor modules - but now that decode_module() is being generalized to more cases, I don't mind scanning all modules. Thanks, Jessica