[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<SEZPR03MB67864221134F49E9BE3B1FB9B44F2@SEZPR03MB6786.apcprd03.prod.outlook.com>
Date: Tue, 13 Feb 2024 19:35:27 +0000
From: Maxwell Bland <mbland@...orola.com>
To: Mark Rutland <mark.rutland@....com>
CC: "linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"catalin.marinas@....com" <catalin.marinas@....com>,
"will@...nel.org"
<will@...nel.org>,
"dennis@...nel.org" <dennis@...nel.org>,
"tj@...nel.org"
<tj@...nel.org>, "cl@...ux.com" <cl@...ux.com>,
"akpm@...ux-foundation.org"
<akpm@...ux-foundation.org>,
"shikemeng@...weicloud.com"
<shikemeng@...weicloud.com>,
"david@...hat.com" <david@...hat.com>,
"rppt@...nel.org" <rppt@...nel.org>,
"anshuman.khandual@....com"
<anshuman.khandual@....com>,
"willy@...radead.org" <willy@...radead.org>,
"ryan.roberts@....com" <ryan.roberts@....com>,
"rick.p.edgecombe@...el.com"
<rick.p.edgecombe@...el.com>,
"pcc@...gle.com" <pcc@...gle.com>,
"rmk+kernel@...linux.org.uk" <rmk+kernel@...linux.org.uk>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"gshan@...hat.com"
<gshan@...hat.com>,
"gregkh@...uxfoundation.org"
<gregkh@...uxfoundation.org>,
"Jonathan.Cameron@...wei.com"
<Jonathan.Cameron@...wei.com>,
"james.morse@....com" <james.morse@....com>,
Andrew Wheeler <awheeler@...orola.com>
Subject: RE: [PATCH] arm64: allow post-init vmalloc PXNTable
> -----Original Message-----
> From: Maxwell Bland On Tuesday, February 13, 2024 1:15 PM
> > From: Mark Rutland <mark.rutland@....com>
> > How does this work with other allocations of executable memory? e.g. modules,
> > BPF?
>
> It should work.
> - kernel/bpf/core.c uses bpf_jit_alloc_exec to create executable code regions,
> which is a wrapper for module_alloc. In the interpreted BPF case, we do not
> need to worry since the pages storing interpreted code are NX and can be
> marked PXNTable regardless.
Correction: I was wrong here. The _weak reference to bpf_jit_alloc_exec is overwritten in
arch/arm64/net/bpf_jit_comp.c to use a vmalloc call. This would need to be set back to
the generic BPF's use of "module_alloc". I will look into and correct this.
Powered by blists - more mailing lists