git: kernel - implement serialno for kqueue poll handling part 1/2

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


commit fe24d605c5ed729a65d5866e8b0622aaff1a13d6
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Jul 8 21:46:52 2010 -0700

    kernel - implement serialno for kqueue poll handling part 1/2
    
    * The kqueue implementation for the poll system call was improperly
      triggering on spurious events.
    
    * Adjust the poll support code to implement a serial number scheme
      similar to how the select code works.  The poll array index is also
      encoded.
    
    * poll() handles unsupported POLLPRI and POLLRDBAND requests differently
      from select().  poll() ignores these requests if they are not supported
      (select returns an error).
    
      Allow kqfilter functions to return EPERM or EOPNOTSUPP to indicate
      an unsupported filter.  Return values will be fixed in part 2.

Summary of changes:
 sys/kern/kern_event.c  |   22 +++++++-
 sys/kern/sys_generic.c |  133 ++++++++++++++++++++++++++++++++++-------------
 sys/kern/sys_pipe.c    |    2 +-
 3 files changed, 116 insertions(+), 41 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/fe24d605c5ed729a65d5866e8b0622aaff1a13d6


-- 
DragonFly BSD source repository





More information about the Commits mailing list