]> Zhao Yanbai Git Server - minix.git/commit
copy_msg_from_user() and copy_msg_to_user()
authorTomas Hruby <tom@minix3.org>
Tue, 9 Feb 2010 15:15:45 +0000 (15:15 +0000)
committerTomas Hruby <tom@minix3.org>
Tue, 9 Feb 2010 15:15:45 +0000 (15:15 +0000)
commit5e578184312c48c2c77387cfee95f8acf5571607
tree649bd2b0e49627b17c6ec5a79b3c6d1165abb468
parentad9ba944d10d6c068a1af6aecd1f0afea875ae1c
copy_msg_from_user() and copy_msg_to_user()

- copies a mesage from/to userspace without need of translating
  addresses

- the assumption is that the address space is installed, i.e. ldt and
  cr3 are loaded correctly

- if a pagefault or a general protection occurs while copying from
  userland to kernel (or vice versa) and error is returned which gives
  the caller a chance to respond in a proper way

- error happens _only_ because of a wrong user pointer if the function
  is used correctly

- if the prerequisites of the function do no hold, the function will
  most likely fail as the user address becomes random
kernel/arch/i386/exception.c
kernel/arch/i386/klib386.S
kernel/arch/i386/proto.h
kernel/proto.h