CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2015/08/27 22:38:47
Modified files:
sys/sys : file.h unpcb.h
sys/kern : kern_sysctl.c uipc_usrreq.c
lib/libkvm : kvm_file2.c
usr.sbin/pstat : pstat.8 pstat.c
Log message:
Rework the UNIX domain socket garbage collector, including ideas from
{Free,Net}BSD
- when a socket is closed with fds in its input, defer closing them to
a task to avoid recursing. This eliminates the complicated extra
reference taking which had a 37 line(!) comment explanation
- move flags, counts, and links only needed for this from struct file to
struct unpcb
- document the flow of the mark/sweep collector
much help from claudio@ who made me explain the GC to him until we trusted it
ok claudio@ mpi@ deraadt@