)]}'
{
  "log": [
    {
      "commit": "21258fab2caeade405a15ba932d373b364aa6e8c",
      "tree": "7ca72986d483856e842b1917f01a5ca37994d24e",
      "parents": [
        "2460df7cd6ce949377bcfc9fbade4f588ad48381"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 18 13:56:35 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 18 13:56:35 2016 +0100"
      },
      "message": "Btrfs progs v4.4\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "2460df7cd6ce949377bcfc9fbade4f588ad48381",
      "tree": "29987869075d3f6f1963785844be01607a2035ab",
      "parents": [
        "a2b24489da60cd516d4bb44bb99f8f39140973da"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 15 15:17:46 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 15 15:19:50 2016 +0100"
      },
      "message": "btrfs-progs: docs: update balance manual page\n\nMake the new balance filters\u0027 syntax more explicit. Other rewording and\nreformatting.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "a2b24489da60cd516d4bb44bb99f8f39140973da",
      "tree": "5f779603111486c7bac49e08ac2fba2ad2f9d967",
      "parents": [
        "1bb0bba1b625eec1bd288699f10c8855034daef1"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 15 14:00:41 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 15 14:16:36 2016 +0100"
      },
      "message": "btrfs-progs: debug-tree: tweak tree node checks\n\nThe tree root and chunk root base pointers are verified in open_ctree so\nwe don\u0027t get NULL here. We still check the node pointers to get better\nerror message.\n\nResolves-coverity-id: 1348450\nResolves-coverity-id: 1348451\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "1bb0bba1b625eec1bd288699f10c8855034daef1",
      "tree": "ddb5bd0c23f222eadf00b01b397698a86365bf47",
      "parents": [
        "17e204bb5eeafa49ebfe6fcc063be0689b1cb7df"
      ],
      "author": {
        "name": "Noah Massey",
        "email": "noah.massey@gmail.com",
        "time": "Fri Jan 15 13:31:01 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 15 13:31:44 2016 +0100"
      },
      "message": "btrfs-progs: fix static build\n\nChange in \"btrfs-progs: introduce helper for parsing args without\noptions\" added a dependency on help.o that was duplicated for the static\nbuild.\n\nSigned-off-by: Noah Massey \u003cnoah.massey@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "17e204bb5eeafa49ebfe6fcc063be0689b1cb7df",
      "tree": "f2242e5191595ddd56a2060079c5e455f57564b7",
      "parents": [
        "0de3c18b95adb03c964e1848e8c0bf52b0633d5e"
      ],
      "author": {
        "name": "Mike Gilbert",
        "email": "floppym@gentoo.org",
        "time": "Thu Jan 14 05:18:03 2016 -0500"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:46:59 2016 +0100"
      },
      "message": "btrfs-progs: Use AC_CHECK_TOOL to find AR\n\nAC_CHECK_TOOL takes the --host option into account for cross-compiling.\n\nSigned-off-by: Mike Gilbert \u003cfloppym@gentoo.org\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "0de3c18b95adb03c964e1848e8c0bf52b0633d5e",
      "tree": "1da245b63403573a59cce604838ee4cd410d5786",
      "parents": [
        "62cb59389491fec18154641663ca1a6368849cad"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:16:27 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:16:27 2016 +0100"
      },
      "message": "Btrfs progs v4.4-rc1\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "62cb59389491fec18154641663ca1a6368849cad",
      "tree": "e8b9a431c094e33fb4310fa9662b299de8e6d65f",
      "parents": [
        "a6cc8ea10ad84e4b7d1303ed048e644f0dd7ae04"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 10:37:02 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: subvol show: use clean_args_no_options instead of opencoding\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "a6cc8ea10ad84e4b7d1303ed048e644f0dd7ae04",
      "tree": "028fb30b5e2bcaac84f849b441ca9c3284371fe7",
      "parents": [
        "c26dc1ef339c373c59a7c1626bb21d64811476ee"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 10:30:35 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: introduce helper for parsing args without options\n\nAll commands should support the \"--\" option separator. This is\ntransparently handled by getopt, but we don\u0027t use that everywhere.\nIntroduce a helper for commands that take no options (just the path).\nThe object file dependencies need to be adjusted a bit.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "c26dc1ef339c373c59a7c1626bb21d64811476ee",
      "tree": "3ac44d54092e4c16bba58193f42056f7ca5ade1a",
      "parents": [
        "3f248d2431424e79445131514c5f558a14a2b9f2"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 10:29:13 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: move prefixcmp to utils\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "3f248d2431424e79445131514c5f558a14a2b9f2",
      "tree": "edc4db5c88f5133bb6caec693b5cac9f9a44d2e6",
      "parents": [
        "7faf96e30aacf927ac18c5a1e5c50921f0ae5eee"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 09:40:24 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: receive: don\u0027t leak open find handle\n\nResolves-coverity-id: 1348121\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "7faf96e30aacf927ac18c5a1e5c50921f0ae5eee",
      "tree": "2e05e66031858733f2ab226ae1155b1161326949",
      "parents": [
        "dddc3e08cbf87c1ab06f4fa55a108e538db42f8b"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 18:44:59 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: also check filesystem type in test_issubvolume\n\nA subvolume is a directory with inode number 256 on a btrfs filesytem.\nAdd the missing check to test_issubvolume for completeness, otherwise we\nalways do that in btrfs_open_dir.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "dddc3e08cbf87c1ab06f4fa55a108e538db42f8b",
      "tree": "d1519e359cd43b3dc1a12bbe411be796eb70af8a",
      "parents": [
        "7afde59e38e78fa7c99d0b0d36718645c6a77c91"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 18:14:32 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: more verbose errors from test_issubvolume\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "7afde59e38e78fa7c99d0b0d36718645c6a77c91",
      "tree": "5e2c095b356a1505a3bab1345d27ebdcd103abab",
      "parents": [
        "33ac47b5fb0b7202ac32b6ab018a5212b790c4f1"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 17:45:39 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: let test_issubvolume return the exact error\n\nReturn any error from stat, minor cleanups.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "33ac47b5fb0b7202ac32b6ab018a5212b790c4f1",
      "tree": "38b41387b7bf3e5ebbf4eafaf8214743336091c5",
      "parents": [
        "5b56fe9db5cc69d9ce2c125ab86c6546ae4e7323"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 18:08:34 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:10 2016 +0100"
      },
      "message": "btrfs-progs: use symbolic name for subvolume inode number in test_issubvolume\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "5b56fe9db5cc69d9ce2c125ab86c6546ae4e7323",
      "tree": "c1d87741bbeb099f762e8e2053735de55b8369d5",
      "parents": [
        "1267c58e58429647454ccd5a41ffdee07ba0dfdc"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 18:04:22 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 14 11:07:09 2016 +0100"
      },
      "message": "btrfs-progs: handle errors from test_isdir\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "1267c58e58429647454ccd5a41ffdee07ba0dfdc",
      "tree": "e590e1806b97a6819772db2b6d904dddb8fa4d12",
      "parents": [
        "207884898354f6e0a8fd50b16866abf103f46c27"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 17:45:39 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 17:45:41 2016 +0100"
      },
      "message": "btrfs-progs: let test_isdir return the exact error\n\nReturn any error from stat, normalize the return value in case the path\nis a directory.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "207884898354f6e0a8fd50b16866abf103f46c27",
      "tree": "772a4c06edb128501009780c4a60091cee6e8eef",
      "parents": [
        "0aa796cad7ed3fce9d5964646a8f1f5a142b4989"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 16:05:56 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 16:43:48 2016 +0100"
      },
      "message": "btrfs-progs: debug-tree: teach -t option about the chunk and root trees\n\nA user on IRC wanted to dump the chunk tree using the -t option. As the\n-t option enumerates only trees pointed by the tree_root, the chunk tree\nis skipped. Similar for th tree of tree roots.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "0aa796cad7ed3fce9d5964646a8f1f5a142b4989",
      "tree": "09826ebe4b46c6d1ff4cf9f86781179277969f6d",
      "parents": [
        "b9ec406c0fe1abb06b39eca57a1fd6b97e8e62ee"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 15:38:28 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 16:43:48 2016 +0100"
      },
      "message": "btrfs-progs: subvol show: handle options by getopt\n\nThe subvolume show command does not take any optios but at least it\nshould honor \"--\", as reported.\n\nBugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\u003d110181\nReported-by: \u003cmoviuro+kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "b9ec406c0fe1abb06b39eca57a1fd6b97e8e62ee",
      "tree": "2474b4fbbd3ad9e1e4b9d955f26a19292b624922",
      "parents": [
        "ecd4bb607f3504838f89741abeb683ba921d668e"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 12:59:42 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 13 16:43:13 2016 +0100"
      },
      "message": "btrfs-progs: fi usage: support mixed blockgroups\n\nProperly account the duplicated block groups and global reserve.\n\nBugzilla: https://bugzilla.kernel.org/show_bug.cgi?id\u003d110111\nReported-by: Chris Murphy \u003cbugzilla@colorremedies.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "ecd4bb607f3504838f89741abeb683ba921d668e",
      "tree": "6d4b081a86abc6ba2bbbdbbeda83cc91e99b64d3",
      "parents": [
        "ac45d64c041b763221d0fb4cd41a0e207c688c14"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 18:42:49 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 18:42:49 2016 +0100"
      },
      "message": "btrfs-progs: docs: enhance btrfs-filesystem manual page\n\nWording, formatting, explanations, examples.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "ac45d64c041b763221d0fb4cd41a0e207c688c14",
      "tree": "aca000f70a6b54a1ffd640618729d11d3e44d6ff",
      "parents": [
        "4b9d4fe00f7b12d904e35b7e734c68471d549c55"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:16:11 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:16:11 2016 +0100"
      },
      "message": "btrfs-progs: tests: add missing prerequisites\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "4b9d4fe00f7b12d904e35b7e734c68471d549c55",
      "tree": "3e48a999837e99fbea665c5606c6d631233c0d8a",
      "parents": [
        "39e98213ebc05a43c61328bc940dd454361af749"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 14:34:41 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:57 2016 +0100"
      },
      "message": "btrfs-porgs: fi usage: rename variable to avoid shadowing\n\nReported by gcc -Wshadow .\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "39e98213ebc05a43c61328bc940dd454361af749",
      "tree": "562d9d941a8efde61f052ea197c6be780aa3fe4d",
      "parents": [
        "df3a134d0e49acd67c891100ef12fd6bfc06eaed"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 14:34:41 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:56 2016 +0100"
      },
      "message": "btrfs-porgs: check: rename variable to avoid shadowing\n\nReported by gcc -Wshadow .\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "df3a134d0e49acd67c891100ef12fd6bfc06eaed",
      "tree": "05f294d60791b3e4058853aa6c5b4c5ce9b79eb6",
      "parents": [
        "407f928cd2ae67a93a7ed618a7776cdacc8f6834"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 14:34:41 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:56 2016 +0100"
      },
      "message": "btrfs-porgs: qgroup: rename variable to avoid shadowing\n\nReported by gcc -Wshadow .\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "407f928cd2ae67a93a7ed618a7776cdacc8f6834",
      "tree": "df1d2a1a501fb9d8f01dad0a956ed8d6a8a5eb47",
      "parents": [
        "f9ae9147562c6402c000b241af257a3170ec270a"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 14:25:23 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:55 2016 +0100"
      },
      "message": "btrfs-progs: add function attributes for the printf-like\n\nReported by gcc -Wsuggest-attribute\u003dformat .\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "f9ae9147562c6402c000b241af257a3170ec270a",
      "tree": "bb34f3235fbd0eb41109b119d926602b5ed572e1",
      "parents": [
        "ac4ec4d4f44e67fc3d1fd806cf7acbe2485cedee"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 14:18:24 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:55 2016 +0100"
      },
      "message": "btrfs-progs: build: fix builds with extra warnings, W\u003d1\n\nWrong variable name used in the main makefile.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "ac4ec4d4f44e67fc3d1fd806cf7acbe2485cedee",
      "tree": "434f39155069a914bc76d3e9fdca87a331012b7a",
      "parents": [
        "633dc6f80f201afdf5b8524ae377187d58f0ef3b"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 13:35:50 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:55 2016 +0100"
      },
      "message": "btrfs-progs: check for negative return value from ioctl\n\nHandle only negative values returned by ioctl syscalls, with exception\nof the device remove. It returns positive values that are handled later.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "633dc6f80f201afdf5b8524ae377187d58f0ef3b",
      "tree": "ca5b6375fb6910ac51eea8b89173c45390ce0355",
      "parents": [
        "374d67fdef869d2e2dfb9907d21c85ee6c19e1d7"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 11:20:18 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:55 2016 +0100"
      },
      "message": "btrfs-progs: remove unnecessary errno temp variables\n\nWe can read errno directly if it\u0027s not clobbered by any intermediate\ncalls.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "374d67fdef869d2e2dfb9907d21c85ee6c19e1d7",
      "tree": "67a07002bcba9ab54d83734533d9480099f00c58",
      "parents": [
        "fcb6b102eb955964be8f186bc9a03f4411af57aa"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 16:44:44 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:55 2016 +0100"
      },
      "message": "btrfs-progs: free-space-tree: minor message adjustments\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "fcb6b102eb955964be8f186bc9a03f4411af57aa",
      "tree": "100fa3ac992e8fd1458729ee66729f1fd002e568",
      "parents": [
        "83a7413318f22dbac86274cd2ae173ed350b04d3"
      ],
      "author": {
        "name": "Khem Raj",
        "email": "raj.khem@gmail.com",
        "time": "Sat Jan 09 19:04:23 2016 -0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:54 2016 +0100"
      },
      "message": "btrfsprogs: corrupt-blocks: include limits.h to define PATH_MAX\n\nlimits.h is needed for PATH_MAX definition\n\nFixes\n| btrfs-corrupt-block.c: In function \u0027corrupt_dir_item\u0027:\n| btrfs-corrupt-block.c:478:12: error: \u0027PATH_MAX\u0027 undeclared (first use in this function)\n|   char name[PATH_MAX];\n\nSigned-off-by: Khem Raj \u003craj.khem@gmail.com\u003e\n[ minor changelog edits ]\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "83a7413318f22dbac86274cd2ae173ed350b04d3",
      "tree": "9d0fa50622357dcde3d95a8de967c426c66176b2",
      "parents": [
        "23c51533aec69bef815b5db9eb5ec6755913eb6d"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 16:28:14 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:54 2016 +0100"
      },
      "message": "btrfs-progs: docs: document new mount option fragment\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "23c51533aec69bef815b5db9eb5ec6755913eb6d",
      "tree": "dafb5ec8a6625f1110681fc527f13cc3b81eb22f",
      "parents": [
        "e4797df6a9fac329fdb168f8fd6bf1925ead3c28"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 16:12:28 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:54 2016 +0100"
      },
      "message": "btrfs-progs: docs: sort mount options alphabetically\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e4797df6a9fac329fdb168f8fd6bf1925ead3c28",
      "tree": "b654c6f772fa2506638c8a3d3dae0a5bbe32d6a1",
      "parents": [
        "d8c537e71f3dce8a8d03dddfcbcac71ef2e2cdc4"
      ],
      "author": {
        "name": "Omar Sandoval",
        "email": "osandov@fb.com",
        "time": "Tue Sep 29 20:51:45 2015 -0700"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:54 2016 +0100"
      },
      "message": "btrfs-progs: check the free space tree in btrfsck\n\nThis reuses the existing code for checking the free space cache, we just\nneed to load the free space tree. While we do that, we check a couple of\ninvariants on the free space tree itself. This requires pulling in some\ncode from the kernel to exclude the super stripes.\n\nSigned-off-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "d8c537e71f3dce8a8d03dddfcbcac71ef2e2cdc4",
      "tree": "ad395afec2a95863f315da036de3d73d5a603688",
      "parents": [
        "32c063ccb73dc11e880a575f30e921ca64b8c520"
      ],
      "author": {
        "name": "Omar Sandoval",
        "email": "osandov@fb.com",
        "time": "Tue Sep 29 20:51:44 2015 -0700"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:54 2016 +0100"
      },
      "message": "btrfs-progs: add basic awareness of the free space tree\n\nTo start, let\u0027s tell btrfs-progs to read the free space root and how to\nprint the on-disk format of the free space tree. However, we\u0027re not\nadding the FREE_SPACE_TREE read-only compat bit to the set of supported\nbits because progs doesn\u0027t know how to keep the free space tree\nconsistent.\n\nSigned-off-by: Omar Sandoval \u003cosandov@fb.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "32c063ccb73dc11e880a575f30e921ca64b8c520",
      "tree": "bc1ebdb96bb61537249f54fb44520ddf5e829b2f",
      "parents": [
        "a8829f5335a121928cf773ba00be4530bf0267c0"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 15:32:38 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:53 2016 +0100"
      },
      "message": "btrfs-progs: docs: rename btrfs-mount to btrfs-man5\n\nThe page does will not contain only mount options but other stuff.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "a8829f5335a121928cf773ba00be4530bf0267c0",
      "tree": "e24c588bc6d78c4a8e745dbd5062644a0bf2bf64",
      "parents": [
        "7ccc0543dc25cd5751f500dd58df766d61b43095"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 15:28:08 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:53 2016 +0100"
      },
      "message": "btrfs-progs: docs, btrfs-mount: enhance file attributes section\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "7ccc0543dc25cd5751f500dd58df766d61b43095",
      "tree": "1213aedc421e40a81df74d96cf6c4f1eff112435",
      "parents": [
        "f7c9278008dcdc9fb7c754de89639758ebf6809e"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 14:31:20 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:53 2016 +0100"
      },
      "message": "btrfs-progs: cleanup, move usage help strings closer to the command callbacks\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "f7c9278008dcdc9fb7c754de89639758ebf6809e",
      "tree": "2eece12d4ec008f4a90517d3480e26062c2eb923",
      "parents": [
        "0e1acda2b2bbe82506cfb2dace7a6e3c16159010"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 15:35:07 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:53 2016 +0100"
      },
      "message": "btrfs-progs: cmd property: use correct usage strings\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "0e1acda2b2bbe82506cfb2dace7a6e3c16159010",
      "tree": "7a7bbb52472b255e7180abb4a0e5fdcd0e4381ec",
      "parents": [
        "641b5d83dd0c328f3361d908e7089a4c703150f9"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:53 2016 +0100"
      },
      "message": "btrfs-progs: cmd fi usage: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "641b5d83dd0c328f3361d908e7089a4c703150f9",
      "tree": "2208053fc9bf616493f759ab9e87a26f9ac88a9b",
      "parents": [
        "edbdd06e25d4694d8be8d6217305b3dca3196846"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:53 2016 +0100"
      },
      "message": "btrfs-progs: cmd filesystem: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "edbdd06e25d4694d8be8d6217305b3dca3196846",
      "tree": "1ea2bce2134c511dfef000d255989571849d06f6",
      "parents": [
        "e7e759017dfca8e89b36d12c5147501cc58c664d"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:52 2016 +0100"
      },
      "message": "btrfs-progs: cmd replace: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e7e759017dfca8e89b36d12c5147501cc58c664d",
      "tree": "596152eea608f809a02b28b58440767b4b39aeb6",
      "parents": [
        "e67f03887f501f0dc1ab20956aab91dfe9e02422"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:52 2016 +0100"
      },
      "message": "btrfs-progs: cmd subvolume: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e67f03887f501f0dc1ab20956aab91dfe9e02422",
      "tree": "0a4093f764c357472c0fa74bbb4837251d27e461",
      "parents": [
        "7330c881c80a213f1c15c976e593908ca54c1221"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:52 2016 +0100"
      },
      "message": "btrfs-progs: cmd send: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "7330c881c80a213f1c15c976e593908ca54c1221",
      "tree": "39180ddcf081d2e1f37bf1d3d761d54bc42aa8aa",
      "parents": [
        "e3926b4dc8a6df37ce480fe3662ea5a541b1f41b"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:52 2016 +0100"
      },
      "message": "btrfs-progs: cmd receive: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e3926b4dc8a6df37ce480fe3662ea5a541b1f41b",
      "tree": "a0efd09cb6df63bc473cc23cb56edb1985f5a0c1",
      "parents": [
        "28831d54895443e5fc795392f23ce3a8b122cb71"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:52 2016 +0100"
      },
      "message": "btrfs-progs: cmd qgroup: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "28831d54895443e5fc795392f23ce3a8b122cb71",
      "tree": "d4fba2ec32a1d17342d23d75a6dedbfc9fa708e3",
      "parents": [
        "c8e8509239c246dbf5b24dca204ed7d0bff2379d"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:51 2016 +0100"
      },
      "message": "btrfs-progs: cmd property: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "c8e8509239c246dbf5b24dca204ed7d0bff2379d",
      "tree": "9f997066bef2c3dd31937c8b1656582a92849ac1",
      "parents": [
        "3d6f61f8cb6ae24b2ff7494e48d635ef29570b5d"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:51 2016 +0100"
      },
      "message": "btrfs-progs: cmd balance: switch to common error message wrapper\n\nMessage texts were adjusted.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "3d6f61f8cb6ae24b2ff7494e48d635ef29570b5d",
      "tree": "36d78e442946704c63ac0dc5f0b0fe6bd1cb7567",
      "parents": [
        "6bc6e850eefeb25547077e5314de2952db678576"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:51 2016 +0100"
      },
      "message": "btrfs-progs: cmd quota: switch to common error message wrapper\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "6bc6e850eefeb25547077e5314de2952db678576",
      "tree": "f88e955104a11c631c9c59aeaaf125b3430c76c5",
      "parents": [
        "b98ad87a037c053da533d7d9929583b9ea42c86c"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 11 11:01:47 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:51 2016 +0100"
      },
      "message": "btrfs-progs: cmd rescue: switch to common error message wrapper\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "b98ad87a037c053da533d7d9929583b9ea42c86c",
      "tree": "8aa69ad1f5457ab79b5ff62c48d5adf3f5f92e44",
      "parents": [
        "ef45c6b9db20bd4aa9cd0bb6f3f05cec41e21f96"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:52:11 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:51 2016 +0100"
      },
      "message": "btrfs-progs: catch memory allocation failure in btrfs_split_item\n\nDo the dumb BUG_ON now, the function needs more changes to handle all\nerrors.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "ef45c6b9db20bd4aa9cd0bb6f3f05cec41e21f96",
      "tree": "b50b7ada3cc3b6e3f1fbf595d3519351529923bb",
      "parents": [
        "87296b5541313b4792f2a5fe0a30045d64f99a74"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:52:11 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:51 2016 +0100"
      },
      "message": "btrfs-progs: handler memory allocation failure in add_extent_rec\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "87296b5541313b4792f2a5fe0a30045d64f99a74",
      "tree": "c75a3e80f307dd632a48372731e72d6eb0e94a29",
      "parents": [
        "62b4c169e448964c4918e29f0a65a8ac71a9c552"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:52:11 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:50 2016 +0100"
      },
      "message": "btrfs-progs: catch memory allocation failure from alloc_data_backref\n\nDo the dumb BUG_ON now, the function needs more changes to handle all\nerrors.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "62b4c169e448964c4918e29f0a65a8ac71a9c552",
      "tree": "1ae4a7e934ae7fcb9f97336b6f1d676fd3c075c7",
      "parents": [
        "cb2b8b19c83ddb168b69307c4a68c2a2d39f2a5f"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:52:11 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:50 2016 +0100"
      },
      "message": "btrfs-progs: catch memory allocation failure from alloc_tree_backref\n\nDo the dumb BUG_ON now, the function needs more changes to handle all\nerrors.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "cb2b8b19c83ddb168b69307c4a68c2a2d39f2a5f",
      "tree": "c8ee4ba18de64dd1eb09e98a1d480902153f655c",
      "parents": [
        "b317ca97d3f6c2b2ef23b051d304c7f03e3c23f1"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:52:11 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:02:50 2016 +0100"
      },
      "message": "btrfs-progs: catch memory allocation failure in splice_shared_node\n\nDo the dumb BUG_ON now, the function needs more changes to handle all\nerrors.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "b317ca97d3f6c2b2ef23b051d304c7f03e3c23f1",
      "tree": "d4ef11e763ac991a48f4f73276f856ab3c2af1ad",
      "parents": [
        "f72a3f9f9ff04d29ccee7f6355b78a1291ee42af"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:08:46 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:09 2016 +0100"
      },
      "message": "btrfs-progs: handle errors in get_inode_backref and fail in the caller\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "f72a3f9f9ff04d29ccee7f6355b78a1291ee42af",
      "tree": "912a82435db34f27e5ab48a8d16220e1ceb3329f",
      "parents": [
        "3823cc2771cc55a8ca4c4266192f1c5a973d1fcd"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:37:06 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:08 2016 +0100"
      },
      "message": "btrfs-progs: handle errors in get_root_backref and fail in the caller\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "3823cc2771cc55a8ca4c4266192f1c5a973d1fcd",
      "tree": "d6ddbb8dbe0ab32c06752ec5f2cc8906ddc56e05",
      "parents": [
        "6aff5d74bdf1add66e27b876eb79074bc210599d"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:08:46 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:08 2016 +0100"
      },
      "message": "btrfs-progs: return errors from get_root_rec, fail in callers\n\nget_root_rec return value is enahanced, callers will just BUG_ON now\nand will be fixed one by one.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "6aff5d74bdf1add66e27b876eb79074bc210599d",
      "tree": "2086bd160efa1acc073135f7ed8b331abdfdf2b9",
      "parents": [
        "e0a28fa2fd9fdd570fc0e44e7f6f6743706cdc71"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:37:06 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:08 2016 +0100"
      },
      "message": "btrfs-progs: handle errors in add_shared_node and fail in the caller\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e0a28fa2fd9fdd570fc0e44e7f6f6743706cdc71",
      "tree": "4c1424f338016ac414decac474887d01c8de1887",
      "parents": [
        "441f88498dccc734bab3d0091eabdeed2fec1417"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:08:46 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:07 2016 +0100"
      },
      "message": "btrfs-progs: return errors from clone_inode_rec, fail in callers\n\nclone_inode_rec return value is enahanced, callers will just BUG_ON now\nand will be fixed one by one.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "441f88498dccc734bab3d0091eabdeed2fec1417",
      "tree": "798d3e7bad46ddf35925cf3b57abfc090cdf09dc",
      "parents": [
        "cf0fce7ed408b8955d43e1a7d3d15f9488160e35"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 15:08:46 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:07 2016 +0100"
      },
      "message": "btrfs-progs: return errors from get_inode_rec, fail in callers\n\nget_inode_rec return value is enahanced, callers will just BUG_ON now\nand will be fixed one by one.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "cf0fce7ed408b8955d43e1a7d3d15f9488160e35",
      "tree": "d8e6c3f350b3f1d6070d5cfddcdb83c58da64fae",
      "parents": [
        "154c389e92e325033f1d38d204d9d0c4e62f860f"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 08 19:33:02 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:07 2016 +0100"
      },
      "message": "btrfs-progs: docs, enhance the mount option manual page\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "154c389e92e325033f1d38d204d9d0c4e62f860f",
      "tree": "24e02fde4b036258f7e3770d93cefd7d4cb9ed57",
      "parents": [
        "79b8750fe78e8814636679b63a09f07bd79756ab"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 08 14:46:44 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:07 2016 +0100"
      },
      "message": "btrfs-progs: docs, btrfs-mount: enhance fatal_erros\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "79b8750fe78e8814636679b63a09f07bd79756ab",
      "tree": "eb293780fabd16ee71ded4a3dbb274131c272d57",
      "parents": [
        "7dffef0a371e6145cd855293cb7cee8618e1878a"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 08 14:34:48 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:07 2016 +0100"
      },
      "message": "btrfs-progs: docs, btrfs-mount: put NOTE tag to new paragraph\n\nOtherwise it\u0027s not rendered properly.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "7dffef0a371e6145cd855293cb7cee8618e1878a",
      "tree": "a9432d635c9607167e5d79ba54318c5613338c9d",
      "parents": [
        "d0ba996f5f0a66d9816876f2d9c939ed2c2bdd32"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Fri Jan 08 14:31:05 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:07 2016 +0100"
      },
      "message": "btrfs-progs: docs, btrfs-mount: unindent descriptions\n\nAsciidoc ignores special keywords like WARNING or NOTE if they\u0027re not at\nthe beginning of the line and they\u0027re not renedered very visibly in the\nend.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "d0ba996f5f0a66d9816876f2d9c939ed2c2bdd32",
      "tree": "241ce5068afcbc3a0b94bf45629dba62c77770cf",
      "parents": [
        "894c346714e0ba9784b1ccb1e5cbb39f9e2e6245"
      ],
      "author": {
        "name": "Christoph Anton Mitterer",
        "email": "mail@christoph.anton.mitterer.name",
        "time": "Sun Dec 27 03:41:28 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:06 2016 +0100"
      },
      "message": "btrfs-progs: document snapshot unaware defrag\n\nIn btrfs-filesystem(8), improved the documentation of snapshot unaware\ndefragmentation and included the exact kernel version numbers being affected as\nwell as the possible effects.\nNo longer use the word \"unlink\" which is easily understood as \"deleting a file\".\nMoved the warning more to the beginning of \"defragment\" subcommand\u0027s\ndocumentation where it\u0027s more visible to readers.\n\nAdded the same warning to the \"autodefrag\" option of btrfs-mount(5).\n\nSigned-off-by: Christoph Anton Mitterer \u003cmail@christoph.anton.mitterer.name\u003e\n"
    },
    {
      "commit": "894c346714e0ba9784b1ccb1e5cbb39f9e2e6245",
      "tree": "4637f7621e37933345bf0fd1550f3f31d0c603cb",
      "parents": [
        "4ec28aec7611ecc8c3cb3ce0c72958cb615844a6"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Jan 07 16:28:05 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:06 2016 +0100"
      },
      "message": "btrfs-progs: docs, update btrfs(8) manual page\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "4ec28aec7611ecc8c3cb3ce0c72958cb615844a6",
      "tree": "08344676ec619940790e2139fd04620544d33ecf",
      "parents": [
        "8b5147d5f33e73c44aa6a0fc0f47a7e3c6b7ffb9"
      ],
      "author": {
        "name": "Liu Bo",
        "email": "bo.li.liu@oracle.com",
        "time": "Wed Jan 06 13:08:53 2016 -0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:06 2016 +0100"
      },
      "message": "Btrfs-progs: fix typo in parse_range\n\ns/*end/*start.\n\nThis makes \u0027btrfs balance start -dvrange\u003dxxx..yyy\u0027 really work.\n\nSigned-off-by: Liu Bo \u003cbo.li.liu@oracle.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "8b5147d5f33e73c44aa6a0fc0f47a7e3c6b7ffb9",
      "tree": "0b22d92503482ffe1810e8aa7dc2f7ca0ba80430",
      "parents": [
        "2cb9b4dbbd21585253a3dc314e91418ff3a9bb68"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Wed Jan 06 14:22:34 2016 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:06 2016 +0100"
      },
      "message": "btrfs-progs: use on-stack buffer in add_symbolic_link\n\nAlso get rid of the unhandled memory allocation.\n\nResolves-coverity-id: 1338298\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "2cb9b4dbbd21585253a3dc314e91418ff3a9bb68",
      "tree": "8fa8a268d545893d6ed82b3dae1677249276ab71",
      "parents": [
        "e3bd2d145f3821e5c57d56931e78efca22578a97"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Thu Dec 03 13:45:44 2015 -0500"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:06 2016 +0100"
      },
      "message": "btrfs: only free root_path if it was allocated from the heap\n\nNoticed this while doing some snapshots in a chroot environment\n\nbtrfs receive can set root_path to either realmnt, which is passed in from the\ncommand line, or to a heap allocated via find_mount_root  in do_receive.  We\nshould only free the later, not the former, as the former results in an invalid\npointer warning from glibc during free.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCC: Josef Bacik \u003cjbacik@fb.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e3bd2d145f3821e5c57d56931e78efca22578a97",
      "tree": "3d65a2a316465a409cdacf3a84860b8e1657e7a3",
      "parents": [
        "97f72e7507f79dfdb70d20e839f7d8e2070dcb9d"
      ],
      "author": {
        "name": "Byongho Lee",
        "email": "bhlee.kernel@gmail.com",
        "time": "Mon Jan 04 10:01:34 2016 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:05 2016 +0100"
      },
      "message": "btrfs-progs: fix using on-disk structure to store in memory data\n\nIn \u0027qgroup_count\u0027 structure \u0027diskinfo\u0027 and \u0027info\u0027 are used to store only\nin memory data but its types are for on-disk structure as a result sparse\nwarns it (different base types).  So fix it by adding new structure\n\u0027qgroup_info\u0027 to store in memory data and replace on-disk structure\n\u0027btrfs_qgroup_info_item\u0027 by \u0027qgroup_info\u0027.  In addition in alloc_cnt()\n\u0027generation\u0027 is set but not used after that so remove the relevant code.\n\nSigned-off-by: Byongho Lee \u003cbhlee.kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "97f72e7507f79dfdb70d20e839f7d8e2070dcb9d",
      "tree": "031cac430284c5f7eb02cce62dda896c7f6839d2",
      "parents": [
        "e55eb2e51a8d2396dcf4a809efb50567a7bf5aa4"
      ],
      "author": {
        "name": "Byongho Lee",
        "email": "bhlee.kernel@gmail.com",
        "time": "Mon Jan 04 10:01:33 2016 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:05 2016 +0100"
      },
      "message": "btrfs-progs: fix endian bug in update_super()\n\nIn update_super() \u0027chunk-\u003estripe.devid\u0027 and \u0027super-\u003edev_item.devid\u0027 both\nare little endian. So we should not use endian helper\nbtrfs_set_stack_stripe_devid().\n\nSigned-off-by: Byongho Lee \u003cbhlee.kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "e55eb2e51a8d2396dcf4a809efb50567a7bf5aa4",
      "tree": "3d4e987beec8cb582cd9816bcdb22d4052356fc6",
      "parents": [
        "24b73dff7bd682b78cae945db88254b47b9939a0"
      ],
      "author": {
        "name": "Byongho Lee",
        "email": "bhlee.kernel@gmail.com",
        "time": "Mon Jan 04 10:01:32 2016 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:05 2016 +0100"
      },
      "message": "btrfs-progs: fix endian bugs in chunk rebuilding\n\nThis is a same patch as Zach Brown\u0027s but we lost so I resend it based on\ncurrent code.\n - \u0027commit 2cd95f945a61 (\"fix endian bugs in chunk rebuilding\")\u0027\n\nSigned-off-by: Zach Brown \u003czab@redhat.com\u003e\nSigned-off-by: Byongho Lee \u003cbhlee.kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "24b73dff7bd682b78cae945db88254b47b9939a0",
      "tree": "d4c75e95a79bd473401e263567053a5aec293b0b",
      "parents": [
        "83d0a1727b9122d3e7e04943aeb2af5f4203d1fc"
      ],
      "author": {
        "name": "Byongho Lee",
        "email": "bhlee.kernel@gmail.com",
        "time": "Mon Jan 04 10:01:31 2016 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:05 2016 +0100"
      },
      "message": "btrfs-progs: make private symbols to static\n\nSigned-off-by: Byongho Lee \u003cbhlee.kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "83d0a1727b9122d3e7e04943aeb2af5f4203d1fc",
      "tree": "a574d4380770c3d9c14c37aa28bff8ae706a6933",
      "parents": [
        "dea6b51bae9333127e160ce75988dade61966062"
      ],
      "author": {
        "name": "Byongho Lee",
        "email": "bhlee.kernel@gmail.com",
        "time": "Mon Jan 04 10:01:30 2016 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:05 2016 +0100"
      },
      "message": "btrfs-progs: use NULL instead of 0\n\nFix the code assigning 0 to pointer instead of NULL.\n\nSigned-off-by: Byongho Lee \u003cbhlee.kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "dea6b51bae9333127e160ce75988dade61966062",
      "tree": "1aa8e4a9a80e432957e8be45bed208e9c7b0331e",
      "parents": [
        "61d6ed4fe7eff80033562380df536351b7ad6e66"
      ],
      "author": {
        "name": "Byongho Lee",
        "email": "bhlee.kernel@gmail.com",
        "time": "Mon Jan 04 10:01:29 2016 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:05 2016 +0100"
      },
      "message": "btrfs-progs: get sparse checking working\n\nWhen I run sparse checking it gives the following error:\n\n $ make C\u003d1 V\u003d1\n gcc -MM -MG -MF cmds-fi-usage.o.d -MT cmds-fi-usage.o -MT \\\n cmds-fi-usage.static.o -MT cmds-fi-usage.o.d -g -O1 -Wall \\\n -D_FORTIFY_SOURCE\u003d2 -include config.h -DBTRFS_FLAT_INCLUDES \\\n -D_XOPEN_SOURCE\u003d700 -fno-strict-aliasing -fPIC   cmds-fi-usage.c\n    [SP]     ctree.c\n sparse -g -O1 -Wall -D_FORTIFY_SOURCE\u003d2 -include config.h \\\n -DBTRFS_FLAT_INCLUDES -D_XOPEN_SOURCE\u003d700 -fno-strict-aliasing -fPIC \\\n -include  -D__CHECKER__ -D__CHECK_ENDIAN__ -Wbitwise -Wuninitialized \\\n -Wshadow -Wundef -U_FORTIFY_SOURCE ctree.c\n builtin:1:15: error: unable to open \u0027-D__CHECKER__\u0027\n Makefile:177: recipe for target \u0027ctree.o\u0027 failed\n make: *** [ctree.o] Error 1\n\nIt means \u0027$(check_defs)\u0027 is passed to sparse as NULL and looks\n\u0027$(check_defs)\u0027should be assigned before assigning \u0027$(CHECKER_FLAGS)\u0027.\nBTW, I\u0027m not familiar with make tool so there could be some my\nmisunderstanding and better solution.\n\nSigned-off-by: Byongho Lee \u003cbhlee.kernel@gmail.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "61d6ed4fe7eff80033562380df536351b7ad6e66",
      "tree": "bf6361793ec3f8fef17428f27f46ce3b535aabe5",
      "parents": [
        "f0eae29843a95cb10d9c5f8c03f77e6b74eda656"
      ],
      "author": {
        "name": "Qu Wenruo",
        "email": "quwenruo@cn.fujitsu.com",
        "time": "Tue Dec 15 10:04:01 2015 +0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:04 2016 +0100"
      },
      "message": "btrfs-progs: Enhance chunk validation check\n\nEnhance chunk validation:\n1) Num_stripes\n   We already have such check but it\u0027s only in super block sys chunk\n   array.\n   Now check all on-disk chunks.\n\n2) Chunk logical\n   It should be aligned to sector size.\n   This behavior should be *DOUBLE CHECKED* for 64K sector size like\n   PPC64 or AArch64.\n   Maybe we can found some hidden bugs.\n\n3) Chunk length\n   Same as chunk logical, should be aligned to sector size.\n\n4) Stripe length\n   It should be power of 2.\n\n5) Chunk type\n   Any bit out of TYPE_MAS | PROFILE_MASK is invalid.\n\nWith all these much restrict rules, several fuzzed image reported in\nmail list should no longer cause btrfsck error.\n\nReported-by: Vegard Nossum \u003cvegard.nossum@oracle.com\u003e\nSigned-off-by: Qu Wenruo \u003cquwenruo@cn.fujitsu.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "f0eae29843a95cb10d9c5f8c03f77e6b74eda656",
      "tree": "50620570ba1f809b877f2a9606ed7f6e6eb2d435",
      "parents": [
        "5a657cad467a601bbef49b0ab79f30cd23a53dfe"
      ],
      "author": {
        "name": "Chandan Rajendra",
        "email": "chandan@linux.vnet.ibm.com",
        "time": "Tue Dec 15 15:32:00 2015 +0530"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:04 2016 +0100"
      },
      "message": "btrfs-progs: ftw_add_entry_size: Round up file size to sectorsize\n\nftw_add_entry_size() assumes 4k as the block size of the underlying\nfilesystem and hence the file sizes computed is incorrect for non-4k\nsectorsized filesystems. Fix this by rounding up file sizes to\nsectorsize.\n\nSigned-off-by: Chandan Rajendra \u003cchandan@linux.vnet.ibm.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "5a657cad467a601bbef49b0ab79f30cd23a53dfe",
      "tree": "807f18f10b7cf38c24bbd31e2e04795c4244c9b8",
      "parents": [
        "40db5cd7ffcbc4b58d6c82e9ddba01f7e26152ca"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Oct 22 10:26:10 2015 +0200"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:04 2016 +0100"
      },
      "message": "btrfs-progs: balance: enhance the usage filter with range\n\nWe can do more with the balance usage filter. Enhance it so we can\nspecify also the minimum usage of the block groups to process. The\n\u0027usage\u0027 filter now accepts a range (a..b, can be partial) and needs\nkernel support.\n\nThe \u0027usage\u003dvalue\u0027 filter is equivalent to \u0027limit\u003d..value\u0027 but works on\nolder kernels as well.\n\nThe min/max values are 32bit, unlike the single-value limit which is\n64bit.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "40db5cd7ffcbc4b58d6c82e9ddba01f7e26152ca",
      "tree": "5f2b486ae544e16dd9678429f25746234554d09c",
      "parents": [
        "0826a8ddb90e577c5c359d8bca2571f167029f7e"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Oct 22 10:19:38 2015 +0200"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:04 2016 +0100"
      },
      "message": "btrfs-progs: extend balance args to take min/max usage filter\n\nAdd the overlapping usage and [usage_min, usage_max] members to the\nbalance args. The min/max values are interpreted iff the corresponding\nflag BTRFS_BALANCE_ARGS_USAGE_RANGE is set.\n\nThe minimum boundary is inclusive, maximum is exclusive:\n* usage_min \u003c\u003d chunk_usage \u003c usage_max\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "0826a8ddb90e577c5c359d8bca2571f167029f7e",
      "tree": "43cad92e0e3f810d3df3c3d07edb421f1723d5e4",
      "parents": [
        "7dff5c9c9b980e9848e1716434606eb01c16914e"
      ],
      "author": {
        "name": "Gabríel Arthúr Pétursson",
        "email": "gabriel@system.is",
        "time": "Mon Sep 28 22:33:04 2015 +0000"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:04 2016 +0100"
      },
      "message": "btrfs-progs: balance: add stripes filter\n\nAdd new balance filter \u0027stripes\u003d\u003crange\u003e\u0027 to process only chunks that are\nspread accross given number of chunks.\n\nThe range minimum and maximum are inclusive.\n\nSigned-off-by: Gabríel Arthúr Pétursson \u003cgabriel@system.is\u003e\n[ reworked a bit to use the range helpers, dropped the single value\n  for stripes ]\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "7dff5c9c9b980e9848e1716434606eb01c16914e",
      "tree": "b03651b8964814c8e4433885673addc4117ea5f1",
      "parents": [
        "45e9bf809816e9992c288af68f72f01e2329c18d"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Oct 12 00:52:43 2015 +0200"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:03 2016 +0100"
      },
      "message": "btrfs-progs: balance: enhance the limit fiter with range\n\nWe can do more with the balance filter. Enhance it so we can specify\nalso the minimum number of block groups to process. The \u0027limit\u0027 filter\nnow accepts a range (a..b, can be partial) and needs kernel support.\n\nThe \u0027limit\u003dvalue\u0027 filter is equivalent to \u0027limit\u003d..value\u0027 but works on\nolder kernels as well.\n\nThe min/max values are 32bit, unlike the single-value limit which is\n64bit.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "45e9bf809816e9992c288af68f72f01e2329c18d",
      "tree": "a793dc5fd0c1d783bf093e28e3b43bc23879ae24",
      "parents": [
        "ebb66f20aeee76a776d0d64502a9f85d6e8fb77b"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Oct 12 00:34:58 2015 +0200"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:03 2016 +0100"
      },
      "message": "btrfs-progs: extend balance args to take min/max limit filter\n\nAdd the overlapping limit and [limit_min, limit_max] members to the\nbalance args. The min/max values are interpreted iff the corresponding\nflag BTRFS_BALANCE_ARGS_LIMIT_RANGE is set.\n\nThe minimum and maximum are inclusive.\n\nNote that the values are only 32bit, but this should be enough for the\nforeseeable future.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "ebb66f20aeee76a776d0d64502a9f85d6e8fb77b",
      "tree": "5dd736bb596dcbdb6797bc6f87a9d3e0748c45bf",
      "parents": [
        "9c572c38a1dd87cdbe1f9811ac17eff90f6c10c0"
      ],
      "author": {
        "name": "Naohiro Aota",
        "email": "naota@elisp.net",
        "time": "Tue Dec 08 11:07:13 2015 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:03 2016 +0100"
      },
      "message": "btrfs-progs: tests: test multiple-linked file corruption\n\nThis commit extends the leaf corruption test to try to repair a file\nlinked from multiple directory. It stresses a case that some links to a\nfile is broken but others kept valid.\n\nSigned-off-by: Naohiro Aota \u003cnaota@elisp.net\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "9c572c38a1dd87cdbe1f9811ac17eff90f6c10c0",
      "tree": "6801330f8fa9e999f05b9de50eecabad1b4727c3",
      "parents": [
        "f735b37466c293aa6ecc4d145b6251c162c519f6"
      ],
      "author": {
        "name": "Qu Wenruo",
        "email": "quwenruo@cn.fujitsu.com",
        "time": "Tue Dec 01 15:11:23 2015 +0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:03 2016 +0100"
      },
      "message": "btrfs-progs: Introduce new members for btrfs_convert_context\n\nIntroduce 3 new members for btrfs_convert_context:\n\n1) struct cache_tree used\nRecords accurate byte ranges which are used by old filesystem.\nThis will be used to create old filesystem image.\n\n2) struct cache_tree data_chunks\nRecords batched ranges which must be covered by data chunks.\nThe bytenr range is optimized to meet all the chunk requirement.\n\n3) u64 total_bytenr\nRecords how large the filesystem is in bytenr.\nYes, we can calculate it easy, but that\u0027s for old blocks based\nfilesystem.\nThis will make it more friendly for extent based filesystem.\nAnd later cctx-\u003eblock_counts and may be removed\n\nAnd 2 for mkfs_config:\n1) char *chunk_uuid.\nUsed as temporary chunk_uuid (unparsed) string for later\nmake_convert_btrfs()\n\n2) u64 super_bytenr\nRecords the new temporary super bytenr after make_btrfs().\n\nSigned-off-by: Qu Wenruo \u003cquwenruo@cn.fujitsu.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "f735b37466c293aa6ecc4d145b6251c162c519f6",
      "tree": "c7bb26a6db860a23ba7230d323a87ba59c827edd",
      "parents": [
        "466e066837898ec047165b8f1081c529092c6d0a"
      ],
      "author": {
        "name": "Qu Wenruo",
        "email": "quwenruo@cn.fujitsu.com",
        "time": "Tue Dec 01 15:11:22 2015 +0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:03 2016 +0100"
      },
      "message": "btrfs-progs: extent-tree: Add add_merge_cache_extent function\n\nThis add_merge_cache_extent() function will try to merge adjusted\ncache_extent.\n\nThis is used for later btrfs-convert ext2 free space cache.\n\nSigned-off-by: Qu Wenruo \u003cquwenruo@cn.fujitsu.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "466e066837898ec047165b8f1081c529092c6d0a",
      "tree": "8e82053dabf3d2e36231c1d0c40d2bfb1c4d3d8f",
      "parents": [
        "9709d754db09629c0b540055b6abf7cfdcf480c8"
      ],
      "author": {
        "name": "Qu Wenruo",
        "email": "quwenruo@cn.fujitsu.com",
        "time": "Tue Dec 01 15:11:21 2015 +0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:03 2016 +0100"
      },
      "message": "btrfs-progs: extent-cache: Add comments for search/lookup functions\n\nThere are quite a lot search/lookup functions with different behavior,\nadd comments for them, as it will take extra time to view source to\nunderstand the behavior difference.\n\nSigned-off-by: Qu Wenruo \u003cquwenruo@cn.fujitsu.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "9709d754db09629c0b540055b6abf7cfdcf480c8",
      "tree": "3a9a8979686f5b46dfe5730bacafb14cefeb6026",
      "parents": [
        "05d4159946cf1f54e18729b708d2fd6c3a1225c4"
      ],
      "author": {
        "name": "Naohiro Aota",
        "email": "naota@elisp.net",
        "time": "Fri Dec 04 14:37:26 2015 +0900"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:02 2016 +0100"
      },
      "message": "btrfs-progs: check, properly reset nlink of multi-linked file\n\nIf a file is linked from more than one directory and only one\nof the links is corrupted, btrfs check dose not reset the nlink\nproperly. Actually it can go into infinite loop to link the broken file\ninto lost+found.\n\nThis patch fix two part of the code. The first one delay the freeing\nvalid (no error, found inode ref, directory index, and directory\nitem) backrefs. Freeing valid backrefs earier prevent reset_nlink() to\nadd back all valid links.\n\nThe second fix is obvious: passing `ref_type\u0027 to btrfs_add_link() is just\nwrong. It should be `filetype\u0027 instead. The current code can break all valid\nfile links.\n\nSigned-off-by: Naohiro Aota \u003cnaota@elisp.net\u003e\nReviewed-by: Qu Wenruo \u003cquwenruo@cn.fujitsu.com\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "05d4159946cf1f54e18729b708d2fd6c3a1225c4",
      "tree": "9fecfa17017ba6d312dda639137a84a6cb035d00",
      "parents": [
        "88f584cfea4d8170de07acbf67895fe992d0afc4"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 18:13:01 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Tue Jan 12 15:01:02 2016 +0100"
      },
      "message": "btrfs-progs: tests: print test type\n\nMakes it a bit more clear:\n\n    [TEST/conv]   ext4 32k nodesize, btrfs no-holes\n    [TEST/conv]   ext2 64k nodesize, btrfs no-holes\n    [TEST/conv]   ext3 64k nodesize, btrfs no-holes\n    [TEST/conv]   ext4 64k nodesize, btrfs no-holes\n    [TEST]        misc-tests.sh\n    [TEST/misc]   001-btrfstune-features\n    [TEST/misc]   002-uuid-rewrite\n    [TEST/misc]   003-zero-log\n    [TEST/misc]   004-shrink-fs\n    [TEST/misc]   005-convert-progress-thread-crash\n    [TEST/misc]   006-image-on-missing-device\n    [TEST/misc]   007-subvolume-sync\n    [TEST/misc]   008-leaf-crossing-stripes\n    [TEST/misc]   009-subvolume-sync-must-wait\n    [TEST/misc]   010-convert-delete-ext2-subvol\n    [TEST/misc]   011-delete-missing-device\n    [TEST]        fuzz-tests.sh\n    [TEST/fuzz]   001-simple-unmounted\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "88f584cfea4d8170de07acbf67895fe992d0afc4",
      "tree": "49c2bb80892d4380c9fb9b8fac81ac57ac85a75a",
      "parents": [
        "5f03d1fc23a575988c33098d4dea828bc19c1db6"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 17:56:58 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: show-super: copy implementation of btrfs_read_sys_array\n\nbtrfs-show-super has own implementation to read the sys array and it\nlacks all the sanity checks.\n\nCopy and adapt the improved implementation from btrfs_read_sys_array.\nThis will fix crashes on a fuzzed/corrupted images. It\u0027s duplicating\ncode but at the moment looks easier than refactoring and restructuring\nbtrfs_read_sys_array that now almost matches the kernel code, which we\nwant in the long term.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "5f03d1fc23a575988c33098d4dea828bc19c1db6",
      "tree": "c2fa7da0516b0afbf6f94a85d7e73301d37ebc89",
      "parents": [
        "9bb3e6bc3c6cecd285826c7ee00488bd3d9e372f"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 17:42:15 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: tests: add sys-array-num-stripes-0.raw.xz\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "9bb3e6bc3c6cecd285826c7ee00488bd3d9e372f",
      "tree": "434ebe317f1c8a5d1086f0ee098ef744489a01c8",
      "parents": [
        "81e43dabc87ea9b2242456a8bbe9239e55cb841f"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 17:10:20 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: verbose error when we find an unexpected item in sys_array\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "81e43dabc87ea9b2242456a8bbe9239e55cb841f",
      "tree": "6aaca9ce103dc02d66b086ccb8c10979d474345a",
      "parents": [
        "d9463cfeaa9a131062752c1136825071137c78f5"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 16:44:29 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: handle invalid num_stripes in sys_array\n\nWe can handle the special case of num_stripes \u003d\u003d 0 directly inside\nbtrfs_read_sys_array. The BUG_ON in btrfs_chunk_item_size is there to\ncatch other unhandled cases where we fail to validate external data,\nlike in btrfs-show-super.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "d9463cfeaa9a131062752c1136825071137c78f5",
      "tree": "a94d2a7aaa4335d314d1139d94ba7aa79ae205c6",
      "parents": [
        "22d9c7091b3855663571cf445141ba2b24522bd0"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.cz",
        "time": "Wed Nov 05 15:24:51 2014 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: add more checks to btrfs_read_sys_array\n\nPort of kernel commit e3540eab29e1b2260bc4b9b3979a49a00e3e3af8\n\nVerify that the sys_array has enough bytes to read the next item.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "22d9c7091b3855663571cf445141ba2b24522bd0",
      "tree": "e403d28ad83f601b33aeb886f17c79ec0578417b",
      "parents": [
        "9c655bfc1cc73fcacb5d555855ff0199d314eb84"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.cz",
        "time": "Mon Nov 30 16:07:35 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: cleanup, rename a few variables in btrfs_read_sys_array\n\nPort of kernel commit 1ffb22cf8c322bbfea6b35fe23d025841b49fede\n\nThere\u0027s a pointer to buffer, integer offset and offset passed as\npointer, try to find matching names for them.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "9c655bfc1cc73fcacb5d555855ff0199d314eb84",
      "tree": "4cc9adff032e05d41f3ae060cdb4be024e8cbe18",
      "parents": [
        "16e240eca7a03515889678001e6c0559d40402a2"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 15:57:36 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: update btrfs_read_sys_array to match kernel implementation\n\nThere are some sanity checks missing on both sides, kernel/userspace.\nPreparation to port the missing changes.\n\nSync code with parent of kernel commit\n1ffb22cf8c322bbfea6b35fe23d025841b49fede (\"btrfs: cleanup, rename a few\nvariables in btrfs_read_sys_array\")\n\nThis effectively reverts progs commit\nbe96777126d283773e4397278a5662d90676ab88 (\"btrfs-progs: Cleanup unneeded\nextra variant in btrfs_read_sys_array\") so we can apply more of the\nkernel patches.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "16e240eca7a03515889678001e6c0559d40402a2",
      "tree": "e61246a5a12f0f877ce010a5124915c7e32439f5",
      "parents": [
        "f25142f2d0268f698efb6a71a9582d47c3696d70"
      ],
      "author": {
        "name": "Qu Wenruo",
        "email": "quwenruo@cn.fujitsu.com",
        "time": "Mon Nov 30 09:39:30 2015 +0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: tests: mkfs, check sectorsize and nodesize combinations\n\nAdd mkfs selftest for invalid and valid sectorsize/nodesize\ncombinations.\n\nSigned-off-by: Qu Wenruo \u003cquwenruo@cn.fujitsu.com\u003e\n[ switched to TEST_DEV ]\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "f25142f2d0268f698efb6a71a9582d47c3696d70",
      "tree": "21f1b3a1c650ec380a1363d24d38f0d60b658533",
      "parents": [
        "bbb0c589fc675d1a132b66a10be2234ffb4bd5eb"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Nov 30 10:36:28 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:24 2016 +0100"
      },
      "message": "btrfs-progs: install to /usr/local by default again\n\nThe conversion to autotools changed the default prefix to /usr. There\u0027s\nno reason to diverge. Distributions builds set prefix the /usr path and\nlocal builds are supposed to go to /usr/local .\n\nReference: https://bugzilla.kernel.org/show_bug.cgi?id\u003d108571\nReported-by: Karl Richter \u003ckrichter722@aol.de\u003e\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "bbb0c589fc675d1a132b66a10be2234ffb4bd5eb",
      "tree": "d6b171c98c48927b06e833bb0d8b12810d3f050d",
      "parents": [
        "1d37645dc35bdd6152399be88d8300318b0651de"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Nov 26 17:56:45 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Mon Jan 04 11:28:12 2016 +0100"
      },
      "message": "btrfs-progs: docs: mkfs, implications of DUP on devices\n\nWe offer DUP but still depend on the hardware, to do the right thing.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "1d37645dc35bdd6152399be88d8300318b0651de",
      "tree": "af6935a541b206176e7e74a2950c5ac38f6e5607",
      "parents": [
        "c1ff75db16cbe80f634a41c8068013a5129dba05"
      ],
      "author": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Nov 26 16:22:16 2015 +0100"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Nov 26 16:22:16 2015 +0100"
      },
      "message": "btrfs-progs: tests: enhance 001-basic-profiles with --data DUP\n\nAdd the remaining valid combinations.\n\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    },
    {
      "commit": "c1ff75db16cbe80f634a41c8068013a5129dba05",
      "tree": "4ed219b20eb048c39b050d0ad204a435fcca612d",
      "parents": [
        "ed91cae19808d8d8561ec9e18c8dc0a74643c53f"
      ],
      "author": {
        "name": "Zhao Lei",
        "email": "zhaolei@cn.fujitsu.com",
        "time": "Thu Nov 19 17:36:24 2015 +0800"
      },
      "committer": {
        "name": "David Sterba",
        "email": "dsterba@suse.com",
        "time": "Thu Nov 26 15:58:38 2015 +0100"
      },
      "message": "btrfs-progs: mkfs: allow --data DUP for single device\n\nCurrent code don\u0027t support DUP profile on single device, except it\nis in mixed mode, because of following reasons:\n\n1: Some SSD do deduplication internally, so the duplication on\n   the filesystem side has no effect.\n2: On a physical device, if the entire disk broken, --data DUP does not\n   help.\n3: Half performance compared to single profile.\n4: We have a workaround: create multi-partition on a single device,\n   and btffs will treat them as multi device.\n\nInstead of refusing --data DUP, we give the user a choice and print\na wrning.\n\nTest:\n1: Tested by xfstests\n   Run with modified xfstests, I add test items of -d dup in single\n   device into btrfs/* and common/rc, run tests of btrfs/*,\n   with all mount option, no regression diffed with v4.3.\n2: Tested by btrfs-progs\n   Checked following commands in \"-m dup -d dup\" fs with memleck\n   checking, all passed:\n   mkfs.btrfs -f --data dup --metadata dup /dev/sda6\n   btrfs filesystem show /dev/sda6\n   btrfs filesystem label /dev/sda6 btrfs_label_test\n   btrfs filesystem label /dev/sda6\n   btrfs device scan --all-devices\n   btrfs device scan /dev/sda6\n   btrfs device scan /dev/sda6\n   btrfs device ready /dev/sda6\n   btrfs check /dev/sda6\n   btrfs check -s 1 /dev/sda6\n   btrfs check --repair /dev/sda6\n   btrfs check --init-csum-tree /dev/sda6\n   btrfs check --init-extent-tree /dev/sda6\n   btrfs check --check-data-csum /dev/sda6\n   btrfs check --qgroup-report /dev/sda6\n   btrfs rescue super-recover -y /dev/sda6\n   btrfs rescue zero-log /dev/sda6\n   btrfs restore -l /dev/sda6\n   btrfs restore /dev/sda6 /\n   btrfs restore -s /dev/sda6 /\n   btrfs restore -x /dev/sda6 /\n   btrfs restore -m /dev/sda6 /\n   btrfs restore -S /dev/sda6 /\n   btrfs restore -v /dev/sda6 /\n   btrfs restore -i /dev/sda6 /\n   btrfs restore -o /dev/sda6 /\n   btrfs restore -u0 /dev/sda6 /\n   btrfs restore -u1 /dev/sda6 /\n   btrfs restore -D /dev/sda6 /\n   btrfs property list /dev/sda6\n   btrfs property get /dev/sda6 label\n   btrfs property set /dev/sda6 label test\n   btrfs property set /dev/sda6 label btrfs_label_test\n   btrfs help\n   btrfs help --full\n   btrfs version\n   btrfsck /dev/sda6\n   btrfs-find-root /dev/sda6\n   btrfs-find-root -a /dev/sda6\n   btrfs-map-logical -l1 /dev/sda6\n   btrfs-map-logical -l1 -c1 /dev/sda6\n   btrfs-map-logical -l1 -o /tmp/btrfs-map-logic-out /dev/sda6\n   btrfs-map-logical -l1 -b1 /dev/sda6\n   btrfs-select-super -s 0 /dev/sda6\n   btrfs-select-super -s 1 /dev/sda6\n   btrfstune -S 1 /dev/sda6\n   btrfstune -f -S 0 /dev/sda6\n   btrfstune -r /dev/sda6\n   btrfstune -x /dev/sda6\n   btrfstune -n /dev/sda6\n   btrfstune -f -U 00000000-0000-0000-0000-000000000000 /dev/sda6\n   btrfstune -f -u /dev/sda6\n   btrfs-calc-size /dev/sda6\n   btrfs-calc-size -v /dev/sda6\n   btrfs-calc-size -b /dev/sda6\n   btrfs-debug-tree /dev/sda6\n   btrfs-debug-tree -e /dev/sda6\n   btrfs-debug-tree -d /dev/sda6\n   btrfs-debug-tree -r /dev/sda6\n   btrfs-debug-tree -R /dev/sda6\n   btrfs-debug-tree -u /dev/sda6\n   btrfs-debug-tree -b 0 /dev/sda6\n   btrfs-debug-tree -t 0 /dev/sda6\n   btrfs-debug-tree -t 2 /dev/sda6\n   btrfs-show-super /dev/sda6\n   btrfs-show-super -i 0 /dev/sda6\n   btrfs-show-super -i 1 /dev/sda6\n   btrfs-show-super -i 2 /dev/sda6\n   btrfs-show-super -a /dev/sda6\n   btrfs-show-super -f /dev/sda6\n   btrfs-show-super -F /dev/sda6\n   btrfs subvolume list /mnt/btrfs-progs-tests\n   btrfs subvolume create /mnt/btrfs-progs-tests/mysubvol\n   btrfs subvolume list /mnt/btrfs-progs-tests\n   btrfs subvolume get-default /mnt/btrfs-progs-tests\n   btrfs subvolume set-default 258 /mnt/btrfs-progs-tests\n   btrfs subvolume get-default /mnt/btrfs-progs-tests\n   btrfs subvolume set-default  /mnt/btrfs-progs-tests\n   btrfs subvolume snapshot /mnt/btrfs-progs-tests/mysubvol /mnt/btrfs-progs-tests/mysubvol_snap\n   btrfs subvolume list /mnt/btrfs-progs-tests\n   btrfs subvolume find-new /mnt/btrfs-progs-tests 0\n   btrfs subvolume find-new /mnt/btrfs-progs-tests 0\n   btrfs subvolume find-new /mnt/btrfs-progs-tests/mysubvol 0\n   btrfs subvolume find-new /mnt/btrfs-progs-tests/mysubvol 0\n   btrfs subvolume show /mnt/btrfs-progs-tests\n   btrfs subvolume show /mnt/btrfs-progs-tests/mysubvol\n   btrfs subvolume show /mnt/btrfs-progs-tests/mysubvol_snap\n   btrfs subvolume sync /mnt/btrfs-progs-tests\n   btrfs subvolume delete /mnt/btrfs-progs-tests/mysubvol_snap\n   btrfs subvolume delete /mnt/btrfs-progs-tests/mysubvol\n   btrfs subvolume sync /mnt/btrfs-progs-tests\n   btrfs filesystem df /mnt/btrfs-progs-tests\n   btrfs filesystem show /mnt/btrfs-progs-tests\n   btrfs filesystem sync /mnt/btrfs-progs-tests\n   btrfs filesystem label /mnt/btrfs-progs-tests btrfs_label_test\n   btrfs filesystem label /mnt/btrfs-progs-tests\n   btrfs filesystem usage /mnt/btrfs-progs-tests\n   btrfs filesystem defragment -s 1024 -l 2048 /mnt/btrfs-progs-tests/filesystem_test_dir/test_dir_0/test_file_0\n   btrfs filesystem defragment /mnt/btrfs-progs-tests/filesystem_test_dir/test_dir_0/test_file_1\n   btrfs filesystem defragment -f /mnt/btrfs-progs-tests/filesystem_test_dir/test_dir_0/test_file_2\n   btrfs filesystem defragment -czlib /mnt/btrfs-progs-tests/filesystem_test_dir/test_dir_0/test_file_3\n   btrfs filesystem defragment -clzo /mnt/btrfs-progs-tests/filesystem_test_dir/test_dir_0/test_file_4\n   btrfs filesystem defragment /mnt/btrfs-progs-tests/filesystem_test_dir\n   btrfs filesystem defragment -r /mnt/btrfs-progs-tests/filesystem_test_dir\n   btrfs filesystem defragment /mnt/btrfs-progs-tests\n   btrfs filesystem resize 1:-10M /mnt/btrfs-progs-tests\n   btrfs filesystem resize 1:max /mnt/btrfs-progs-tests\n   btrfs balance start /mnt/btrfs-progs-tests\n   btrfs balance start -v /mnt/btrfs-progs-tests\n   btrfs balance start -f /mnt/btrfs-progs-tests\n   btrfs balance status -v /mnt/btrfs-progs-tests\n   btrfs balance pause /mnt/btrfs-progs-tests\n   btrfs balance status /mnt/btrfs-progs-tests\n   btrfs balance resume /mnt/btrfs-progs-tests\n   btrfs balance status -v /mnt/btrfs-progs-tests\n   btrfs balance cancel /mnt/btrfs-progs-tests\n   btrfs balance start -dprofiles\u003dsingle /mnt/btrfs-progs-tests\n   btrfs balance start -dconvert\u003dsingle /mnt/btrfs-progs-tests\n   btrfs balance start -ddevid\u003d1 /mnt/btrfs-progs-tests\n   btrfs balance start -f -mprofiles\u003dsingle /mnt/btrfs-progs-tests\n   btrfs balance start -f -mconvert\u003dsingle /mnt/btrfs-progs-tests\n   btrfs balance start -f -mdevid\u003d1 /mnt/btrfs-progs-tests\n   btrfs balance start -f -sprofiles\u003dsingle /mnt/btrfs-progs-tests\n   btrfs balance start -f -sconvert\u003dsingle /mnt/btrfs-progs-tests\n   btrfs balance start -f -sdevid\u003d1 /mnt/btrfs-progs-tests\n   btrfs device add -f /dev/sda10 /mnt/btrfs-progs-tests\n   btrfs device del /dev/sda10 /mnt/btrfs-progs-tests\n   btrfs device stats /dev/sda6\n   btrfs device stats -z /dev/sda6\n   btrfs device stats /mnt/btrfs-progs-tests\n   btrfs device stats -z /mnt/btrfs-progs-tests\n   btrfs device usage /mnt/btrfs-progs-tests\n   btrfs scrub status /mnt/btrfs-progs-tests\n   btrfs scrub start -B /mnt/btrfs-progs-tests\n   btrfs scrub start -B -d /mnt/btrfs-progs-tests\n   btrfs scrub start -B -r /mnt/btrfs-progs-tests\n   btrfs scrub status /mnt/btrfs-progs-tests\n   btrfs scrub start /mnt/btrfs-progs-tests\n   btrfs scrub status /mnt/btrfs-progs-tests\n   btrfs scrub status /mnt/btrfs-progs-tests\n   btrfs scrub status -d /mnt/btrfs-progs-tests\n   btrfs scrub status -R /mnt/btrfs-progs-tests\n   btrfs scrub status /mnt/btrfs-progs-tests\n   btrfs scrub start /dev/sda6\n   btrfs scrub status /dev/sda6\n   btrfs scrub status /dev/sda6\n   btrfs scrub status -d /dev/sda6\n   btrfs scrub status -R /dev/sda6\n   btrfs scrub status /dev/sda6\n   btrfs subvolume snapshot -r /mnt/btrfs-progs-tests /mnt/btrfs-progs-tests/snap1\n   btrfs send -f /tmp/btrfs_snapshot_test /mnt/btrfs-progs-tests/snap1\n   btrfs send -e -f /tmp/btrfs_snapshot_test /mnt/btrfs-progs-tests/snap1\n   btrfs send --no-data -f /tmp/btrfs_snapshot_test /mnt/btrfs-progs-tests/snap1\n   btrfs quota enable /mnt/btrfs-progs-tests\n   btrfs quota rescan /mnt/btrfs-progs-tests\n   btrfs quota rescan -s /mnt/btrfs-progs-tests\n   btrfs quota rescan -w /mnt/btrfs-progs-tests\n   btrfs quota disable /mnt/btrfs-progs-tests\n   btrfs quota enable /mnt/btrfs-progs-tests\n   btrfs qgroup create 1/5 /mnt/btrfs-progs-tests\n   btrfs qgroup create 2/5 /mnt/btrfs-progs-tests\n   btrfs qgroup assign 1/5 2/5 /mnt/btrfs-progs-tests\n   btrfs qgroup limit 1G 1/5 /mnt/btrfs-progs-tests\n   btrfs qgroup show /mnt/btrfs-progs-tests\n   btrfs qgroup show -p -c -r -e -F -f /mnt/btrfs-progs-tests\n   btrfs qgroup remove 1/5 2/5 /mnt/btrfs-progs-tests\n   btrfs qgroup destroy 2/5 /mnt/btrfs-progs-tests\n   btrfs qgroup destroy 1/5 /mnt/btrfs-progs-tests\n   btrfs quota disable /mnt/btrfs-progs-tests\n   btrfs replace start -f -B /dev/sda6 /dev/sda10 /mnt/btrfs-progs-tests\n   btrfs replace status /mnt/btrfs-progs-tests\n   btrfs replace start -f -B /dev/sda10 /dev/sda6 /mnt/btrfs-progs-tests\n   btrfs-convert /dev/sda6\n   btrfs-convert -r /dev/sda6\n   btrfs-convert -d /dev/sda6\n   btrfs-convert -i /dev/sda6\n   btrfs-convert -n /dev/sda6\n   btrfs-convert -N 4096 /dev/sda6\n   btrfs-convert -l test /dev/sda6\n   btrfs-convert -L /dev/sda6\n   btrfs-convert --no-progress /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -c 0 /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -c 9 /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -t 0 /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -t 1 /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -t 32 /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -w /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   mkfs.btrfs -f /dev/sda6\n   btrfs-image -w /dev/sda6 /tmp/btrfs_image.img\n   btrfs-image -r /tmp/btrfs_image.img /dev/sda6\n   btrfs-image -r -t 0 /tmp/btrfs_image.img /dev/sda6\n   btrfs-image -r -t 1 /tmp/btrfs_image.img /dev/sda6\n   btrfs-image -r -t 32 /tmp/btrfs_image.img /dev/sda6\n   btrfs-image -r -o /tmp/btrfs_image.img /dev/sda6\n3: Manual check relation source by:\n   grep DUP *.c\n   Confirmed that all source are modified.\n4: Use this raid type manually, do some operations in fs,\n   no error found in command and dmesg.\n5: Combination of dup conversion with fsck\n   Confirmed OK with relative kernel patch titled:\n   [PATCH] btrfs: Support convert to -d dup for btrfs-convert\n\n   export TEST_DEV\u003d\u0027/dev/vdc\u0027\n   export TEST_DIR\u003d\u0027/var/ltf/tester/mnt\u0027\n\n   do_dup_test()\n   {\n       local m_from\u003d\"$1\"\n       local d_from\u003d\"$2\"\n       local m_to\u003d\"$3\"\n       local d_to\u003d\"$4\"\n\n       echo \"Convert from -m $m_from -d $d_from to -m $m_to -d $d_to\"\n\n       umount \"$TEST_DIR\" \u0026\u003e/dev/null\n       ./mkfs.btrfs -f -m \"$m_from\" -d \"$d_from\" \"$TEST_DEV\" \u003e/dev/null || return 1\n       mount \"$TEST_DEV\" \"$TEST_DIR\" || return 1\n\n       cp -a /sbin/* \"$TEST_DIR\"\n\n       [[ \"$m_from\" !\u003d \"$m_to\" ]] \u0026\u0026 {\n           ./btrfs balance start -f -mconvert\u003d\"$m_to\" \"$TEST_DIR\" || return 1\n       }\n\n       [[ \"$d_from\" !\u003d \"$d_to\" ]] \u0026\u0026 {\n       local opt\u003d()\n           [[ \"$d_to\" \u003d\u003d single ]] \u0026\u0026 opt+\u003d(\"-f\")\n           ./btrfs balance start \"${opt[@]}\" -dconvert\u003d\"$d_to\" \"$TEST_DIR\" || return 1\n       }\n\n       umount \"$TEST_DIR\" || return 1\n       ./btrfsck \"$TEST_DEV\" || return 1\n       echo\n\n       return 0\n   }\n\n   test_all()\n   {\n       for m_from in single dup; do\n       for d_from in single dup; do\n       for m_to in single dup; do\n       for d_to in single dup; do\n       do_dup_test \"$m_from\" \"$d_from\" \"$m_to\" \"$d_to\" || return 1\n       done\n       done\n       done\n       done\n   }\n\n   test_all\n\nSigned-off-by: Zhao Lei \u003czhaolei@cn.fujitsu.com\u003e\nTested-by: Austin S. Hemmelgarn \u003cahferroin7@gmail.com\u003e\n[ minor updates in the changelog ]\nSigned-off-by: David Sterba \u003cdsterba@suse.com\u003e\n"
    }
  ],
  "next": "ed91cae19808d8d8561ec9e18c8dc0a74643c53f"
}
