git: kernel - Adjust UFS and HAMMER to use uiomovebp()

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Aug 16 18:08:53 PDT 2012


commit 44480e310a5e2fdec131e9154d62ac8fb0f011a9
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Aug 16 17:54:16 2012 -0700

    kernel - Adjust UFS and HAMMER to use uiomovebp()
    
    * Add uiomovebp(), a version of uiomove() which is aware of a locked bp
      representing the to or from buffer and can work-around issues related
      to VM faults causing recursions and deadlocks on the user buffer.
    
      uiomovebp() does not yet detect or handle deadlocks.  Implementing
      deadlock handling will require a certain degree of finess related to
      the vnode and bp locks and we don't want to have to do it unless we
      actually deadlock.  TODO.
    
    * Adjust UFS, HAMMER, TMPFS, MSDOSFS, NFS, NTFS to use uiomovebp().

Summary of changes:
 sys/kern/kern_subr.c            |   33 +++++++++++++++++++++++++++++++++
 sys/sys/uio.h                   |    3 +++
 sys/vfs/hammer/hammer_vnops.c   |    6 ++----
 sys/vfs/msdosfs/msdosfs_vnops.c |    4 ++--
 sys/vfs/nfs/nfs_bio.c           |    6 +++---
 sys/vfs/ntfs/ntfs_subr.c        |    4 ++--
 sys/vfs/ntfs/ntfs_vnops.c       |    2 +-
 sys/vfs/tmpfs/tmpfs_vnops.c     |    4 ++--
 sys/vfs/ufs/ufs_readwrite.c     |    4 ++--
 9 files changed, 50 insertions(+), 16 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/44480e310a5e2fdec131e9154d62ac8fb0f011a9


-- 
DragonFly BSD source repository





More information about the Commits mailing list