cvs commit: src/sys/cam/scsi scsi_target.c src/sys/kern init_main.c kern_event.c kern_fork.c sys_pipe.c tty.c uipc_socket.c uipc_socket2.c vfs_aio.c vfs_subr.c src/sys/net bpf.c if.c src/sys/sys event.h mount.h vnode.h

Suleiman Souhlal ssouhlal at FreeBSD.org
Fri Jul 1 16:28:33 GMT 2005


ssouhlal    2005-07-01 16:28:32 UTC

  FreeBSD src repository

  Modified files:
    sys/cam/scsi         scsi_target.c 
    sys/kern             init_main.c kern_event.c kern_fork.c 
                         sys_pipe.c tty.c uipc_socket.c 
                         uipc_socket2.c vfs_aio.c vfs_subr.c 
    sys/net              bpf.c if.c 
    sys/sys              event.h mount.h vnode.h 
  Log:
  Fix the recent panics/LORs/hangs created by my kqueue commit by:
  
  - Introducing the possibility of using locks different than mutexes
  for the knlist locking. In order to do this, we add three arguments to
  knlist_init() to specify the functions to use to lock, unlock and
  check if the lock is owned. If these arguments are NULL, we assume
  mtx_lock, mtx_unlock and mtx_owned, respectively.
  
  - Using the vnode lock for the knlist locking, when doing kqueue operations
  on a vnode. This way, we don't have to lock the vnode while holding a
  mutex, in filt_vfsread.
  
  Reviewed by:    jmg
  Approved by:    re (scottl), scottl (mentor override)
  Pointyhat to:   ssouhlal
  Will be happy:  everyone
  
  Revision  Changes    Path
  1.67      +1 -1      src/sys/cam/scsi/scsi_target.c
  1.256     +1 -1      src/sys/kern/init_main.c
  1.93      +83 -28    src/sys/kern/kern_event.c
  1.252     +1 -1      src/sys/kern/kern_fork.c
  1.184     +4 -2      src/sys/kern/sys_pipe.c
  1.250     +2 -2      src/sys/kern/tty.c
  1.242     +4 -2      src/sys/kern/uipc_socket.c
  1.147     +4 -2      src/sys/kern/uipc_socket2.c
  1.195     +1 -1      src/sys/kern/vfs_aio.c
  1.634     +49 -23    src/sys/kern/vfs_subr.c
  1.153     +1 -1      src/sys/net/bpf.c
  1.234     +2 -2      src/sys/net/if.c
  1.32      +7 -2      src/sys/sys/event.h
  1.197     +9 -2      src/sys/sys/mount.h
  1.303     +3 -3      src/sys/sys/vnode.h


More information about the cvs-all mailing list