An error occurred fetching the project authors.
  1. 12 Apr, 2023 2 commits
  2. 12 Feb, 2023 6 commits
  3. 07 Jul, 2022 6 commits
  4. 21 Apr, 2022 1 commit
  5. 21 Mar, 2022 1 commit
  6. 22 Oct, 2021 2 commits
  7. 19 Oct, 2021 1 commit
    • Darrick J. Wong's avatar
      xfs: rename m_ag_maxlevels to m_allocbt_maxlevels · 7cb3efb4
      Darrick J. Wong authored
      Years ago when XFS was thought to be much more simple, we introduced
      m_ag_maxlevels to specify the maximum btree height of per-AG btrees for
      a given filesystem mount.  Then we observed that inode btrees don't
      actually have the same height and split that off; and now we have rmap
      and refcount btrees with much different geometries and separate
      maxlevels variables.
      
      The 'ag' part of the name doesn't make much sense anymore, so rename
      this to m_alloc_maxlevels to reinforce that this is the maximum height
      of the *free space* btrees.  This sets us up for the next patch, which
      will add a variable to track the maximum height of all AG btrees.
      
      (Also take the opportunity to improve adjacent comments and fix minor
      style problems.)
      Signed-off-by: default avatarDarrick J. Wong <djwong@kernel.org>
      Reviewed-by: default avatarDave Chinner <dchinner@redhat.com>
      7cb3efb4
  8. 19 Aug, 2021 3 commits
  9. 02 Jun, 2021 1 commit
  10. 23 Jan, 2021 1 commit
    • Chandan Babu R's avatar
      xfs: Introduce error injection to allocate only minlen size extents for files · 30151967
      Chandan Babu R authored
      This commit adds XFS_ERRTAG_BMAP_ALLOC_MINLEN_EXTENT error tag which
      helps userspace test programs to get xfs_bmap_btalloc() to always
      allocate minlen sized extents.
      
      This is required for test programs which need a guarantee that minlen
      extents allocated for a file do not get merged with their existing
      neighbours in the inode's BMBT. "Inode fork extent overflow check" for
      Directories, Xattrs and extension of realtime inodes need this since the
      file offset at which the extents are being allocated cannot be
      explicitly controlled from userspace.
      
      One way to use this error tag is to,
      1. Consume all of the free space by sequentially writing to a file.
      2. Punch alternate blocks of the file. This causes CNTBT to contain
         sufficient number of one block sized extent records.
      3. Inject XFS_ERRTAG_BMAP_ALLOC_MINLEN_EXTENT error tag.
      After step 3, xfs_bmap_btalloc() will issue space allocation
      requests for minlen sized extents only.
      
      ENOSPC error code is returned to userspace when there aren't any "one
      block sized" extents left in any of the AGs.
      Reviewed-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: default avatarChandan Babu R <chandanrlinux@gmail.com>
      Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
      30151967
  11. 13 May, 2020 1 commit
  12. 11 Mar, 2020 1 commit
  13. 03 Nov, 2019 2 commits
  14. 23 Sep, 2019 1 commit
  15. 31 Aug, 2019 1 commit
  16. 12 Dec, 2018 1 commit
  17. 12 Jul, 2018 1 commit
  18. 08 Jun, 2018 1 commit
  19. 06 Jun, 2018 1 commit
    • Dave Chinner's avatar
      xfs: convert to SPDX license tags · 0b61f8a4
      Dave Chinner authored
      Remove the verbose license text from XFS files and replace them
      with SPDX tags. This does not change the license of any of the code,
      merely refers to the common, up-to-date license files in LICENSES/
      
      This change was mostly scripted. fs/xfs/Makefile and
      fs/xfs/libxfs/xfs_fs.h were modified by hand, the rest were detected
      and modified by the following command:
      
      for f in `git grep -l "GNU General" fs/xfs/` ; do
      	echo $f
      	cat $f | awk -f hdr.awk > $f.new
      	mv -f $f.new $f
      done
      
      And the hdr.awk script that did the modification (including
      detecting the difference between GPL-2.0 and GPL-2.0+ licenses)
      is as follows:
      
      $ cat hdr.awk
      BEGIN {
      	hdr = 1.0
      	tag = "GPL-2.0"
      	str = ""
      }
      
      /^ \* This program is free software/ {
      	hdr = 2.0;
      	next
      }
      
      /any later version./ {
      	tag = "GPL-2.0+"
      	next
      }
      
      /^ \*\// {
      	if (hdr > 0.0) {
      		print "// SPDX-License-Identifier: " tag
      		print str
      		print $0
      		str=""
      		hdr = 0.0
      		next
      	}
      	print $0
      	next
      }
      
      /^ \* / {
      	if (hdr > 1.0)
      		next
      	if (hdr > 0.0) {
      		if (str != "")
      			str = str "\n"
      		str = str $0
      		next
      	}
      	print $0
      	next
      }
      
      /^ \*/ {
      	if (hdr > 0.0)
      		next
      	print $0
      	next
      }
      
      // {
      	if (hdr > 0.0) {
      		if (str != "")
      			str = str "\n"
      		str = str $0
      		next
      	}
      	print $0
      }
      
      END { }
      $
      Signed-off-by: default avatarDave Chinner <dchinner@redhat.com>
      Reviewed-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
      0b61f8a4
  20. 16 May, 2018 2 commits
  21. 10 May, 2018 1 commit
  22. 09 May, 2018 1 commit
  23. 09 Apr, 2018 1 commit
  24. 12 Mar, 2018 1 commit