[PATCH] mm: extend prefault helpers to fault in more than PAGE_SIZE

Hillf Danton dhillf at gmail.com
Thu Feb 16 05:32:08 PST 2012


On Thu, Feb 16, 2012 at 8:01 PM, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
> @@ -416,17 +417,20 @@ static inline int fault_in_pages_writeable(char __user *uaddr, int size)
>         * Writing zeroes into userspace here is OK, because we know that if
>         * the zero gets there, we'll be overwriting it.
>         */
> -       ret = __put_user(0, uaddr);
> +       while (uaddr <= end) {
> +               ret = __put_user(0, uaddr);
> +               if (ret != 0)
> +                       return ret;
> +               uaddr += PAGE_SIZE;
> +       }

What if
             uaddr & ~PAGE_MASK == PAGE_SIZE -3 &&
                end & ~PAGE_MASK == 2


More information about the dri-devel mailing list