On 10/9/20 12:42 PM, ira.weiny@xxxxxxxxx wrote: > +/* > + * Update the pk_reg value and return it. How about: Replace disable bits for @pkey with values from @flags. > + * Kernel users use the same flags as user space: > + * PKEY_DISABLE_ACCESS > + * PKEY_DISABLE_WRITE > + */ > +u32 update_pkey_val(u32 pk_reg, int pkey, unsigned int flags) > +{ > + int pkey_shift = pkey * PKR_BITS_PER_PKEY; > + > + pk_reg &= ~(((1 << PKR_BITS_PER_PKEY) - 1) << pkey_shift); > + > + if (flags & PKEY_DISABLE_ACCESS) > + pk_reg |= PKR_AD_BIT << pkey_shift; > + if (flags & PKEY_DISABLE_WRITE) > + pk_reg |= PKR_WD_BIT << pkey_shift; I still think this deserves two lines of comments: /* Mask out old bit values */ /* Or in new values */