linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "Jason A. Donenfeld" <Jason@zx2c4.com>
To: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
	linux-mm@kvack.org, Andy Lutomirski <luto@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Christophe Leroy <christophe.leroy@csgroup.eu>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Nicholas Piggin <npiggin@gmail.com>,
	Naveen N Rao <naveen@kernel.org>, Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	"H . Peter Anvin" <hpa@zytor.com>, Theodore Ts'o <tytso@mit.edu>,
	Arnd Bergmann <arnd@arndb.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Masami Hiramatsu <mhiramat@kernel.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Subject: Re: [PATCH v2 1/8] x86: vdso: Introduce asm/vdso/mman.h
Date: Tue, 24 Sep 2024 01:05:33 +0200	[thread overview]
Message-ID: <ZvH0PdVy5jJN3VTt@zx2c4.com> (raw)
In-Reply-To: <20240923141943.133551-2-vincenzo.frascino@arm.com>

Hi,

I have the feeling I said this in the last two revisions, but maybe I
just thought it or agreed with somebody else who typed it but never
typed it myself, so now I'm typing it in no uncertain terms.

On Mon, Sep 23, 2024 at 03:19:36PM +0100, Vincenzo Frascino wrote:
> +#define VDSO_MMAP_PROT	PROT_READ | PROT_WRITE
> +#define VDSO_MMAP_FLAGS	MAP_DROPPABLE | MAP_ANONYMOUS

No, absolutely not. This is nonsense. Those flags aren't "the vdso
flags" or something. The variable name makes no sense. Moving the
definition outside of getrandom.c like the next patch does also makes no
sense. Do not do this.

If you need to, for some reason, rename those symbols, then rename them
each to VDSO_MAP_ANONYMOUS or whatever, and then use those from within
getrandom.c so it remains as readable and reasonable as it currently is.

But under no circumstances should you move where this is expressed and
rename it something generic like "vdso flags", when it is not generic
but rather very specific to the function where it is currently used.
IOW, please take a look and try to understand the code that you're
touching when proposing changes like this.


Also, though, I don't quite see what this patch accomplishes. If you're
fine doing #include <notvdso/whatever.h> into here, importing this
header into vdso code will transitively include notvdso/whatever.h with
it. So in that case, either we can keep using MAP_ANONYMOUS and whatnot
in the original sane symbol names, or this approach isn't correct in the
first place.

Maybe what you want instead is a simpler vdso/whatever.h header that
just includes nonvdso/whatever.h, and then you let getrandom.c and other
things keep using the same symbols as they were using before.

Jason


  reply	other threads:[~2024-09-23 23:05 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-23 14:19 [PATCH v2 0/8] vdso: Use only headers from the vdso/ namespace Vincenzo Frascino
2024-09-23 14:19 ` [PATCH v2 1/8] x86: vdso: Introduce asm/vdso/mman.h Vincenzo Frascino
2024-09-23 23:05   ` Jason A. Donenfeld [this message]
2024-09-24 15:10     ` Vincenzo Frascino
2024-09-25  6:51   ` Christophe Leroy
2024-09-25 21:23     ` Arnd Bergmann
2024-09-26  5:51       ` Christophe Leroy
2024-09-26  6:20         ` Arnd Bergmann
2024-09-27 13:09       ` Vincenzo Frascino
2024-09-23 14:19 ` [PATCH v2 2/8] arm64: " Vincenzo Frascino
2024-09-25  6:52   ` Christophe Leroy
2024-09-23 14:19 ` [PATCH v2 3/8] vdso: Introduce vdso/mman.h Vincenzo Frascino
2024-09-25  6:54   ` Christophe Leroy
2024-09-23 14:19 ` [PATCH v2 4/8] vdso: Introduce vdso/page.h Vincenzo Frascino
2024-09-23 16:54   ` Arnd Bergmann
2024-09-24 14:10     ` Vincenzo Frascino
2024-09-24 14:28       ` Christophe Leroy
2024-09-24 14:32         ` Vincenzo Frascino
2024-09-25  6:56   ` Christophe Leroy
2024-09-23 14:19 ` [PATCH v2 5/8] x86: vdso: Modify asm/vdso/getrandom.h to include datapage Vincenzo Frascino
2024-09-25  6:57   ` Christophe Leroy
2024-09-23 14:19 ` [PATCH v2 6/8] vdso: Modify vdso/getrandom.h to include the asm header Vincenzo Frascino
2024-09-25  6:58   ` Christophe Leroy
2024-09-23 14:19 ` [PATCH v2 7/8] vdso: Introduce uapi/vdso/random.h Vincenzo Frascino
2024-09-23 23:09   ` Jason A. Donenfeld
2024-09-24 15:14     ` Vincenzo Frascino
2024-09-25  7:00   ` Christophe Leroy
2024-09-23 14:19 ` [PATCH v2 8/8] vdso: Modify getrandom to include the correct namespace Vincenzo Frascino
2024-09-23 23:11   ` Jason A. Donenfeld
2024-09-25  7:09   ` Christophe Leroy
2024-09-25  6:39 ` [PATCH v2 0/8] vdso: Use only headers from the vdso/ namespace Christophe Leroy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZvH0PdVy5jJN3VTt@zx2c4.com \
    --to=jason@zx2c4.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=bp@alien8.de \
    --cc=christophe.leroy@csgroup.eu \
    --cc=dave.hansen@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=luto@kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mhiramat@kernel.org \
    --cc=mingo@redhat.com \
    --cc=mpe@ellerman.id.au \
    --cc=naveen@kernel.org \
    --cc=npiggin@gmail.com \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    --cc=tytso@mit.edu \
    --cc=vincenzo.frascino@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox