Date: Fri, 15 Jun 2018 00:23:36 +0200 From: Emmanuel Vadot <manu@bidouilliste.com> To: "Jonathan T. Looney" <jtl@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r335068 - in head: share/man/man9 sys/amd64/amd64 sys/i386/i386 sys/kern sys/net sys/sys sys/vm Message-ID: <20180615002336.fcb966efe812cd60af59f68f@bidouilliste.com> In-Reply-To: <201806131704.w5DH4gLv048134@repo.freebsd.org> References: <201806131704.w5DH4gLv048134@repo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi Jonathan, On Wed, 13 Jun 2018 17:04:42 +0000 (UTC) "Jonathan T. Looney" <jtl@FreeBSD.org> wrote: > Author: jtl > Date: Wed Jun 13 17:04:41 2018 > New Revision: 335068 > URL: https://svnweb.freebsd.org/changeset/base/335068 > > Log: > Make UMA and malloc(9) return non-executable memory in most cases. > > Most kernel memory that is allocated after boot does not need to be > executable. There are a few exceptions. For example, kernel modules > do need executable memory, but they don't use UMA or malloc(9). The > BPF JIT compiler also needs executable memory and did use malloc(9) > until r317072. > > (Note that a side effect of r316767 was that the "small allocation" > path in UMA on amd64 already returned non-executable memory. This > meant that some calls to malloc(9) or the UMA zone(9) allocator could > return executable memory, while others could return non-executable > memory. This change makes the behavior consistent.) > > This change makes malloc(9) return non-executable memory unless the new > M_EXEC flag is specified. After this change, the UMA zone(9) allocator > will always return non-executable memory, and a KASSERT will catch > attempts to use the M_EXEC flag to allocate executable memory using > uma_zalloc() or its variants. > > Allocations that do need executable memory have various choices. They > may use the M_EXEC flag to malloc(9), or they may use a different VM > interfact to obtain executable pages. > > Now that malloc(9) again allows executable allocations, this change also > reverts most of r317072. > > PR: 228927 > Reviewed by: alc, kib, markj, jhb (previous version) > Sponsored by: Netflix > Differential Revision: https://reviews.freebsd.org/D15691 This brake module loading on armv7 and arm64 kevans log on armv7 : https://gist.github.com/kevans91/d0ffcd6c94a0e4cdfdc5433612fce2e8 mine on arm64 : http://dpaste.com/3VVBZDV Do you have any idea what could cause that ? Is any MD stuff is missing for those arches ? Thanks, -- Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20180615002336.fcb966efe812cd60af59f68f>