From: Florian Weimer <fweimer@redhat.com> To: Ram Pai <linuxram@us.ibm.com>, Dave Hansen <dave.hansen@intel.com> Cc: linux-mm <linux-mm@kvack.org>, x86@kernel.org, linux-arch <linux-arch@vger.kernel.org>, linux-x86_64@vger.kernel.org, Linux API <linux-api@vger.kernel.org> Subject: Re: pkeys: Support setting access rights for signal handlers Date: Wed, 13 Dec 2017 03:14:36 +0100 [thread overview] Message-ID: <9dc13a32-b1a6-8462-7e19-cfcf9e2c151e@redhat.com> (raw) In-Reply-To: <20171212231324.GE5460@ram.oc3035372033.ibm.com> On 12/13/2017 12:13 AM, Ram Pai wrote: > On POWER, the value of the pkey_read() i.e contents the AMR > register(pkru equivalent), is always the same regardless of its > context; signal handler or not. > > In other words, the permission of any allocated key will not > reset in a signal handler context. That's certainly the simpler semantics, but I don't like how they differ from x86. Is the AMR register reset to the original value upon (regular) return from the signal handler? > I was not aware that x86 would reset the key permissions in signal > handler. I think, the proposed behavior for PKEY_ALLOC_SETSIGNAL should > actually be the default behavior. Note that PKEY_ALLOC_SETSIGNAL does something different: It requests that the kernel sets the access rights for the key to the bits specified at pkey_alloc time when the signal handler is invoked. So there is still a reset with PKEY_ALLOC_SETSIGNAL, but to a different value. It did not occur to me that it might be desirable to avoid resetting the value on a per-key basis. Thanks, Florian -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Florian Weimer <fweimer@redhat.com> To: Ram Pai <linuxram@us.ibm.com>, Dave Hansen <dave.hansen@intel.com> Cc: linux-mm <linux-mm@kvack.org>, x86@kernel.org, linux-arch <linux-arch@vger.kernel.org>, linux-x86_64@vger.kernel.org, Linux API <linux-api@vger.kernel.org> Subject: Re: pkeys: Support setting access rights for signal handlers Date: Wed, 13 Dec 2017 03:14:36 +0100 [thread overview] Message-ID: <9dc13a32-b1a6-8462-7e19-cfcf9e2c151e@redhat.com> (raw) Message-ID: <20171213021436.DSkxW3s_Yi8F6zle0aNvUXcon73pQ6xEORvnXUrtbtc@z> (raw) In-Reply-To: <20171212231324.GE5460@ram.oc3035372033.ibm.com> On 12/13/2017 12:13 AM, Ram Pai wrote: > On POWER, the value of the pkey_read() i.e contents the AMR > register(pkru equivalent), is always the same regardless of its > context; signal handler or not. > > In other words, the permission of any allocated key will not > reset in a signal handler context. That's certainly the simpler semantics, but I don't like how they differ from x86. Is the AMR register reset to the original value upon (regular) return from the signal handler? > I was not aware that x86 would reset the key permissions in signal > handler. I think, the proposed behavior for PKEY_ALLOC_SETSIGNAL should > actually be the default behavior. Note that PKEY_ALLOC_SETSIGNAL does something different: It requests that the kernel sets the access rights for the key to the bits specified at pkey_alloc time when the signal handler is invoked. So there is still a reset with PKEY_ALLOC_SETSIGNAL, but to a different value. It did not occur to me that it might be desirable to avoid resetting the value on a per-key basis. Thanks, Florian
next prev parent reply other threads:[~2017-12-13 2:14 UTC|newest] Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-12-09 21:16 pkeys: Support setting access rights for signal handlers Florian Weimer [not found] ` <5fee976a-42d4-d469-7058-b78ad8897219-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2017-12-10 0:17 ` Dave Hansen 2017-12-10 0:17 ` Dave Hansen 2017-12-10 0:17 ` Dave Hansen 2017-12-10 6:42 ` Florian Weimer 2017-12-10 6:42 ` Florian Weimer 2017-12-11 16:13 ` Dave Hansen 2017-12-11 16:13 ` Dave Hansen 2017-12-12 23:13 ` Ram Pai 2017-12-12 23:13 ` Ram Pai 2017-12-13 2:14 ` Florian Weimer [this message] 2017-12-13 2:14 ` Florian Weimer 2017-12-13 11:35 ` Ram Pai 2017-12-13 11:35 ` Ram Pai [not found] ` <20171213113544.GG5460-LOE2q6NSToAxGrZ80giIafUQ3DHhIser@public.gmane.org> 2017-12-13 15:08 ` Florian Weimer 2017-12-13 15:08 ` Florian Weimer 2017-12-13 15:08 ` Florian Weimer 2017-12-13 15:22 ` Dave Hansen 2017-12-13 15:22 ` Dave Hansen 2017-12-13 15:40 ` Florian Weimer 2017-12-13 15:40 ` Florian Weimer 2017-12-14 0:17 ` Ram Pai 2017-12-14 0:17 ` Ram Pai 2017-12-14 11:21 ` Florian Weimer 2017-12-16 15:09 ` Ram Pai 2017-12-16 15:09 ` Ram Pai 2017-12-16 15:25 ` Florian Weimer 2017-12-16 15:25 ` Florian Weimer [not found] ` <2eba29f4-804d-b211-1293-52a567739cad-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> 2017-12-16 17:20 ` Ram Pai 2017-12-16 17:20 ` Ram Pai 2017-12-16 17:20 ` Ram Pai 2017-12-18 11:00 ` Florian Weimer 2017-12-18 11:00 ` Florian Weimer
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=9dc13a32-b1a6-8462-7e19-cfcf9e2c151e@redhat.com \ --to=fweimer@redhat.com \ --cc=dave.hansen@intel.com \ --cc=linux-api@vger.kernel.org \ --cc=linux-arch@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=linux-x86_64@vger.kernel.org \ --cc=linuxram@us.ibm.com \ --cc=x86@kernel.org \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.