Re: [PATCH 26/34] mm: implement new mprotect_key() system call

From: Dave Hansen
Date: Wed Dec 09 2015 - 12:05:15 EST

On 12/09/2015 08:45 AM, Michael Kerrisk (man-pages) wrote:
>>> >> * Explanation of what a protection domain is.
>> >
>> > A protection domain is a unique view of memory and is represented by the
>> > value in the PKRU register.
> Out something about this in pkey(7), but explain what you mean by a
> "unique view of memory".

Let's say there are only two protection keys: 0 and 1. There are two
disable bits per protection key (Access and Write Disable), so a two-key
PKRU looks like:

| PKEY0 | PKEY1 |
| AD0 | WD0 | AD1 | WD1 |

In this example, there are 16 possible protection domains, one for each
possible combination of the 4 rights-disable bits.

"Changing a protection domain" would mean changing (setting or clearing)
the value of any of those 4 bits. Each unique value of PKRU represents
a view of memory, or unique protection domain.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at