git: DragonFly_RELEASE_5_6 kernel - Fix dangling ref on fifo vnode

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


commit 39d3872fcede19b597f64ae175aaa1f4db5df885
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/39d3872fcede19b597f64ae175aaa1f4db5df885


-- 
DragonFly BSD source repository



More information about the Commits mailing list