Re: [TRIVIAL] Warn users about machines with non-working WP bit

Manfred Spraul
2002-08-06T14:34:17Z

Kasper Dupont wrote:

>I just get another idea, that might be easier to get right. If
>the only problem is one process changing the mm while another
>process is doing a copy_to_user, we should be able to fix it by
>placing a readlock on the mm while the copy_to_user is in progress.
>
>
Yes, that would work. copy_to_user is never called with the mmap
semaphore locked, i.e.

#define copy_to_user(...) \
down(&current->mm->mmap_sem); \
check_wp_bit(); \
real_copy_to_user(); \
up(&current->mm->mmap_sem)

verify_area would just check that the pointer is below TASK_SIZE, and
the wp bit is checked within copy_to_user().

But how many 80386 Linux systems that run the 2.4 kernel exist?

--
Manfred