cvs commit: src/lib/libc/sys Makefile.inc read.2 write.2 src/sys/compat/freebsd32 freebsd32_misc.c syscalls.master src/sys/kern sys_generic.c syscalls.master src/sys/sys syscallsubr.h uio.h

John Baldwin jhb at FreeBSD.org
Thu Jul 7 18:17:56 GMT 2005


jhb         2005-07-07 18:17:56 UTC

  FreeBSD src repository

  Modified files:
    lib/libc/sys         Makefile.inc read.2 write.2 
    sys/compat/freebsd32 freebsd32_misc.c syscalls.master 
    sys/kern             sys_generic.c syscalls.master 
    sys/sys              syscallsubr.h uio.h 
  Log:
  - Add two new system calls: preadv() and pwritev() which are like readv()
    and writev() except that they take an additional offset argument and do
    not change the current file position.  In SAT speak:
    preadv:readv::pread:read and pwritev:writev::pwrite:write.
  - Try to reduce code duplication some by merging most of the old
    kern_foov() and dofilefoo() functions into new dofilefoo() functions
    that are called by kern_foov() and kern_pfoov().  The non-v functions
    now all generate a simple uio on the stack from the passed in arguments
    and then call kern_foov().  For example, read() now just builds a uio and
    calls kern_readv() and pwrite() just builds a uio and calls kern_pwritev().
  
  PR:             kern/80362
  Submitted by:   Marc Olzheim marcolz at stack dot nl (1)
  Approved by:    re (scottl)
  MFC after:      1 week
  
  Revision  Changes    Path
  1.113     +2 -2      src/lib/libc/sys/Makefile.inc
  1.30      +25 -8     src/lib/libc/sys/read.2
  1.30      +21 -6     src/lib/libc/sys/write.2
  1.38      +28 -0     src/sys/compat/freebsd32/freebsd32_misc.c
  1.50      +9 -2      src/sys/compat/freebsd32/syscalls.master
  1.146     +198 -167  src/sys/kern/sys_generic.c
  1.197     +5 -2      src/sys/kern/syscalls.master
  1.31      +2 -0      src/sys/sys/syscallsubr.h
  1.39      +7 -0      src/sys/sys/uio.h


More information about the cvs-all mailing list