)]}'
{
  "commit": "6e34eeddf7deec1444bbddab533f03f520d8458c",
  "tree": "a0e189c329a15363073eab257a3f704cf778107e",
  "parents": [
    "577c9c456f0e1371cbade38eaf91ae8e8a308555"
  ],
  "author": {
    "name": "Theodore Ts\u0027o",
    "email": "tytso@mit.edu",
    "time": "Tue Apr 07 18:12:43 2009 -0400"
  },
  "committer": {
    "name": "Theodore Ts\u0027o",
    "email": "tytso@mit.edu",
    "time": "Wed Apr 08 13:15:09 2009 -0400"
  },
  "message": "block_write_full_page: switch synchronous writes to use WRITE_SYNC_PLUG\n\nNow that we have a distinction between WRITE_SYNC and WRITE_SYNC_PLUG,\nuse WRITE_SYNC_PLUG in __block_write_full_page() to avoid unplugging\nthe block device I/O queue between each page that gets flushed out.\n\nOtherwise, when we run sync() or fsync() and we need to write out a\nlarge number of pages, the block device queue will get unplugged\nbetween for every page that is flushed out, which will be a pretty\nserious performance regression caused by commit a64c8610.\n\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6e35762b6169be2a30a69462764b71967369a1d8",
      "old_mode": 33188,
      "old_path": "fs/buffer.c",
      "new_id": "13edf7ad3ff1524032d043ec10aa3b13465103ef",
      "new_mode": 33188,
      "new_path": "fs/buffer.c"
    }
  ]
}
