Skip to content
  1. Sep 09, 2015
  2. Sep 08, 2015
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.3-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 4e4adb2f
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
        Stable patches:
         - Fix atomicity of pNFS commit list updates
         - Fix NFSv4 handling of open(O_CREAT|O_EXCL|O_RDONLY)
         - nfs_set_pgio_error sometimes misses errors
         - Fix a thinko in xs_connect()
         - Fix borkage in _same_data_server_addrs_locked()
         - Fix a NULL pointer dereference of migration recovery ops for v4.2
           client
         - Don't let the ctime override attribute barriers.
         - Revert "NFSv4: Remove incorrect check in can_open_delegated()"
         - Ensure flexfiles pNFS driver updates the inode after write finishes
         - flexfiles must not pollute the attribute cache with attrbutes from
           the DS
         - Fix a protocol error in layoutreturn
         - Fix a protocol issue with NFSv4.1 CLOSE stateids
      
        Bugfixes + cleanups
         - pNFS blocks bugfixes from Christoph
         - Various cleanups from Anna
         - More fixes for delegation corner cases
         - Don't fsync twice for O_SYNC/IS_SYNC files
         - Fix pNFS and flexfiles layoutstats bugs
         - pnfs/flexfiles: avoid duplicate tracking of mirror data
         - pnfs: Fix layoutget/layoutreturn/return-on-close serialisation
           issues
         - pnfs/flexfiles: error handling retries a layoutget before fallback
           to MDS
      
        Features:
         - Full support for the OPEN NFS4_CREATE_EXCLUSIVE4_1 mode from
           Kinglong
         - More RDMA client transport improvements from Chuck
         - Removal of the deprecated ib_reg_phys_mr() and ib_rereg_phys_mr()
           verbs from the SUNRPC, Lustre and core infiniband tree.
         - Optimise away the close-to-open getattr if there is no cached data"
      
      * tag 'nfs-for-4.3-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (108 commits)
        NFSv4: Respect the server imposed limit on how many changes we may cache
        NFSv4: Express delegation limit in units of pages
        Revert "NFS: Make close(2) asynchronous when closing NFS O_DIRECT files"
        NFS: Optimise away the close-to-open getattr if there is no cached data
        NFSv4.1/flexfiles: Clean up ff_layout_write_done_cb/ff_layout_commit_done_cb
        NFSv4.1/flexfiles: Mark the layout for return in ff_layout_io_track_ds_error()
        nfs: Remove unneeded checking of the return value from scnprintf
        nfs: Fix truncated client owner id without proto type
        NFSv4.1/flexfiles: Mark layout for return if the mirrors are invalid
        NFSv4.1/flexfiles: RW layouts are valid only if all mirrors are valid
        NFSv4.1/flexfiles: Fix incorrect usage of pnfs_generic_mark_devid_invalid()
        NFSv4.1/flexfiles: Fix freeing of mirrors
        NFSv4.1/pNFS: Don't request a minimal read layout beyond the end of file
        NFSv4.1/pnfs: Handle LAYOUTGET return values correctly
        NFSv4.1/pnfs: Don't ask for a read layout for an empty file.
        NFSv4.1: Fix a protocol issue with CLOSE stateids
        NFSv4.1/flexfiles: Don't mark the entire deviceid as bad for file errors
        SUNRPC: Prevent SYN+SYNACK+RST storms
        SUNRPC: xs_reset_transport must mark the connection as disconnected
        NFSv4.1/pnfs: Ensure layoutreturn reserves space for the opaque payload
        ...
      4e4adb2f
    • Linus Torvalds's avatar
      Merge tag 'xfs-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs · 77a78806
      Linus Torvalds authored
      Pull xfs updates from Dave Chinner:
       "There isn't a whole lot to this update - it's mostly bug fixes and
        they are spread pretty much all over XFS.  There are some corruption
        fixes, some fixes for log recovery, some fixes that prevent unount
        from hanging, a lockdep annotation rework for inode locking to prevent
        false positives and the usual random bunch of cleanups and minor
        improvements.
      
        Deatils:
      
         - large rework of EFI/EFD lifecycle handling to fix log recovery
           corruption issues, crashes and unmount hangs
      
         - separate metadata UUID on disk to enable changing boot label UUID
           for v5 filesystems
      
         - fixes for gcc miscompilation on certain platforms and optimisation
           levels
      
         - remote attribute allocation and recovery corruption fixes
      
         - inode lockdep annotation rework to fix bugs with too many
           subclasses
      
         - directory inode locking changes to prevent lockdep false positives
      
         - a handful of minor corruption fixes
      
         - various other small cleanups and bug fixes"
      
      * tag 'xfs-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs: (42 commits)
        xfs: fix error gotos in xfs_setattr_nonsize
        xfs: add mssing inode cache attempts counter increment
        xfs: return errors from partial I/O failures to files
        libxfs: bad magic number should set da block buffer error
        xfs: fix non-debug build warnings
        xfs: collapse allocsize and biosize mount option handling
        xfs: Fix file type directory corruption for btree directories
        xfs: lockdep annotations throw warnings on non-debug builds
        xfs: Fix uninitialized return value in xfs_alloc_fix_freelist()
        xfs: inode lockdep annotations broke non-lockdep build
        xfs: flush entire file on dio read/write to cached file
        xfs: Fix xfs_attr_leafblock definition
        libxfs: readahead of dir3 data blocks should use the read verifier
        xfs: stop holding ILOCK over filldir callbacks
        xfs: clean up inode lockdep annotations
        xfs: swap leaf buffer into path struct atomically during path shift
        xfs: relocate sparse inode mount warning
        xfs: dquots should be stamped with sb_meta_uuid
        xfs: log recovery needs to validate against sb_meta_uuid
        xfs: growfs not aware of sb_meta_uuid
        ...
      77a78806
    • Trond Myklebust's avatar
      NFSv4: Respect the server imposed limit on how many changes we may cache · 5445b1fb
      Trond Myklebust authored
      
      
      The NFSv4 delegation spec allows the server to tell a client to limit how
      much data it cache after the file is closed. In return, the server
      guarantees enough free space to avoid ENOSPC situations, etc.
      Prior to this patch, we assumed we could always cache aggressively after
      close. Unfortunately, this causes problems with servers that set the
      limit to 0 and therefore do not offer any ENOSPC guarantees.
      
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      5445b1fb