From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752574AbdLNOSq (ORCPT ); Thu, 14 Dec 2017 09:18:46 -0500 Received: from Galois.linutronix.de ([146.0.238.70]:37585 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751098AbdLNOSo (ORCPT ); Thu, 14 Dec 2017 09:18:44 -0500 Date: Thu, 14 Dec 2017 15:17:38 +0100 (CET) From: Thomas Gleixner To: Jan Beulich cc: Juergen Gross , mingo@elte.hu, xen-devel , Boris Ostrovsky , sds@tycho.nsa.gov, linux-kernel@vger.kernel.org, hpa@zytor.com Subject: Re: [PATCH 1/2] x86: consider effective protection attributes in W+X check In-Reply-To: <5A32959902000078001975D6@prv-mh.provo.novell.com> Message-ID: References: <5A2FBC570200007800196B3E@prv-mh.provo.novell.com> <5A2FBE0A0200007800196B4F@suse.com> <5A32959902000078001975D6@prv-mh.provo.novell.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 14 Dec 2017, Jan Beulich wrote: > >>> On 14.12.17 at 15:04, wrote: > > On 12/12/17 11:31, Jan Beulich wrote: > >> @@ -335,42 +346,45 @@ static inline bool kasan_page_table(stru > >> > >> #if PTRS_PER_PMD > 1 > >> > >> -static void walk_pmd_level(struct seq_file *m, struct pg_state *st, pud_t addr, unsigned long P) > >> +static void walk_pmd_level(struct seq_file *m, struct pg_state *st, pud_t addr, > >> + pgprotval_t eff_in, unsigned long P) > >> { > >> int i; > >> pmd_t *start, *pmd_start; > >> - pgprotval_t prot; > >> + pgprotval_t prot, eff; > >> > >> pmd_start = start = (pmd_t *)pud_page_vaddr(addr); > >> for (i = 0; i < PTRS_PER_PMD; i++) { > >> st->current_address = normalize_addr(P + i * PMD_LEVEL_MULT); > >> if (!pmd_none(*start)) { > >> + prot = pmd_flags(*start); > >> + eff = effective_prot(eff_in, prot); > >> if (pmd_large(*start) || !pmd_present(*start)) { > >> - prot = pmd_flags(*start); > >> - note_page(m, st, __pgprot(prot), 4); > >> + note_page(m, st, __pgprot(prot), eff, 4); > >> } else if (!kasan_page_table(m, st, pmd_start)) { > >> - walk_pte_level(m, st, *start, > >> + walk_pte_level(m, st, *start, eff, > >> P + i * PMD_LEVEL_MULT); > >> } > > > > You can drop the braces for both cases. Applies to similar > > constructs below, too. > > I did consider that, but decided against to allow the patch to show > more clearly what it is that is actually being changed. > > > With that fixed you can add my: > > > > Reviewed-by: Juergen Gross > > Thanks. I'd like to wait for the x86 maintainer's opinion, and hence > won't add your R-b unless you tell me that's fine either way, or > unless they too would prefer resulting code cleanliness over patch > readability. If you remove the braces the code readability degrades because it's not a single line statement. Thanks, tglx