git: kernel - kqueue select support

Samuel Greear sjg at crater.dragonflybsd.org
Mon Jul 19 14:58:42 PDT 2010


commit 8acdf1cfa6e56d6bf85dba89692dd5d2f6078d3a
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Tue Jun 22 21:59:29 2010 -0700

    kernel - kqueue select support
    
    * Fix bug in kevent timeout handling.  Only go to non-blocking once
      (*res) is non-zero.
    
    * Use stack-declared kfd_set structures for select operations on
      64 or fewer descriptors.
    
    * Refactor the select_copyin() loop.
    
    * Fix bug in serial number decoding in the select_copyout() loop.
    
    * Do not use EV_CLEAR, this can cause temporary EOF conditions to
      reset improperly.  Do not use EV_ONESHOT either.  Leave the event
      in the kqueue, it will speed things up when select() is called in
      a loop (the events will already exist).
    
    * Implement ptckqfilter ... implement kqfilter functions for pty's and
      ptc's instead of using the tty kqfilter functions which do not work
      properly for ptc control terminals.
    
    * Change getbits/putbits from macros to inline functions.

Summary of changes:
 sys/kern/kern_event.c  |   27 ++++--
 sys/kern/sys_generic.c |  241 ++++++++++++++++++++++++++++-------------------
 sys/kern/tty_pty.c     |  109 +++++++++++++++++++++-
 3 files changed, 269 insertions(+), 108 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/8acdf1cfa6e56d6bf85dba89692dd5d2f6078d3a


-- 
DragonFly BSD source repository





More information about the Commits mailing list