cvs commit: src/sys/compat/linux linux_ipc.c src/sys/kern kern_descrip.c sysv_msg.c vfs_lookup.c vfs_syscalls.c src/sys/sys syscallsubr.h

John Baldwin jhb at FreeBSD.org
Mon Feb 7 18:44:55 GMT 2005


jhb         2005-02-07 18:44:55 UTC

  FreeBSD src repository

  Modified files:
    sys/compat/linux     linux_ipc.c 
    sys/kern             kern_descrip.c sysv_msg.c vfs_lookup.c 
                         vfs_syscalls.c 
    sys/sys              syscallsubr.h 
  Log:
  - Tweak kern_msgctl() to return a copy of the requested message queue id
    structure in the struct pointed to by the 3rd argument for IPC_STAT and
    get rid of the 4th argument.  The old way returned a pointer into the
    kernel array that the calling function would then access afterwards
    without holding the appropriate locks and doing non-lock-safe things like
    copyout() with the data anyways.  This change removes that unsafeness and
    resulting race conditions as well as simplifying the interface.
  - Implement kern_foo wrappers for stat(), lstat(), fstat(), statfs(),
    fstatfs(), and fhstatfs().  Use these wrappers to cut out a lot of
    code duplication for freebsd4 and netbsd compatability system calls.
  - Add a new lookup function kern_alternate_path() that looks up a filename
    under an alternate prefix and determines which filename should be used.
    This is basically a more general version of linux_emul_convpath() that
    can be shared by all the ABIs thus allowing for further reduction of
    code duplication.
  
  Revision  Changes    Path
  1.42      +2 -3      src/sys/compat/linux/linux_ipc.c
  1.274     +17 -19    src/sys/kern/kern_descrip.c
  1.59      +5 -7      src/sys/kern/sysv_msg.c
  1.70      +113 -0    src/sys/kern/vfs_lookup.c
  1.371     +96 -122   src/sys/kern/vfs_syscalls.c
  1.22      +17 -5     src/sys/sys/syscallsubr.h


More information about the cvs-src mailing list