)]}'
{
  "commit": "bb7417addaceb9ea585a7fc324e5c5d03c18e97f",
  "tree": "043080ead369e71b749af4a67880aafd2ba39daa",
  "parents": [
    "9949c1cecf9b99df7cc2e298dfadfec371c9d55b"
  ],
  "author": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Thu Jun 13 18:46:57 2019 -0700"
  },
  "committer": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Thu Jun 13 18:46:57 2019 -0700"
  },
  "message": "blkcg: implement BPF_PROG_TYPE_IO_COST\n\nCurrently, blkcg implements one builtin IO cost model - lienar.  To\nallow customization and experimentation, allow a bpf program to\noverride IO cost model.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "15b3de28a2642305ac5d2ed9226f86d45af22698",
      "old_mode": 33188,
      "old_path": "block/Kconfig",
      "new_id": "2882fdd573cab448c8ce9784870f35cffb9ed5a2",
      "new_mode": 33188,
      "new_path": "block/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "3d9fc1a631be676dd0791d41730361fa9dcea719",
      "old_mode": 33188,
      "old_path": "block/blk-ioweight.c",
      "new_id": "de4fc57bb77ce272ebdb0c748c984c24cec32523",
      "new_mode": 33188,
      "new_path": "block/blk-ioweight.c"
    },
    {
      "type": "modify",
      "old_id": "7814aa207153c0bd5cee7ea8f3b05745ee49e33a",
      "old_mode": 33188,
      "old_path": "block/blk.h",
      "new_id": "98fa2283534fc59297a9cc0b191dd4ccdb70972b",
      "new_mode": 33188,
      "new_path": "block/blk.h"
    },
    {
      "type": "modify",
      "old_id": "15a0eb80ada902a6c7a0cf8816943b385929edbe",
      "old_mode": 33188,
      "old_path": "block/ioctl.c",
      "new_id": "89d48d7dea0fa6d7ad6a04e598ed2a89f7c46615",
      "new_mode": 33188,
      "new_path": "block/ioctl.c"
    },
    {
      "type": "modify",
      "old_id": "5a9975678d6fcac4d54138826d2de88d2d6ebf0f",
      "old_mode": 33188,
      "old_path": "include/linux/bpf_types.h",
      "new_id": "fb0a91c655c2cf50621f7be20652151a7aa4c418",
      "new_mode": 33188,
      "new_path": "include/linux/bpf_types.h"
    },
    {
      "type": "modify",
      "old_id": "63e0cf66f01a9698ff6bc41ac5492809bb83d834",
      "old_mode": 33188,
      "old_path": "include/uapi/linux/bpf.h",
      "new_id": "1664ef4ccc79c1163dde6f460e572606c18247e3",
      "new_mode": 33188,
      "new_path": "include/uapi/linux/bpf.h"
    },
    {
      "type": "modify",
      "old_id": "59c71fa8c553a394d516502538c188aa01502e2c",
      "old_mode": 33188,
      "old_path": "include/uapi/linux/fs.h",
      "new_id": "ddf3c80c940764f17984276e5a507401ba8e363b",
      "new_mode": 33188,
      "new_path": "include/uapi/linux/fs.h"
    },
    {
      "type": "modify",
      "old_id": "d672d9086fff93a0b3660dc91c6288ac3e5a82e4",
      "old_mode": 33188,
      "old_path": "tools/bpf/bpftool/feature.c",
      "new_id": "beeac8ac48f36c76accb0ebe4e5822dd67b3b3a8",
      "new_mode": 33188,
      "new_path": "tools/bpf/bpftool/feature.c"
    },
    {
      "type": "modify",
      "old_id": "3d63feb7f852fb8cb9a23a5b6b51b25d860ffceb",
      "old_mode": 33188,
      "old_path": "tools/bpf/bpftool/main.h",
      "new_id": "298e53f35573e26226fc6a642d07077acd7027ab",
      "new_mode": 33188,
      "new_path": "tools/bpf/bpftool/main.h"
    },
    {
      "type": "modify",
      "old_id": "63e0cf66f01a9698ff6bc41ac5492809bb83d834",
      "old_mode": 33188,
      "old_path": "tools/include/uapi/linux/bpf.h",
      "new_id": "1664ef4ccc79c1163dde6f460e572606c18247e3",
      "new_mode": 33188,
      "new_path": "tools/include/uapi/linux/bpf.h"
    },
    {
      "type": "modify",
      "old_id": "59c71fa8c553a394d516502538c188aa01502e2c",
      "old_mode": 33188,
      "old_path": "tools/include/uapi/linux/fs.h",
      "new_id": "ddf3c80c940764f17984276e5a507401ba8e363b",
      "new_mode": 33188,
      "new_path": "tools/include/uapi/linux/fs.h"
    },
    {
      "type": "modify",
      "old_id": "197b574406b3ac6599bb81e395ff88d9c0374661",
      "old_mode": 33188,
      "old_path": "tools/lib/bpf/libbpf.c",
      "new_id": "6dbee409f3b0cf4523d72423fd4735d77c1ea0be",
      "new_mode": 33188,
      "new_path": "tools/lib/bpf/libbpf.c"
    },
    {
      "type": "modify",
      "old_id": "5e2aa83f637a4726dd9b6c0b8628f1cd83bc225d",
      "old_mode": 33188,
      "old_path": "tools/lib/bpf/libbpf_probes.c",
      "new_id": "024831756151912768a9f6cea85665880cc1d383",
      "new_mode": 33188,
      "new_path": "tools/lib/bpf/libbpf_probes.c"
    },
    {
      "type": "modify",
      "old_id": "66f2dca1dee19cf73596757d8b39eab7b3651687",
      "old_mode": 33188,
      "old_path": "tools/testing/selftests/bpf/Makefile",
      "new_id": "c28f308c9575cca0ed33cc8c0da1517c12635340",
      "new_mode": 33188,
      "new_path": "tools/testing/selftests/bpf/Makefile"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d9d3eb70d0ac4b5bc461d2535e840dc1896d4be8",
      "new_mode": 33188,
      "new_path": "tools/testing/selftests/bpf/iocost_ctrl.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4e202c5956586395497127a39298d8925ab82822",
      "new_mode": 33188,
      "new_path": "tools/testing/selftests/bpf/progs/iocost_linear_prog.c"
    }
  ]
}
