lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8d9b6f38-5d98-dc91-cecc-36c7ab829c96@intel.com>
Date:   Mon, 9 Nov 2020 11:35:50 -0800
From:   Dave Hansen <dave.hansen@...el.com>
To:     Alexandre Chartre <alexandre.chartre@...cle.com>,
        tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, hpa@...or.com,
        x86@...nel.org, dave.hansen@...ux.intel.com, luto@...nel.org,
        peterz@...radead.org, linux-kernel@...r.kernel.org,
        thomas.lendacky@....com, jroedel@...e.de
Cc:     konrad.wilk@...cle.com, jan.setjeeilers@...cle.com,
        junaids@...gle.com, oweisse@...gle.com, rppt@...ux.vnet.ibm.com,
        graf@...zon.de, mgross@...ux.intel.com, kuzuno@...il.com
Subject: Re: [RFC][PATCH 00/24] x86/pti: Defer CR3 switch to C code

On 11/9/20 6:44 AM, Alexandre Chartre wrote:
>  - map more syscall, interrupt and exception entry code into the user
>    page-table (map all noinstr code);

This seems like the thing we'd want to tag explicitly rather than make
it implicit with 'noinstr' code.  Worst-case, shouldn't this be:

#define __entry_func	noinstr

or something?

I'd also like to see a lot more discussion about what the rules are for
the C code and the compiler.  We can't, for instance, do a normal
printk() in this entry functions.  Should we stick them in a special
section and have objtool look for suspect patterns or references?

I'm most worried about things like this:

	if (something_weird)
		pr_warn("this will oops the kernel\n");

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ