Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Jul 1997 20:33:55 -0700
From:      David Greenman <dg@root.com>
To:        Michael Smith <msmith@atrad.adelaide.edu.au>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Location of copyin() and copyout().. 
Message-ID:  <199707300333.UAA12396@implode.root.com>
In-Reply-To: Your message of "Wed, 30 Jul 1997 12:52:18 %2B0930." <199707300322.MAA17715@genesis.atrad.adelaide.edu.au> 

next in thread | previous in thread | raw e-mail | index | archive | help
>So, I write a function linux_i386_modify_ldt(), which lives in the
>linux emulation module.  It takes the Linux i386_modify_ldt() syscall,
>converts the arguments to the right format, and tries to call
>i386_set_ldt().
>
>Only it _can't_, because the latter is using copyin(), and cannot access
>the argument structure in kernel space.

   Ah, now I understand. Yes, copyin/out do page protection checking and will
not allow a copyout to kernel memory or a copyin from kernel memory (since
kernel memory is protected against users).

-DG

David Greenman
Core-team/Principal Architect, The FreeBSD Project



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707300333.UAA12396>