lkml.org 
[lkml]   [2005]   [Dec]   [3]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateSat, 3 Dec 2005 10:43:14 +0100
FromHeiko Carstens <>
SubjectRe: copy_from_user/copy_to_user question
> > > > Secondly, they seem to use memcpy as opposed to using
> > > > copy_to_user/copy_from_user which is also very
> > > > dangerous.
> > > 
> > > If they are grabbing data from user context into kernel (or vise versa)
> > > that could easily cause an oops.  Not to mention it is a security risk.
> > 
> > Not to mention it simply won't work on a many platforms, no matter what...
> 
> Hmm, I've only worked with a few platforms (i386, x86_64, ppc, mips, and
> a little arm but I don't remember that much).  I believe that a memcpy
> could work on all these platforms (error prone of course, but if the
> memory is mapped its OK).  When entering a system call, the kernel still
> has access to the memory locations assigned to the user.

Won't work at all on platforms that have distinct address spaces for user
and kernel space. E.g. on s390/s390x it wouldn't work. And yes, there are
special instructions to copy data between address spaces.

Heiko
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-12-03 10:48    [from the cache]
©2003-2008