)]}'
{
  "log": [
    {
      "commit": "4bfc773dea23bc845fb48159a1a5e873d241d593",
      "tree": "9c135a1361be74c892b50abd4fa6404dc25fae0f",
      "parents": [
        "4f35436ef1b45d3233a90223b2d32d9a6c8d0a16"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 26 19:50:56 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 26 19:50:56 2018 -0600"
      },
      "message": "xfsprogs: Release v4.15.1\n    \nUpdate all the necessary files for a 4.15.1 release.\n    \nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "4f35436ef1b45d3233a90223b2d32d9a6c8d0a16",
      "tree": "cf365d3f63f140523c324f04140f6a339cbcddfc",
      "parents": [
        "37c528caf8e50e017417fea44df57ec152aa4f7e"
      ],
      "author": {
        "name": "Jakub Bogusz",
        "email": "qboosh@pld-linux.org",
        "time": "Mon Feb 26 19:44:01 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 26 19:44:01 2018 -0600"
      },
      "message": "po/pl.po: update Polish translation for 4.15.0\n\nPolish translation update for xfsprogs 4.15.0\n\nSigned-off-by: Jakub Bogusz \u003cqboosh@pld-linux.org\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "37c528caf8e50e017417fea44df57ec152aa4f7e",
      "tree": "e3e6bd1b3e728a4f36695a44eb5936a815d3ad95",
      "parents": [
        "638c642d509e7fcfc2f5ead699b080a48280575e"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 26 19:43:58 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 26 19:43:58 2018 -0600"
      },
      "message": "debian: don\u0027t fail postinst when upgrading chroot\n\nIf we\u0027re upgrading a systemd-enabled chroot we\u0027ll fail because systemctl\ncan\u0027t connect to a running systemd (nor should it).  We don\u0027t need to\nissue daemon-reload inside a chroot that doesn\u0027t have a running systemd,\nso we can ignore the return value.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Nathan Scott \u003cnathans@debian.org\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "638c642d509e7fcfc2f5ead699b080a48280575e",
      "tree": "0317ba0193e4d5547f0d78e198b19432f687ea5c",
      "parents": [
        "bc95a6f5bd99e2ccc1a450fa65e857f9d78bfa5c"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 26 19:43:58 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 26 19:43:58 2018 -0600"
      },
      "message": "debian: add build-depends on pkg-config\n\nSince the configure scripts now depend on pkg-config to autodetect where\nsystemd service files go, we need to list pkg-config as a build\ndependency.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "bc95a6f5bd99e2ccc1a450fa65e857f9d78bfa5c",
      "tree": "d792052b643405f7cfcc32be29b1fd5d0e3aa8c2",
      "parents": [
        "9393ba67e934e7780908b59ead3a69a280b93793"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:09:31 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:09:31 2018 -0600"
      },
      "message": "xfsprogs: Release v4.15.0\n    \nUpdate all the necessary files for a 4.15.0 release.\n    \nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "9393ba67e934e7780908b59ead3a69a280b93793",
      "tree": "b62dcf181229a5673edb82891a7bd291f8b057fb",
      "parents": [
        "9ae168bb755ae62ff388fceab6ab867434e0df7b"
      ],
      "author": {
        "name": "Nathan Scott",
        "email": "nathans@debian.org",
        "time": "Fri Feb 23 13:05:20 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:05:20 2018 -0600"
      },
      "message": "Fix spelling mistake in mkfs lazy superblock diagnostic\n\nSigned-off-by: \u003cnathans@debian.org\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "9ae168bb755ae62ff388fceab6ab867434e0df7b",
      "tree": "9bae88bd1c628ff118f9b85ef062fc1daca67619",
      "parents": [
        "c448626f43780bf0f3b53248fea93e8b6e01c5ad"
      ],
      "author": {
        "name": "Nathan Scott",
        "email": "nathans@debian.org",
        "time": "Fri Feb 23 13:05:17 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:05:17 2018 -0600"
      },
      "message": "Fix grammar and spelling in strings and man pages\n\nSigned-off-by: Nathan Scott \u003cnathans@debian.org\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "c448626f43780bf0f3b53248fea93e8b6e01c5ad",
      "tree": "ad80ad6b7961f094639c258c51446e30ce206615",
      "parents": [
        "e3e429bb5192df5c835f8812596e23673673ecc1"
      ],
      "author": {
        "name": "Nathan Scott",
        "email": "nathans@debian.org",
        "time": "Fri Feb 23 13:05:15 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:05:15 2018 -0600"
      },
      "message": "Add xfs_scrub_fail systemd service file docs entry\n\nSigned-off-by: Nathan Scott \u003cnathans@debian.org\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "e3e429bb5192df5c835f8812596e23673673ecc1",
      "tree": "d332b0e26e74f3b73b106b3c434844a32bde9c66",
      "parents": [
        "ec1cf08dbeb2d687ea84539478b9385191efdfea"
      ],
      "author": {
        "name": "Nathan Scott",
        "email": "nathans@debian.org",
        "time": "Fri Feb 23 13:05:13 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:05:13 2018 -0600"
      },
      "message": "Update .gitignore list for generated scrub cron file\n\nSigned-off-by: Nathan Scott \u003cnathans@debian.org\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "ec1cf08dbeb2d687ea84539478b9385191efdfea",
      "tree": "9a204155385e552d265c6848e277eb2523c8d0b2",
      "parents": [
        "a753d26fbf735353c2a2c0e03d02dad87cab543f"
      ],
      "author": {
        "name": "Nathan Scott",
        "email": "nathans@debian.org",
        "time": "Fri Feb 23 13:05:07 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 23 13:05:07 2018 -0600"
      },
      "message": "Several updates to use more modern Debian packaging\n\nSwitch to Debian packaging features available in more\nrecent years to resolve some long-standing issues.\n\nIn particular, using the quilt format gives non-native\npackage builds finally, while keeping the ability for\ndevelopers to do upstream deb builds.  Also split the\nbinary-arch and binary-indep debian/rules targets as\nis now mandated, and update to latest standard version.\nMark a bunch of long-resolved bugs as fixed in the deb\nchangelog so they are automatically closed by the next\nupdate.\n\nSigned-off-by: Nathan Scott \u003cnathans@debian.org\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "a753d26fbf735353c2a2c0e03d02dad87cab543f",
      "tree": "6493e02c81dd8961368d95e171cfcf61d860e30c",
      "parents": [
        "5454c2bfb6f0228b836ed386507485624756bf8b"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Tue Feb 13 13:57:05 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Tue Feb 13 13:57:05 2018 -0600"
      },
      "message": "xfsprogs: Release v4.15.0-rc1\n    \nUpdate all the necessary files for a 4.15.0-rc1 release.\n    \nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "5454c2bfb6f0228b836ed386507485624756bf8b",
      "tree": "c054daddc7f2b92baeb7c5ab6adf8f92c905c2e1",
      "parents": [
        "2e4959c1c632c5faf5efff445429d3a4a5089f27"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Tue Feb 13 13:46:42 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Tue Feb 13 13:46:42 2018 -0600"
      },
      "message": "xfs_scrub: refactor outcome display into a separate helper\n\nMove all the printing of the scrub outcome into a separate helper to\ndeclutter the main function.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\n[sandeen: put \"Unmount ...\" on its own line]\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "2e4959c1c632c5faf5efff445429d3a4a5089f27",
      "tree": "287e2a99fdf67117cb536d86f07ed838a7516625",
      "parents": [
        "bb5dbd06b7265fbc56711f37db70e72a6fd854bf"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 12 15:47:56 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 12 15:47:56 2018 -0600"
      },
      "message": "xfs_scrub: always init phase information\n\nMake sure we initialize the overall phase state before we start\nexecuting any code that can end up in the report-status-and-exit paths.\nOtherwise if debugging is turned on we get garbage io/cpu stat reports.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "bb5dbd06b7265fbc56711f37db70e72a6fd854bf",
      "tree": "208f1a1bc8686abaf05c27812aa6933909fbaeee",
      "parents": [
        "82377bde20e9d52b167d8517d68423ccf47a9ebc"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 12 15:47:54 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 12 15:47:54 2018 -0600"
      },
      "message": "xfs_scrub: reclassify some of the warning messages\n\nSome of the warning messages are actually runtime errors in optional\ncomponents, so turn them into informational messages.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "82377bde20e9d52b167d8517d68423ccf47a9ebc",
      "tree": "9cda5b5810ca978059c22657ce324294755ff7fd",
      "parents": [
        "1df93c8d953fd736cbc6f4b62399cd5a1ab1fcc0"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 12 15:47:52 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 12 15:47:52 2018 -0600"
      },
      "message": "xfs_scrub: reclassify runtime errors\n\nIf the program encounters runtime errors, these should be noted as\ninformation.  Because these errors abort the execution flow (which is\ncounted as a runtime error), we need only call str_info to log the\nevent.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "1df93c8d953fd736cbc6f4b62399cd5a1ab1fcc0",
      "tree": "9401901c5a032e619fb2f50342088f85832b9f10",
      "parents": [
        "1658224d2b5dfb003b336a70adb6b729304973c2"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 12 15:47:50 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 12 15:47:50 2018 -0600"
      },
      "message": "xfs_scrub: classify lack of ioctl support as a runtime error\n\nIf the kernel doesn\u0027t have the SCRUB_METADATA ioctl that\u0027s a runtime\nerror, not a fs error.  Account it as such.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "1658224d2b5dfb003b336a70adb6b729304973c2",
      "tree": "132b7f0117c47a9005f48dec8da989dcbfad8934",
      "parents": [
        "d789af70600f1c494aac9e2edbd8baff002d249d"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 12 15:47:40 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 12 15:47:40 2018 -0600"
      },
      "message": "xfs_scrub: remove preen mode\n\nWhile it\u0027s true that the kernel can tell us whether something needs\nrepairs or it needs optimizing, from the admin\u0027s perspective there\u0027s\nno point in having an optimize-only mode -- either fix everything, or\ndon\u0027t.  This is what xfs_repair does w.r.t. -n, so let\u0027s do the same\nthing too.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "d789af70600f1c494aac9e2edbd8baff002d249d",
      "tree": "8434a17286b157a18dbc0775f6d0825bd4195e21",
      "parents": [
        "720eec0f83c4adce70629d5d0f217595fa4b1f31"
      ],
      "author": {
        "name": "Marco Benatto",
        "email": "marco.antonio.780@gmail.com",
        "time": "Mon Feb 05 14:43:02 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 05 14:43:02 2018 -0600"
      },
      "message": "xfs_mdrestore: Don\u0027t rewind source file stream\n\nToday, xfs_mdrestore from stdin will fail if the -i flag is\nspecified, because it attempts to rewind the stream after\nthe initial read of the metablock.  This fails, and\nresults in an abort with \"specified file is not a metadata\ndump.\"\n\nRead the metablock exactly once in main(), validate the magic,\nprint informational flags if requested, and then pass it to\nperform_restore() which will then continue the restore process.\n\nReported-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Marco A Benatto \u003cmarco.antonio.780@gmail.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "720eec0f83c4adce70629d5d0f217595fa4b1f31",
      "tree": "9e51b928988f5d2ac5bbd5be482274ab65f7d6d8",
      "parents": [
        "8041435de7ed028a27ecca64302945ad455c69a6"
      ],
      "author": {
        "name": "Marco Benatto",
        "email": "marco.antonio.780@gmail.com",
        "time": "Mon Feb 05 14:41:24 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 05 14:41:24 2018 -0600"
      },
      "message": "xfs_mdrestore: Add -i option to built-in help\n\nCurrently we are missing -i option from usage().\nThis patch adds it to this biult-in help.\n\nSigned-off-by: Marco A Benatto \u003cmarco.antonio.780@gmail.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "8041435de7ed028a27ecca64302945ad455c69a6",
      "tree": "d2739bc7d2042a52b7450195473a67c9392d753b",
      "parents": [
        "33a503423d5fa11316aeb71b6e136aa3583df38d"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 05 14:38:02 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 05 14:38:02 2018 -0600"
      },
      "message": "xfs_io: fix copy_file_range symbol name collision\n\nglibc 2.27 has a copy_file_range wrapper, so we need to change our\ninternal function out of the way to avoid compiler warnings.\n\nReported-by: fredrik@crux.nu\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "33a503423d5fa11316aeb71b6e136aa3583df38d",
      "tree": "672577bf3d4beeddf017c2a06a0c81f91a3e280f",
      "parents": [
        "e91c285f92cc1028f17833f9773ddc5c9905c804"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 05 14:37:49 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 05 14:37:49 2018 -0600"
      },
      "message": "xfs_scrub: kill dead code\n\nWe can\u0027t reach the return mess at the bottom of __xfs_scrub_test so get\nrid of it.\n\nFixes-coverity-id: 1428798\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "e91c285f92cc1028f17833f9773ddc5c9905c804",
      "tree": "d15dc4f3198b61691314aec301e467c79710c3b1",
      "parents": [
        "bfa66ecdb675afbf00d48c70cf5d53af383f27f0"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 05 14:37:42 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 05 14:37:42 2018 -0600"
      },
      "message": "xfs_scrub: close dir_fd if we don\u0027t get a DIR pointer\n\nIf we don\u0027t get a directory pointer, close dir_fd before jumping out.\n\nFixes-coverity-id: 1428799\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "bfa66ecdb675afbf00d48c70cf5d53af383f27f0",
      "tree": "ed8f6dd266582f6c7d2fdf419e3f7f54437e5e63",
      "parents": [
        "ffdd27262e488e9b536d1934f78d751b2938320e"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Mon Feb 05 14:37:35 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Mon Feb 05 14:37:35 2018 -0600"
      },
      "message": "mkfs: don\u0027t create realtime filesystems with reflink enabled\n\nWe don\u0027t support reflink on the realtime device, so don\u0027t let people\ncreate such things.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "ffdd27262e488e9b536d1934f78d751b2938320e",
      "tree": "cc3a687534a1a0e91fc8f2690acef8045d5461dd",
      "parents": [
        "19852474813fa039f7b2d952ff421f2eb2d3f06d"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:47 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:47 2018 -0600"
      },
      "message": "xfs_scrub: handle scrub-only kernels more helpfully\n\nIf xfs_scrub is run today against a 4.15 kernel, it fails with\n\nEXPERIMENTAL xfs_scrub program in use! Use at your own risk!\nError: /home: Kernel metadata optimization facility is required.\nInfo: /home: Scrub aborted after phase 1.\n/home: 2 errors found.\n\nBe a bit kinder to the user and suggest a path forward.  By the\ntime we fail for missing preen or repair functionality, we do\nknow that scrub is available, so suggest it.\n\nFurther, rather than stating what is required, state what was not\nfound ... we\u0027re failing, so state what was missing, vs. what is\nrequired - seems a bit more definitive.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Bill O\u0027Donnell \u003cbillodo@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "19852474813fa039f7b2d952ff421f2eb2d3f06d",
      "tree": "84a70b36b8324ebf21768b6fdba1c8d0f3aa32dc",
      "parents": [
        "5c7826c1aec6a0dfe2f714b7b4d92f4c623a864f"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:47 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:47 2018 -0600"
      },
      "message": "xfs_scrub: wire up repair ioctl\n\nCreate the mechanism we need to actually call the kernel\u0027s online repair\nfunctionality.  The interface will consume a repair description; the\ndescriptor management will follow in the next patch.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "5c7826c1aec6a0dfe2f714b7b4d92f4c623a864f",
      "tree": "c9b5171dc093930a02744989e848150ce0b83962",
      "parents": [
        "824b5807fb1e1a0e156b183a591f23b096c8868f"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:47 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:47 2018 -0600"
      },
      "message": "debian/control: remove nonexistent libreadline5-dev build dependency\n\nlibreadline5-dev hasn\u0027t existed as a package for quite some time now;\neven Debian \"oldoldstable\" doesn\u0027t know what that is.  Drop it in favor\nof libreadline-gplv2-dev.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "824b5807fb1e1a0e156b183a591f23b096c8868f",
      "tree": "7c9942733c10e2e49f775cb3957d732f8477efb6",
      "parents": [
        "f1dca11cad13086a30df05bed57b600abf06374d"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: integrate services with systemd\n\nCreate a systemd service unit so that we can run the online scrubber\nunder systemd with (somewhat) appropriate containment.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "f1dca11cad13086a30df05bed57b600abf06374d",
      "tree": "ece356e6f14c7aa65d888901f88c205c0cf67e56",
      "parents": [
        "ed60d2102c0f5a151756a7b68275c33dad517691"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: create a script to scrub all xfs filesystems\n\nCreate an xfs_scrub_all command to find all XFS filesystems\nand run an online scrub against them all.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "ed60d2102c0f5a151756a7b68275c33dad517691",
      "tree": "b0d7e666fce99fb8ec1c42ff87d4eaaff0571375",
      "parents": [
        "7e36bc0fa8ad5a4aef21b7c1ca8bc2b52b5d0dd5"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: progress indicator\n\nImplement a progress indicator.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "7e36bc0fa8ad5a4aef21b7c1ca8bc2b52b5d0dd5",
      "tree": "cd7ac4c21969dc8dd87ae7c2b9ae97d70f6b7ed8",
      "parents": [
        "698c6c7cb8ba7572f79fa1c8a21dec4300cfc28e"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: fstrim the free areas if there are no errors on the filesystem\n\nIf the filesystem scan comes out clean or fixes all the problems, call\nfstrim to clean out the free areas (if it\u0027s an ssd/thinp/whatever).\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "698c6c7cb8ba7572f79fa1c8a21dec4300cfc28e",
      "tree": "859f11630e26119f2fb85905dbdbd4aaed851ba2",
      "parents": [
        "03c0cd8ffaed63b31f50698c4d9d1cb75c14d47b"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: check summary counters\n\nMake sure the filesystem summary counters are somewhat close to what\nwe can find by scanning the filesystem.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "03c0cd8ffaed63b31f50698c4d9d1cb75c14d47b",
      "tree": "2013efa9dfc7504de9320c07b7473daf91a069e9",
      "parents": [
        "b364a9c008fc049089844ec137225e1025ad7955"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: optionally use SCSI READ VERIFY commands to scrub data blocks on disk\n\nIf we sense that we\u0027re talking to a raw SCSI disk, use the SCSI READ\nVERIFY command to ask the disk to verify a disk internally.  This can\nsharply reduce the runtime of the data block verification phase on\ndevices whose internal bandwidth exceeds their link bandwidth.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "b364a9c008fc049089844ec137225e1025ad7955",
      "tree": "9f267b731887c81e68e63d5453f28e724997b344",
      "parents": [
        "2000470d5376e41524efb4a50de970627866d417"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: scrub file data blocks\n\nRead all data blocks from the disk, hoping to catch IO errors.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "2000470d5376e41524efb4a50de970627866d417",
      "tree": "7e7ed79bb47132a2424a7b5aaec5e1c2106fdccc",
      "parents": [
        "0cf6f68627469fcdab0756e668f5d15d6fab6ccd"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: create infrastructure to read verify data blocks\n\nManage the scheduling, issuance, and reporting of data block\nverification reads.  This enables us to combine adjacent (or nearly\nadjacent) read requests, and to take advantage of high-IOPS devices by\nissuing IO from multiple threads.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "0cf6f68627469fcdab0756e668f5d15d6fab6ccd",
      "tree": "7128d991f8485d70be5e1a7f4471d7e2ace873b3",
      "parents": [
        "4bbed4ecc2af9e9bff1764ec8e737418cf644aab"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: create a bitmap data structure\n\nCreate an efficient tree-based bitmap data structure.  We will use this\nduring the data block scan to record the LBAs of IO errors so that we\ncan report broken files to userspace.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "4bbed4ecc2af9e9bff1764ec8e737418cf644aab",
      "tree": "55055189e1ed0c3d3351bae7a0c766a3fe144033",
      "parents": [
        "396cd0223598bb11a73d49fbd2fb64d1b8d4e354"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: warn about normalized Unicode name collisions\n\nIterate all directory and xattr names to look for name collisions\namongst Unicode normalized names.  This is generally a sign of buggy\nprograms or malicious duplicate files.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "396cd0223598bb11a73d49fbd2fb64d1b8d4e354",
      "tree": "b0ce34b363fccf773d6b1df302d3649e130149c7",
      "parents": [
        "c4892e766914ab1ea36ae93cc310eebec9f1d524"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: warn about suspicious characters in directory/xattr names\n\nLook for control characters and punctuation that interfere with shell\nglobbing in directory entry names and extended attribute key names.\nTechnically these aren\u0027t filesystem corruptions because names are\narbitrary sequences of bytes, but they\u0027ve been known to cause problems\nin the Unix environment so warn if we see them.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "c4892e766914ab1ea36ae93cc310eebec9f1d524",
      "tree": "c4bb1678a159e7498402db89dbe37ed58f1fd959",
      "parents": [
        "fa16b376a47a4a468c378ae95e7775cbe6c9cb98"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: check directory connectivity\n\nOpening directories by file handle will cause the kernel to perform\nparent lookups all the way to the root directory.  Take advantage of\nthis to ensure that directories actually connect to the root.  Some\nday we\u0027ll have parent pointers and can make this more comprehensive.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "fa16b376a47a4a468c378ae95e7775cbe6c9cb98",
      "tree": "9834b0a9f2880660ef1e7060e66ee3b67c690221",
      "parents": [
        "d11cc69eb14eea967463d6f76a4f55b09598fa7e"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: scan inodes\n\nScan all the inodes in the system for problems.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "d11cc69eb14eea967463d6f76a4f55b09598fa7e",
      "tree": "6f201a59b6232d9b1551b99ae97408e279b04715",
      "parents": [
        "e758ad0198760fcb4daaf3560feb7292d314b344"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: thread-safe stats counter\n\nCreate a threaded stats counter that we\u0027ll use to track scan progress.\nThis includes things like how much of the disk blocks we\u0027ve scanned,\nor later how much progress we\u0027ve made in each phase.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "e758ad0198760fcb4daaf3560feb7292d314b344",
      "tree": "a1109320e293f5502137e6f623237f96db7045f2",
      "parents": [
        "fd7d73c0c4643496e3cc4f1aedd14689a4d57200"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: scan filesystem and AG metadata\n\nScrub the filesystem and per-AG metadata.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "fd7d73c0c4643496e3cc4f1aedd14689a4d57200",
      "tree": "c9033747a437163f15af17745e85e5e212758996",
      "parents": [
        "604dd3345f350379ded09d4a2218f4478844f245"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: wrap the scrub ioctl\n\nCreate some wrappers to call the scrub ioctls.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "604dd3345f350379ded09d4a2218f4478844f245",
      "tree": "41831efdd3da2f5cfabcc127adaea655cb01419f",
      "parents": [
        "c6eb0ff20c2a9e115d52a7a98b53984944c43829"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:46 2018 -0600"
      },
      "message": "xfs_scrub: filesystem counter collection functions\n\nAdd a couple of helper functions to estimate the inode and block\ncounters on the filesystem.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "c6eb0ff20c2a9e115d52a7a98b53984944c43829",
      "tree": "ab2798c15f4d83667b33efca2a827ee3557f36b5",
      "parents": [
        "bc94c5d69e14bbe6e2b4fd74e2ef8b2ef66ccedc"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: add file space map iteration functions\n\nThese helpers enable userspace to iterate all the space map information\nfor a file.  The iteration function uses GETBMAPX.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "bc94c5d69e14bbe6e2b4fd74e2ef8b2ef66ccedc",
      "tree": "da4129cf5b4e2adc6875abf98067248e1e548767",
      "parents": [
        "372d4ba99155b2432dee293431f15b0df2f9e4b0"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: add space map iteration functions\n\nThese helpers enable userspace to iterate all the space map information\nin a filesystem.  The iteration function uses GETFSMAP.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "372d4ba99155b2432dee293431f15b0df2f9e4b0",
      "tree": "d6e0e0aae762f8f1cefe95e145b2343585b95014",
      "parents": [
        "50a573a72917dd093b68c618bb0253a9a49fe50b"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: add inode iteration functions\n\nThese helpers enable userspace to count or iterate all inodes in a\nfilesystem.  The counting function uses INUMBERS, while the inode\niterator uses INUMBERS and BULKSTAT to iterate over every inode that\nshould be in the filesystem.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "50a573a72917dd093b68c618bb0253a9a49fe50b",
      "tree": "a8d0422a4ebb4cf9a9198d0dd848c7cba67fbb5c",
      "parents": [
        "a555a1f410f99a68660e81ccc861d1a05d190981"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: find XFS filesystem geometry\n\nDiscover the geometry of the XFS filesystem that we\u0027ve been told to\nscan, and set up some common functions that will be used by the\nscrub phases.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "a555a1f410f99a68660e81ccc861d1a05d190981",
      "tree": "14f0aedd18d13c9867fc71ddcf918fe990bdc44a",
      "parents": [
        "e031d90f536d192cb9206cbc55222beeca68d057"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: create an abstraction for a block device\n\nCreate an abstraction to handle all of our low level disk operations.\nWe\u0027ll eventually use it to bind to a fs mount point and block device.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "e031d90f536d192cb9206cbc55222beeca68d057",
      "tree": "ac0416786a456a02a1518062ee55b04fcaa34257",
      "parents": [
        "173a02839e85915bd4feca0170fd6a0ca87d3bb9"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: figure out how many threads we\u0027re going to need\n\nCreate the plumbing to figure out how many threads we\u0027re going to want\nto do all of our scrubbing.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "173a02839e85915bd4feca0170fd6a0ca87d3bb9",
      "tree": "1430dd7e235d522e8d048951ddad308c7ac0ced6",
      "parents": [
        "828105d1922556ce8e9d31cc2693ed88ebf5f87c"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: dispatch the various phases of the scrub program\n\nCreate the dispatching routines that we\u0027ll use to call out to each\nseparate phase of the program.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "828105d1922556ce8e9d31cc2693ed88ebf5f87c",
      "tree": "4633e6d19a2c93be8f7f8e03f2e2102222132e2c",
      "parents": [
        "f0585fce2320152445ac7896e0b8545a50bb9d18"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: set up command line argument parsing\n\nParse command line options in order to set up the context in which we\nwill scrub the filesystem.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "f0585fce2320152445ac7896e0b8545a50bb9d18",
      "tree": "d37643e4b69db2cbf529f3097b27ea9387648eb7",
      "parents": [
        "95b1e5059176245137406e14e4cd2ecca3c493d1"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: common error handling\n\nStandardize how we record and report errors.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "95b1e5059176245137406e14e4cd2ecca3c493d1",
      "tree": "d7434cf9929e33a804b0d699ee17f205783e9839",
      "parents": [
        "16adcb8831cf75d405ab8f4b581e70af79f4dba8"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "xfs_scrub: create online filesystem scrub program\n\nCreate the foundations of a filesystem scrubbing tool that asks the\nkernel to inspect all metadata in the filesystem and (ultimately) to\nrepair anything that\u0027s broken.  Also create the man page for the\nutility.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "16adcb8831cf75d405ab8f4b581e70af79f4dba8",
      "tree": "35d17db3a1eb666dd657ed980d36b85db2a117a9",
      "parents": [
        "7d25f65f268565c07ef094ff7d25fb5a36cd3b9d"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:45 2018 -0600"
      },
      "message": "mkfs: more sunit/swidth sanity checking\n\nThis fixes 2 issues with stripe geometry validation.\n\n# mkfs.xfs -d sunit\u003d64,swidth\u003d0 ...\nboth data sunit and data swidth options must be specified\n\nBut I did specify it, I specified 0!\n\nSo use cli_opt_set() to detect that it was specified.\n\nBut we can\u0027t allow the above configuration (in fact it causes\na % 0 later in mkfs), so catch it in the \"swidth must be a\nmultiple of sunit\" test a bit further down.\n\n(sunit\u003d0,swidth\u003d0 /is/ valid, it\u0027s used to override disk\ngeometry if desired.)\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "7d25f65f268565c07ef094ff7d25fb5a36cd3b9d",
      "tree": "55ee8a5ea4fcc51c3cb8e2d01852e03bf0684c88",
      "parents": [
        "0b1cf8bbf576c0e9a7e7fc38e2c1897376ec2056"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "message": "mkfs: always explain why numeric inputs are invalid\n\nAlways explain why invalid numeric inputs are not valid, and in a\ncomplete sentence since that\u0027s what illegal_optio() sets us up for.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "0b1cf8bbf576c0e9a7e7fc38e2c1897376ec2056",
      "tree": "7f356f36c720a9f6fd2454a2280958589d95ceab",
      "parents": [
        "91c7d131631626eb701b149104aceae10ff1cb45"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "message": "mkfs: don\u0027t call values \u0027illegal\u0027, they\u0027re invalid\n\nSpecifying invalid inputs to mkfs does not break any (reasonable) laws,\nso the error message should complain about invalid inputs.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "91c7d131631626eb701b149104aceae10ff1cb45",
      "tree": "303d892c5a36b1bf9e597e51f995ad6e8cac0d63",
      "parents": [
        "25f9772ab25ae1e35869ed71ecea951792e3fa10"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "message": "mkfs: don\u0027t crash on dswidth overflow\n\nI ran mkfs.xfs -d su\u003d1048576,sw\u003d$((18 * 1048576)), forgetting that sw\ntakes a multiple of su (unlike swidth which takes any space unit).  I\nwas surprised when we hit a floating point exception, which I traced\nback to an integer overflow when we calculate swidth from dsw.\n\nSo, do the 64-bit multiplication so we can detect the overflow and\ncomplain about it.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "25f9772ab25ae1e35869ed71ecea951792e3fa10",
      "tree": "6114dc77e0d3d588daceeb3aec6b0f69f66b985e",
      "parents": [
        "ba795fb147cb7b702dc03df7bf7f1938cb636d8f"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "message": "misc: ubsan fixes\n\nFix a few things the undefined behavior sanitizer complained about.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "ba795fb147cb7b702dc03df7bf7f1938cb636d8f",
      "tree": "d9083db96f8a090e4dc0faf9d66dfa7d04df5668",
      "parents": [
        "50663dc149619aef23bcb43e6fdf48bc60487374"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Fri Feb 02 09:32:43 2018 -0600"
      },
      "message": "xfs_db: interpret inode timestamps as signed integers\n\nThe Linux kernel treats core.*time.sec as a signed integer value, so\nxfs_db should do likewise, or else files will have inconsistent times\nif the seconds count is negative.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "50663dc149619aef23bcb43e6fdf48bc60487374",
      "tree": "62f05e67be87456a18ddc0bd2b7a328ce2a38331",
      "parents": [
        "d0ca5d8a3875a423b522ee9767cbeb3d47bed420"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "message": "xfsprogs: update dead urls\n\nSince oss.sgi.com is dead and xfs.org is slowly migrating to\nxfs.wiki.kernel.org, update all the documentation links to point to the\ncurrent landing pads.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "d0ca5d8a3875a423b522ee9767cbeb3d47bed420",
      "tree": "488c3a28ca68b93995f99726568144511c5d7d58",
      "parents": [
        "12f365e22389e494b9be6cdf1382327b1d1b64ed"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "message": "xfs_copy: accept CRC version of ABTB_MAGIC in ASSERT\n\nNot sure how this was missed for so long, but to handle CRC\nfilesystems, this ASSERT on block magic must accept CRC magic\nas well.\n\nReported-by: Radek Burkat \u003cradek@pinkbike.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Bill O\u0027Donnell \u003cbillodo@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "12f365e22389e494b9be6cdf1382327b1d1b64ed",
      "tree": "9844d3e36e48c618b106f0434fc5c08cc92c115d",
      "parents": [
        "a1c5615eecf3ca4bcd7442326c228b349ee2fd79"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "message": "xfs_logprint: fix v3 inode formatting\n\nLine up flags2/cowextsize line with all the others, using\ntabs.\n\nFixes: 1fe708d60 (\"xfs_logprint: support cowextsize reporting in log contents\")\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "a1c5615eecf3ca4bcd7442326c228b349ee2fd79",
      "tree": "64455a2bf24118bd08ec6d47f32180fc2ecdd67f",
      "parents": [
        "67d72279e8afe56882c4f7453ecb5674fb0b5885"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:55:01 2018 -0600"
      },
      "message": "libxfs: use a memory zone for log items\n\nIn addition to more closely matching the kernel, this will\nhelp us catch any leaks from these allocations.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "67d72279e8afe56882c4f7453ecb5674fb0b5885",
      "tree": "9c8dab9297ae55fdec6a381b0debd1e5c306bb74",
      "parents": [
        "2e2caf7d6d284bfda8d3057720d83884880a2753"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "message": "libxfs: use a memory zone for transactions\n\nIn addition to more closely matching the kernel, this will\nhelp us catch any leaks from these allocations.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "2e2caf7d6d284bfda8d3057720d83884880a2753",
      "tree": "052a7be2e1c5a387eb08a6c72286af59d2c9b591",
      "parents": [
        "cfc06b60b832032a49f596b6b59449353bdcd088"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "message": "libxfs: remove unused buf_fsprivate3\n\nThe buf_fsprivate3 field has no actual use, other than a pointless\n\"if it\u0027s not set, set it\" in xfs_buf_item_init; nobody cares after\nthat.  Remove it.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "cfc06b60b832032a49f596b6b59449353bdcd088",
      "tree": "ebbe033a9afca03aab14f09536e3bb412b03b45e",
      "parents": [
        "38d096b69aeb452c340165aef4e4ff6c63a0387c"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "message": "xfs: add a proper transaction pointer to struct xfs_buf\n\nSource kernel commit bf9d9013a2a559858efb590bf922377be9d6d969\n\nReplace the typeless b_fspriv2 and the ugly macros around it with a properly\ntyped transaction pointer.  As a fallout the log buffer state debug checks\nare also removed.  We could have kept them using casts, but as they do\nnot have a real purpose we can as well just remove them.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "38d096b69aeb452c340165aef4e4ff6c63a0387c",
      "tree": "147bc7a782dba762107745d618ec2261b568f259",
      "parents": [
        "128491c39f86fe0eb6ff7e99e3d1241a9555e865"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 25 13:54:51 2018 -0600"
      },
      "message": "xfs: remove wrappers around b_fspriv\n\nSource kernel commit adadbeefb34f755a3477da51035eeeec2c1fde38\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Alex Elder \u003caelder@sgi.com\u003e\nReviewed-by: Dave Chinner \u003cdchinner@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "128491c39f86fe0eb6ff7e99e3d1241a9555e865",
      "tree": "99b6d04f3ab5d216137443498f125ee51c577874",
      "parents": [
        "532d03d551ffc70644832cb4f9a64b941e148f56"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Thu Jan 04 13:59:53 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:59:53 2018 -0600"
      },
      "message": "find-api-violations: fix a broken grep pattern\n\nOne of the grep patterns in find-api-violations is mistaken for a\n(broken) range specifier when LC_ALL\u003dC, so fix it to work properly.\nThis was found by wiring up the script to xfstests.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "532d03d551ffc70644832cb4f9a64b941e148f56",
      "tree": "74018de77c71d70adaebf9a2c09816d823e5a464",
      "parents": [
        "945e47e2fcc5d1cec693122286da06d8ab829c52"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Thu Jan 04 13:58:53 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:53 2018 -0600"
      },
      "message": "xfs_repair: fix libxfs namespace problems\n\nCall libxfs_ functions, not xfs_ functions.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "945e47e2fcc5d1cec693122286da06d8ab829c52",
      "tree": "0f40e9d099c6425fdaa6a2c51c817b1946f44cce",
      "parents": [
        "b638281fee0bf4edc6328629eddc60e47bef153c"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "message": "xfs_db: fix crash when field list selector string has trailing slash\n\nIf I run the following command:\n\nxfs_db /dev/sdf -x -c \u0027agf 0\u0027 -c \u0027addr refcntroot\u0027 -c \u0027addr ptrs[1]\\\u0027\n\nit errors out with \"bad character in field \\\" and\nthen ftok_free crashes on an invalid free() because picking up the\nprevious token (the closing bracket) xrealloc\u0027d the token array to be 5\nelements long but never set the last element\u0027s tok pointer.\nConsequently the ftok_free tries to free whatever garbage pointer is in\nthat last element and kaboom.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n[sandeen: slightly clarify commit log]\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "b638281fee0bf4edc6328629eddc60e47bef153c",
      "tree": "ea157c5dd81a61a5ba3a001544adadbad2acb6b3",
      "parents": [
        "1ad4d3babd3e832f2c638c68da00de9947fb116c"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "message": "xfs_db: check should deal with cow staging extents correctly\n\nTeach xfs_check to record cow staging extents correctly.  This means that\nwe strip off the high bit before using startblock.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "1ad4d3babd3e832f2c638c68da00de9947fb116c",
      "tree": "475ebd17a83ffe9ecb379716af3ac17c6b79d024",
      "parents": [
        "851c5d1133547fac332955f3ae9ba5a04d38abf6"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "message": "libhandle: zap fdhash in fshandle_destroy\n\nSet fdhash_head to zero once we\u0027ve destroyed the handle list to avoid\ndangling pointer problems.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "851c5d1133547fac332955f3ae9ba5a04d38abf6",
      "tree": "ccfed199c3eddb583b9c59c0880638acb564d249",
      "parents": [
        "dad796834cb930832a4de53cbd26fafcd01cd888"
      ],
      "author": {
        "name": "Ross Zwisler",
        "email": "ross.zwisler@linux.intel.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "message": "xfs_io: add a new \u0027log_writes\u0027 command\n\nAdd a new \u0027log_writes\u0027 command to xfs_io so that we can add dm-log-writes\nlog marks.  It\u0027s helpful to allow users of xfs_io to adds these marks from\nwithin xfs_io instead of waiting until after xfs_io exits because then they\nare able to replay the dm-log-writes log up to immediately after another\nxfs_io operation such as mwrite.  This isolates the log replay from other\noperations that happen as part of xfs_io exiting (file handles being\nclosed, mmaps being torn down, etc.).  This also allows users to insert\nmultiple marks between different xfs_io commands.\n\nSigned-off-by: Ross Zwisler \u003cross.zwisler@linux.intel.com\u003e\nSuggested-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "dad796834cb930832a4de53cbd26fafcd01cd888",
      "tree": "e1695b8aa8e5e76fe71469b03dbb0e32c5692f34",
      "parents": [
        "9502da215bb8affebc968586c2d7b79693b04fb6"
      ],
      "author": {
        "name": "Ross Zwisler",
        "email": "ross.zwisler@linux.intel.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:29 2018 -0600"
      },
      "message": "xfs_io: add MAP_SYNC support to mmap()\n\nAdd support for a new -S flag to xfs_io\u0027s mmap command.  This opens the\nmapping with the (MAP_SYNC | MAP_SHARED_VALIDATE) flags instead of the\nstandard MAP_SHARED flag.\n\nSigned-off-by: Ross Zwisler \u003cross.zwisler@linux.intel.com\u003e\nSuggested-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "9502da215bb8affebc968586c2d7b79693b04fb6",
      "tree": "307641e95fefa1ba1f8f370c2aba65b1b83dd434",
      "parents": [
        "e5e612ae728a9c88aa8eeefdaf61f4a65513b49d"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:58:10 2018 -0600"
      },
      "message": "mkfs: do not allow both \"dev\" and \"name\" subopts for log or realtime\n\nTodauy this works, with last-parsed-wins semantics:\n\nmkfs.xfs -f -l logdev\u003d/dev/sda1,name\u003d/dev/sda2 /dev/sda3\n\nDisallow it to avoid ambiguity.\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "e5e612ae728a9c88aa8eeefdaf61f4a65513b49d",
      "tree": "e800327e3f49a883a8cf9b28dbc693a8e08f48c2",
      "parents": [
        "c66bd30ed7aecb429cfe3400c32892d7bc78e75b"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:56:50 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:56:50 2018 -0600"
      },
      "message": "mkfs: pass switch case value directly into getnum/getstr\n\nParsing did this sort of thing:\n\n\tcase D_AGCOUNT:\n\t\tcli-\u003eagcount \u003d getnum(value, opts, D_AGCOUNT);\n\nwhich was just begging for a cut and paste error between the\ncase value and the enum passed into getnum/getstr.  Pass\n\"subopt\" instead so that it is always consistent with the case.\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "c66bd30ed7aecb429cfe3400c32892d7bc78e75b",
      "tree": "76bd46dfa01f79c4078bcf6565dd99930bc33ef7",
      "parents": [
        "2cf637cf32ab40a2e550d700cf2aefc1ff7c189e"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:56:29 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Thu Jan 04 13:56:29 2018 -0600"
      },
      "message": "mkfs: un-document removed logarithm based CLI options\n\nRemove logarithm-based options from usage() and manpage.\n\nFixes: 70f72d5 \"mkfs: remove logarithm based CLI options\"\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "2cf637cf32ab40a2e550d700cf2aefc1ff7c189e",
      "tree": "fb25b74e62213c98f7482a1b1bb634f0b07c9b05",
      "parents": [
        "6c75555ed75c3958914cab68b4455cffe3517194"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: remove logarithm based CLI options\n\nVery few people use the log2 based size options for various mkfs\nparameters and they just clutter up the code. Get rid of them.\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "6c75555ed75c3958914cab68b4455cffe3517194",
      "tree": "20bef07c01a4b310ba695e568f49c8e0cdd31046",
      "parents": [
        "64e924ddc26a20928690f9cfcfb7e84332b05470"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: resolve sector size CLI conflicts\n\nNow we have a two dimensional conflict array, convert the sector\nsize CLI option conflict determination to use it. To get the error\nspecification just right, we also need to tweak how we store\nand validate the sector size CLI parameter state in the options\ntable.\n\nOld:\n\n$ mkfs.xfs -N -s size\u003d4k -d sectsize\u003d512 /dev/pmem0\nCannot specify both -d sectsize and -d sectlog\n.....\n\nNew:\n\n$ mkfs.xfs -N -s size\u003d4k -d sectsize\u003d512 /dev/pmem0\nCannot specify both -s size and -d sectsize\n.....\n\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "64e924ddc26a20928690f9cfcfb7e84332b05470",
      "tree": "8846404fb09e19954a65d3a5bede5313f5fe0d57",
      "parents": [
        "cedf1c438a8dc343b3d4d99c443c9b95de685c50"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: convert subopt name, val pairs to enums and declared arrays\n\nReplace the nasty #define + implicit array index definitions with\npre-declared enums and index specific name array declarations.\n\nThis cleans up the code quite a bit and the pre-declaration of the\nenums allows tables to use indexes from other tables in things like\nconflict specifications.\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "cedf1c438a8dc343b3d4d99c443c9b95de685c50",
      "tree": "cabaa3353b211e70218fb2ff57d3391a8855f48d",
      "parents": [
        "f1301ccc66fb6f33d55e351039d890832e0c22cd"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: support arbitrary conflict specification\n\nCurrently the conflict table is a single dimension, allowing\nconflicts to be specified in the same option table. however, we\nhave conflicts that span option tables (e.g. sector size) and\nso we need to encode both the table and the option that conflicts.\n\nAdd support for a two dimensional conflict definition and convert\nall the code over to use it.\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "f1301ccc66fb6f33d55e351039d890832e0c22cd",
      "tree": "02c251992d9958949258f77ee48b6a87a7410622",
      "parents": [
        "a6fb6abe53ec11ba253234e48a1c595a7ee59f8e"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: protofile only needs to be set up once\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "a6fb6abe53ec11ba253234e48a1c595a7ee59f8e",
      "tree": "92b1c56fcc00015143f515cd8bd9963ef7ad50d6",
      "parents": [
        "a9857ca718fc1d75530fda1585860abc1e2d7ce6"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: simplify minimum log size calculation\n\nmkfs jumps through hoops to call libxfs_log_calc_minimum_size() to\nset the minimum log size. We already have a xfs_mount at this point,\nwe just need to set the superblock up slightly earlier and then mkfs\ncan call libxfs_log_calc_minimum_size() directly. This means we can\nremove mkfs/maxtrres.c completely.\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "a9857ca718fc1d75530fda1585860abc1e2d7ce6",
      "tree": "9133b64b3bbac0a23b787b159a90264e5215db32",
      "parents": [
        "129d98a9966aef9c9c7c540fcd35d8cbfa500c97"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "dchinner@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: use opts parameter during option parsing\n\nRather than hard coding the global table variable into the\nparsing functions.\n\nSigned-Off-By: Dave Chinner \u003cdchinner@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "129d98a9966aef9c9c7c540fcd35d8cbfa500c97",
      "tree": "b346b1a71dba5f53263d0d2477ff5cda63ca22a6",
      "parents": [
        "852b32584e25ce004f6a132b04a1f36b1dc23670"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: remove use-once default macros\n\nsb_feat was a weird mishmash of hardcoded defaults and macros\n(which were used in only this place).\n\nMake it consistent by removing the use-once macros, and remove\nthe unused XFS_DFL_LOG_SIZE while we\u0027re in here.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "852b32584e25ce004f6a132b04a1f36b1dc23670",
      "tree": "a3dcb78c2bf87b5d5beafe45ce37c509d37dc9a1",
      "parents": [
        "639d0b0b94c495a4baf77aec31c9a81cb7685937"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: document sb_feat_args members\n\nSome of these are more self-explanatory than others (\"nci?\").\nJust mention the bit each one controls, and put them in order\nwhile we\u0027re at it.  There are more comments about each bit\nnear its definition.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "639d0b0b94c495a4baf77aec31c9a81cb7685937",
      "tree": "b57d329bc6aee7335492b8cc9c794c63aba81335",
      "parents": [
        "ec64d06334c20859ddae344bd1ed89e02b70c6a7"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:10 2018 -0600"
      },
      "message": "mkfs: invert project id width boolean name\n\nIt\u0027s a bit nuts that we have a projid32bit mkfs option, but\nwe carry around the inverse of its value in \"projid16bit\" - \njust flip it around for sanity.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "ec64d06334c20859ddae344bd1ed89e02b70c6a7",
      "tree": "7920c3d677e71b44484b8db585fc6a8f46e6867f",
      "parents": [
        "b729d144ed5855402be57d23b92fe68d4e5cac26"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 03 14:10:09 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:09 2018 -0600"
      },
      "message": "mkfs: remove unused m_uuid in sb_feat_args\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "b729d144ed5855402be57d23b92fe68d4e5cac26",
      "tree": "c12cfce95daff0b65af6b6fc51957c22fda520b9",
      "parents": [
        "df902341d68d154bb14d7d16dde0c7ec01333f34"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 03 14:10:09 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:10:09 2018 -0600"
      },
      "message": "mkfs: Don\u0027t emit default config message yet\n\nUntil we have more than one possible source of configuration,\nthere is no need to emit the only possibility and clutter\nthe output.  We can decide how it should all look when we\nget more than one source.\n\nApply some i18n to the config description, though.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "df902341d68d154bb14d7d16dde0c7ec01333f34",
      "tree": "ad8903c56ad5bdf6afddddaa3ed78070794701c0",
      "parents": [
        "30a757b7ed5a5c71b22377b445ae0aa77fcaeca5",
        "19f9a63a35cb286318d54827e6c3a36d3e4eea7e"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:09:36 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 14:09:36 2018 -0600"
      },
      "message": "Merge branch \u0027libxfs-4.15-sync\u0027 into for-next\n"
    },
    {
      "commit": "19f9a63a35cb286318d54827e6c3a36d3e4eea7e",
      "tree": "86423e5f5d5d59c3f158fbb25c4a343198b1bc0b",
      "parents": [
        "3ee858aa6c10e8705fa309f6c68ec6d0932707fc"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:11 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:11 2018 -0600"
      },
      "message": "xfs: only skip rmap owner checks for unknown-owner rmap removal\n\nSource kernel commit: 68c58e9b9a88c1a9d0c2eaf6c7acefb00f5fbbfb\n\nFor rmap removal, refactor the rmap owner checks into a separate\nfunction, then skip the checks if we are performing an unknown-owner\nremoval.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "3ee858aa6c10e8705fa309f6c68ec6d0932707fc",
      "tree": "1970c14f9b65dec3770fb0999f907c17531cc826",
      "parents": [
        "a44b23a0eb0a2300a8f39a6a4eb71c272af9788c"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:11 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:11 2018 -0600"
      },
      "message": "xfs: always honor OWN_UNKNOWN rmap removal requests\n\nSource kernel commit: 33df3a9cf925183a6a169bc3eff2bd0febd1298a\n\nCalling xfs_rmap_free with an unknown owner is supposed to remove any\nrmaps covering that range regardless of owner.  This is used by the EFI\nrecovery code to say \"we\u0027re freeing this, it mustn\u0027t be owned by\nanything anymore\", but for whatever reason xfs_free_ag_extent filters\nthem out.\n\nTherefore, remove the filter and make xfs_rmap_unmap actually treat it\nas a wildcard owner -- free anything that\u0027s already there, and if\nthere\u0027s no owner at all then that\u0027s fine too.\n\nThere are two existing callers of bmap_add_free that take care the rmap\ndeferred ops themselves and use OWN_UNKNOWN to skip the EFI-based rmap\ncleanup; convert these to use OWN_NULL (via helpers), and now we really\nrequire that an RUI (if any) gets added to the defer ops before any EFI.\n\nLastly, now that xfs_free_extent filters out OWN_NULL rmap free requests,\ngrowfs will have to consult directly with the rmap to ensure that there\naren\u0027t any rmaps in the grown region.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "a44b23a0eb0a2300a8f39a6a4eb71c272af9788c",
      "tree": "60e641039614b790bd394d4f6ecae9167235d653",
      "parents": [
        "6428e6c79cebc6b83c40ca18ffe7e0b58aa048ce"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:10 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:10 2018 -0600"
      },
      "message": "xfs: queue deferred rmap ops for cow staging extent alloc/free in the right order\n\nSource kernel commit: 0525e952dcceb9fc947c6d395de7f72220c7d081\n\nUnder the deferred rmap operation scheme, there\u0027s a certain order in\nwhich the rmap deferred ops have to be queued to maintain integrity\nduring log replay.  For alloc/map operations that order is cui -\u003e rui;\nfor free/unmap operations that order is cui -\u003e rui -\u003e efi.  However, the\ninitial refcount code got the ordering wrong in the free side of things\nbecause it queued refcount free op and an EFI and the refcount free op\nqueued a rmap free op, resulting in the order cui -\u003e efi -\u003e rui.\n\nIf we fail before the efd finishes, the efi recovery will try to do a\nwildcard rmap removal and the subsequent rui will fail to find the rmap\nand blow up.  This didn\u0027t ever happen due to other screws up in handling\nunknown owner rmap removals, but those other screw ups broke recovery in\nother ways, so fix the ordering to follow the intended rules.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "6428e6c79cebc6b83c40ca18ffe7e0b58aa048ce",
      "tree": "b69595155e7938fc9c902fa222aa7a17e6365f17",
      "parents": [
        "db2cf1d2ffc41b36abeb7603c8342f18067cef30"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:09 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:09 2018 -0600"
      },
      "message": "xfs: move xfs_iext_insert tracepoint to report useful information\n\nSource kernel commit: c54854a437a447a6bb1dcb11f60dd01cef3fa597\n\nMove the tracepoint in xfs_iext_insert to after the point where we\u0027ve\ninserted the extent because otherwise we report stale extent data in\nthe ftrace output.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "db2cf1d2ffc41b36abeb7603c8342f18067cef30",
      "tree": "915cceffcff1e96da36ada161c554cda1d0166e0",
      "parents": [
        "3fbc4d7df3d9f9951589394873bd250b1d573347"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:09 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:09 2018 -0600"
      },
      "message": "xfs: account for null transactions in bunmapi\n\nSource kernel commit: 8c57b88637d78a723e0854fc3d06c6d4c31a1e0c\n\nIn e1a4e37cc7b665 (\"xfs: try to avoid blowing out the transaction\nreservation when bunmaping a shared extent\"), we try to constrain the\namount of real extents we unmap from the data fork in a given call so\nthat we don\u0027t blow out transaction reservations.\n\nHowever, not all bunmapi operations require a transaction -- if we\u0027re\nonly removing a delalloc extent, no transaction is needed, so we have to\ncode against that.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "3fbc4d7df3d9f9951589394873bd250b1d573347",
      "tree": "b108c4ed578ecef40e8b1d90fa980dd580f83ef9",
      "parents": [
        "6f67c32d94e26f8478cbf4e8f61755bacdaba5a7"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:08 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:08 2018 -0600"
      },
      "message": "xfs: hold xfs_buf locked between shortform-\u003eleaf conversion and the addition of an attribute\n\nSource kernel commit: 6e643cd094de3bd0f97edcc1db0089afa24d909f\n\nThe new attribute leaf buffer is not held locked across the transaction\nroll between the shortform-\u003eleaf modification and the addition of the\nnew entry.  As a result, the attribute buffer modification being made is\nnot atomic from an operational perspective.  Hence the AIL push can grab\nit in the transient state of \"just created\" after the initial\ntransaction is rolled, because the buffer has been released.  This leads\nto xfs_attr3_leaf_verify() asserting that hdr.count is zero, treating\nthis as in-memory corruption, and shutting down the filesystem.\n\nDarrick ported the original patch to 4.15 and reworked it use the\nxfs_defer_bjoin helper and hold/join the buffer correctly across the\nsecond transaction roll.\n\nSigned-off-by: Alex Lyakas \u003calex@zadarastorage.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "6f67c32d94e26f8478cbf4e8f61755bacdaba5a7",
      "tree": "4320a72d28d71f6bb31b683af5e349cd5794c136",
      "parents": [
        "59630067f764c9f76053058ed51c123da532dc76"
      ],
      "author": {
        "name": "Darrick J. Wong",
        "email": "darrick.wong@oracle.com",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "message": "xfs: add the ability to join a held buffer to a defer_ops\n\nSource kernel commit: b7b2846fe26f2c0d7f317c874a13d3ecf22670ff\n\nIn certain cases, defer_ops callers will lock a buffer and want to hold\nthe lock across transaction rolls.  Similar to ijoined inodes, we want\nto dirty \u0026 join the buffer with each transaction roll in defer_finish so\nthat afterwards the caller still owns the buffer lock and we haven\u0027t\ninadvertently pinned the log.\n\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "59630067f764c9f76053058ed51c123da532dc76",
      "tree": "fa7ed3f4e0c4da112d5d39b340e7ea95eaf0e290",
      "parents": [
        "c1a29e922879ae51ad990d9615c8091eb35c0c5b"
      ],
      "author": {
        "name": "Brian Foster",
        "email": "bfoster@redhat.com",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "message": "xfs: refactor buffer logging into buffer dirtying helper\n\nSource kernel commit: 9684010d38eccda733b61106765e9357cf436f65 \n\nxfs_trans_log_buf() is responsible for logging the dirty segments of\na buffer along with setting all of the necessary state on the\ntransaction, buffer, bli, etc., to ensure that the associated items\nare marked as dirty and prepared for I/O. We have a couple use cases\nthat need to to dirty a buffer in a transaction without actually\nlogging dirty ranges of the buffer.  One existing use case is\nordered buffers, which are currently logged with arbitrary ranges to\naccomplish this even though the content of ordered buffers is never\nwritten to the log. Another pending use case is to relog an already\ndirty buffer across rolled transactions within the deferred\noperations infrastructure. This is required to prevent a held\n(XFS_BLI_HOLD) buffer from pinning the tail of the log.\n\nRefactor xfs_trans_log_buf() into a new function that contains all\nof the logic responsible to dirty the transaction, lidp, buffer and\nbli. This new function can be used in the future for the use cases\noutlined above. This patch does not introduce functional changes.\n\nSigned-off-by: Brian Foster \u003cbfoster@redhat.com\u003e\nReviewed-by: Allison Henderson \u003callison.henderson@oracle.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n"
    },
    {
      "commit": "c1a29e922879ae51ad990d9615c8091eb35c0c5b",
      "tree": "0193567939e28f457bbaa18072abd66cbb06f1e5",
      "parents": [
        "5c40ca1fbca9c7b67b775b38063951e21308aebd"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "message": "xfs: remove \"no-allocation\" reservations for file creations\n\nSource kernel commit: f59cf5c29919d17b61913c3360a7bd29b72975c1\n\nIf we create a new file we will need an inode, and usually some metadata\nin the parent direction.  Aiming for everything to go well despite the\nlack of a reservation leads to dirty transactions cancelled under a heavy\ncreate/delete load.  This patch removes those nospace transactions, which\nwill lead to slightly earlier ENOSPC on some workloads, but instead\nprevent file system shutdowns due to cancelling dirty transactions for\nothers.\n\nA customer could observe assertations failures and shutdowns due to\ncancelation of dirty transactions during heavy NFS workloads as shown\nbelow:\n\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728125] XFS: Assertion failed: error !\u003d -ENOSPC, file: fs/xfs/xfs_inode.c, line: 1262\n\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728222] Call Trace:\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728246]  [\u003cffffffff81795daf\u003e] dump_stack+0x63/0x81\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728262]  [\u003cffffffff810a1a5a\u003e] warn_slowpath_common+0x8a/0xc0\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728264]  [\u003cffffffff810a1b8a\u003e] warn_slowpath_null+0x1a/0x20\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728285]  [\u003cffffffffa01bf403\u003e] asswarn+0x33/0x40 [xfs]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728308]  [\u003cffffffffa01bb07e\u003e] xfs_create+0x7be/0x7d0 [xfs]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728329]  [\u003cffffffffa01b6ffb\u003e] xfs_generic_create+0x1fb/0x2e0 [xfs]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728348]  [\u003cffffffffa01b7114\u003e] xfs_vn_mknod+0x14/0x20 [xfs]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728366]  [\u003cffffffffa01b7153\u003e] xfs_vn_create+0x13/0x20 [xfs]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728380]  [\u003cffffffff81231de5\u003e] vfs_create+0xd5/0x140\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728390]  [\u003cffffffffa045ddb9\u003e] do_nfsd_create+0x499/0x610 [nfsd]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728396]  [\u003cffffffffa0465fa5\u003e] nfsd3_proc_create+0x135/0x210 [nfsd]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728401]  [\u003cffffffffa04561e3\u003e] nfsd_dispatch+0xc3/0x210 [nfsd]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728416]  [\u003cffffffffa03bfa43\u003e] svc_process_common+0x453/0x6f0 [sunrpc]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728423]  [\u003cffffffffa03bfdf3\u003e] svc_process+0x113/0x1f0 [sunrpc]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728427]  [\u003cffffffffa0455bcf\u003e] nfsd+0x10f/0x180 [nfsd]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728432]  [\u003cffffffffa0455ac0\u003e] ? nfsd_destroy+0x80/0x80 [nfsd]\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728438]  [\u003cffffffff810c0d58\u003e] kthread+0xd8/0xf0\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728441]  [\u003cffffffff810c0c80\u003e] ? kthread_create_on_node+0x1b0/0x1b0\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728451]  [\u003cffffffff8179d962\u003e] ret_from_fork+0x42/0x70\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728453]  [\u003cffffffff810c0c80\u003e] ? kthread_create_on_node+0x1b0/0x1b0\n2017-05-30 21:17:06 kernel: WARNING: [ 2670.728454] ---[ end trace f9822c842fec81d4 ]---\n\n2017-05-30 21:17:06 kernel: ALERT: [ 2670.728477] XFS (sdb): Internal error xfs_trans_cancel at line 983 of file fs/xfs/xfs_trans.c.  Caller xfs_create+0x4ee/0x7d0 [xfs]\n\n2017-05-30 21:17:06 kernel: ALERT: [ 2670.728684] XFS (sdb): Corruption of in-memory data detected. Shutting down filesystem\n2017-05-30 21:17:06 kernel: ALERT: [ 2670.728685] XFS (sdb): Please umount the filesystem and rectify the problem(s)\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    },
    {
      "commit": "5c40ca1fbca9c7b67b775b38063951e21308aebd",
      "tree": "bf4fcb1fd0601b96c09e1bbbd3a9abc06c125b83",
      "parents": [
        "dc9b1f58bffb702ea7f17720f9412677d903964a"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "committer": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Jan 03 13:42:03 2018 -0600"
      },
      "message": "xfs: fix leaks on corruption errors in xfs_bmap.c\n\nSource kernel commit: d41c6172bd4031979eab722c265a2e5764383c3c\n\nUse _GOTO instead of _RETURN so we can free the allocated\ncursor on error.\n\nFixes: bf80628 (\"xfs: remove xfs_bmse_shift_one\")\nFixes-coverity-id: 1423813, 1423676\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nReviewed-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Darrick J. Wong \u003cdarrick.wong@oracle.com\u003e\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\n\n"
    }
  ],
  "next": "30a757b7ed5a5c71b22377b445ae0aa77fcaeca5"
}
