git: devfs - Fix a few more issues

Matthew Dillon dillon at
Sat Mar 17 19:49:32 PDT 2018

commit 62e9e4173da92227fd081dae1cb4bc2a8aaee176
Author: Matthew Dillon <dillon at>
Date:   Sat Mar 17 19:43:01 2018 -0700

    devfs - Fix a few more issues
    * Fix a devfs_freep() race.  VOP_RECLAIM generated by unrelated
      system load (such as a 'du' which causes vnodes to recycle quickly)
      can race a node teardown because devfs_freep() temporarily unlocks
      devfs_lock across a vnode op.
    * Instead of asserting, use the DEVFS_DESTROYED flag to check
      for the race.  The state will be stable for this particular race
      due to the vnode lock.
    Reported-by: multiple

Summary of changes:
 sys/sys/devfs.h             |  5 ++---
 sys/vfs/devfs/devfs_core.c  | 47 +++++++++++++++++++++++++--------------------
 sys/vfs/devfs/devfs_vnops.c |  2 +-
 3 files changed, 29 insertions(+), 25 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list