Re: A question about PROT_NONE on ARM and ARM26

Scott Wood
2004-07-01T15:27:55Z

On Wed, Jun 30, 2004 at 11:59:22PM +0100, Russell King wrote:
> Ok, to fill in for just this bit, the domain covering user space mappings
> always remains in "client" mode, so page protections are always checked.
> PAGE_NONE does not have the "user" bit set, so both user space accesses
> and ldrt/strt instructions will be unable to access the pages, which is
> the desired behaviour.
>
> However, plain ldr and str instructions will access the page, but
> get_user/put_user doesn't use them, and copy_from_user/copy_to_user
> are carefully crafted to ensure that we hit the necessary permission
> checks for each page it touches on the first access.

What if CONFIG_PREEMPT is enabled, and you get preempted after that
first access, and another thread unmaps the page before you're
finished with it?

-Scott