DragonFly BSD
DragonFly commits List (threaded) for 2012-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

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


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 16 Aug 2012 18:08:53 -0700 (PDT)

commit 44480e310a5e2fdec131e9154d62ac8fb0f011a9
Author: Matthew Dillon <dillon@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



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]