cvs commit: src/sys/sys event.h src/sys/kern kern_event.c vfs_aio.c

Doug Ambrisko ambrisko at FreeBSD.org
Wed Oct 12 10:51:32 PDT 2005


ambrisko    2005-10-12 17:51:31 UTC

  FreeBSD src repository

  Modified files:
    sys/sys              event.h 
    sys/kern             kern_event.c vfs_aio.c 
  Log:
  Add in kqueue support to LIO event notification and fix how it handled
  notifications when LIO operations completed.  These were the problems
  with LIO event complete notification:
        - Move all LIO/AIO event notification into one general function
          so we don't have bugs in different data paths.  This unification
          got rid of several notification bugs one of which if kqueue was
          used a SIGILL could get sent to the process.
        - Change the LIO event accounting to count all AIO request that
          could have been split across the fast path and daemon mode.
          The prior accounting only kept track of AIO op's in that
          mode and not the entire list of operations.  This could cause
          a bogus LIO event complete notification to occur when all of
          the fast path AIO op's completed and not the AIO op's that
          ended up queued for the daemon.
  
  Suggestions from:       alc
  
  Revision  Changes    Path
  1.95      +6 -2      src/sys/kern/kern_event.c
  1.197     +198 -121  src/sys/kern/vfs_aio.c
  1.33      +2 -2      src/sys/sys/event.h


More information about the cvs-all mailing list