Re: Issue in man page PR_SET_MDWE.2const
From: Alejandro Colomar <alx@kernel.org>
Date: 2026-01-16 12:39:11
Hi Catalin, On Fri, Jan 16, 2026 at 10:11:03AM +0000, Catalin Marinas wrote:
Hi Alejandro, On Thu, Dec 25, 2025 at 09:54:46PM +0100, Alejandro Colomar wrote:quoted
On Wed, Dec 24, 2025 at 02:38:23PM +0000, Helge Kreutzmann wrote:quoted
Without further ado, the following was found: Issue: mapping protections → mapping ? "New memory mapping protections can't be writable and executable. Non-" "executable mappings can't become executable."That text was added in commit 457ca4a9ae3eae9835a5c011851c4eb88b49d322 Author: Florent Revest [off-list ref] Date: Wed Oct 11 13:47:44 2023 +0200 prctl.2: Document PR_SET_MDWE and PR_GET_MDWE Memory-Deny-Write-Execute is a W^X process control originally introduced by Joey Gouly. I'm the author of the PR_MDWE_NO_INHERIT flag. Signed-off-by: Florent Revest [off-list ref] Reviewed-by: Catalin Marinas [off-list ref] Signed-off-by: Alejandro Colomar [off-list ref] So let's ask the author and reviewer. The manual page says: $ mansect DESCRIPTION man/man2const/PR_SET_MDWE.2const \ | MANWIDTH=64 man /dev/stdin \ | cat; PR_SET_MDWE(2const) PR_SET_MDWE(2const) DESCRIPTION Set the calling process’ Memory‐Deny‐Write‐Execute protec‐ tion mask. Once protection bits are set, they can not be changed. mask must be a bit mask of: PR_MDWE_REFUSE_EXEC_GAIN New memory mapping protections can’t be writable and executable. Non‐executable mappings can’t be‐ come executable. PR_MDWE_NO_INHERIT (since Linux 6.6) Do not propagate MDWE protection to child processes on fork(2). Setting this bit requires setting PR_MDWE_REFUSE_EXEC_GAIN too. Linux man‐pages (unreleased) (date) PR_SET_MDWE(2const) Do you agree with the wording fix proposal?Just to make sure I understand, do you want to change "mapping protections" to "mapping" in the PR_MDWE_REFUSE_EXEC_GAIN description?
I didn't have an opinion. Helge proposed this, and I have no idea whether the proposal is good or not, which is why I forwarded it to you. :)
Fine by me but I would use "mappings" (plural) instead. It matches the following sentence.
Yes, plural seems more correct. Thanks! I've applied the following patch: commit 6352d57d7324d8c6fee2d335f103d8755ea5a620 Author: Alejandro Colomar [off-list ref] Date: Fri Jan 16 13:37:28 2026 +0100 man/man2const/PR_SET_MDWE.2const: wfix Reported-by: Helge Kreutzmann [off-list ref] Suggested-by: Catalin Marinas [off-list ref] Cc: Florent Revest [off-list ref] Signed-off-by: Alejandro Colomar [off-list ref] diff --git a/man/man2const/PR_SET_MDWE.2const b/man/man2const/PR_SET_MDWE.2const index db75b1873..4749ea5be 100644 --- a/man/man2const/PR_SET_MDWE.2const +++ b/man/man2const/PR_SET_MDWE.2const @@ -26,7 +26,7 @@ .SH DESCRIPTION must be a bit mask of: .TP .B PR_MDWE_REFUSE_EXEC_GAIN -New memory mapping protections can't be writable and executable. +New memory mappings can't be writable and executable. Non-executable mappings can't become executable. .TP .B PR_MDWE_NO_INHERIT " (since Linux 6.6)" Have a lovely day! Alex -- <https://www.alejandro-colomar.es>
Attachments
- signature.asc [application/pgp-signature] 833 bytes