cvs commit: src/sys/kern kern_descrip.c kern_fork.c kern_linker.c kern_proc.c kern_sysctl.c vfs_subr.c src/sys/netinet ip_divert.c tcp_subr.c udp_usrreq.c src/sys/netncp ncp_conn.c src/sys/netsmb...

Don Lewis truckman at FreeBSD.org
Fri Feb 27 10:02:59 PST 2004


truckman    2004/02/25 16:27:04 PST

  FreeBSD src repository

  Modified files:
    sys/kern             kern_descrip.c kern_fork.c kern_linker.c 
                         kern_proc.c kern_sysctl.c vfs_subr.c 
    sys/netinet          ip_divert.c tcp_subr.c udp_usrreq.c 
    sys/netncp           ncp_conn.c 
    sys/netsmb           smb_conn.c 
    sys/sys              sysctl.h 
    sys/vm               vm_extern.h vm_glue.c vm_mmap.c 
  Log:
  Split the mlock() kernel code into two parts, mlock(), which unpacks
  the syscall arguments and does the suser() permission check, and
  kern_mlock(), which does the resource limit checking and calls
  vm_map_wire().  Split munlock() in a similar way.
  
  Enable the RLIMIT_MEMLOCK checking code in kern_mlock().
  
  Replace calls to vslock() and vsunlock() in the sysctl code with
  calls to kern_mlock() and kern_munlock() so that the sysctl code
  will obey the wired memory limits.
  
  Nuke the vslock() and vsunlock() implementations, which are no
  longer used.
  
  Add a member to struct sysctl_req to track the amount of memory
  that is wired to handle the request.
  
  Modify sysctl_wire_old_buffer() to return an error if its call to
  kern_mlock() fails.  Only wire the minimum of the length specified
  in the sysctl request and the length specified in its argument list.
  It is recommended that sysctl handlers that use sysctl_wire_old_buffer()
  should specify reasonable estimates for the amount of data they
  want to return so that only the minimum amount of memory is wired
  no matter what length has been specified by the request.
  
  Modify the callers of sysctl_wire_old_buffer() to look for the
  error return.
  
  Modify sysctl_old_user to obey the wired buffer length and clean up
  its implementation.
  
  Reviewed by:    bms
  
  Revision  Changes    Path
  1.228     +3 -1      src/sys/kern/kern_descrip.c
  1.215     +3 -1      src/sys/kern/kern_fork.c
  1.109     +3 -1      src/sys/kern/kern_linker.c
  1.199     +3 -1      src/sys/kern/kern_proc.c
  1.150     +32 -19    src/sys/kern/kern_sysctl.c
  1.483     +3 -1      src/sys/kern/vfs_subr.c
  1.85      +4 -1      src/sys/netinet/ip_divert.c
  1.183     +3 -1      src/sys/netinet/tcp_subr.c
  1.148     +3 -1      src/sys/netinet/udp_usrreq.c
  1.25      +3 -2      src/sys/netncp/ncp_conn.c
  1.11      +3 -1      src/sys/netsmb/smb_conn.c
  1.124     +2 -1      src/sys/sys/sysctl.h
  1.69      +2 -2      src/sys/vm/vm_extern.h
  1.190     +0 -29     src/sys/vm/vm_glue.c
  1.179     +41 -24    src/sys/vm/vm_mmap.c
_______________________________________________
cvs-all at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe at freebsd.org"


More information about the cvs-src mailing list