git: kernel - Fix dangling ref on fifo vnode

Matthew Dillon dillon at crater.dragonflybsd.org
Wed Aug 21 10:21:27 PDT 2019


commit f9ad1101b0562c99b91008bf7012745e86f230c0
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Wed Aug 21 10:17:50 2019 -0700

    kernel - Fix dangling ref on fifo vnode
    
    * Fix dangling refs on the fifo vnode which prevent unmount from
      succeeding.
    
    * Fix open/close races which can occur during fifo open and close
      due to blocking conditions.  Use a lockmgr lock instead.
    
    * Retain use of vp->v_token to help interlock read, write, and
      ioctl operations.
    
    * This situation occurs when a filesystem fifo (aka via mkfifo)
      blocks on open() and is then interrupted.

Summary of changes:
 sys/vfs/fifofs/fifo_vnops.c | 212 ++++++++++++++++++++++++++++++++------------
 1 file changed, 155 insertions(+), 57 deletions(-)

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


-- 
DragonFly BSD source repository



More information about the Commits mailing list