)]}'
{
  "commit": "b31dc66a54ad986b6b73bdc49c8efc17cbad1833",
  "tree": "5591383c1cbffe11512da889c971f899333f1a44",
  "parents": [
    "271f18f102c789f59644bb6c53a69da1df72b2f4"
  ],
  "author": {
    "name": "Jens Axboe",
    "email": "axboe@suse.de",
    "time": "Tue Jun 13 08:26:10 2006 +0200"
  },
  "committer": {
    "name": "Jens Axboe",
    "email": "axboe@nelson.home.kernel.dk",
    "time": "Fri Jun 23 17:10:39 2006 +0200"
  },
  "message": "[PATCH] Kill PF_SYNCWRITE flag\n\nA process flag to indicate whether we are doing sync io is incredibly\nugly. It also causes performance problems when one does a lot of async\nio and then proceeds to sync it. Part of the io will go out as async,\nand the other part as sync. This causes a disconnect between the\npreviously submitted io and the synced io. For io schedulers such as CFQ,\nthis will cause us lost merges and suboptimal behaviour in scheduling.\n\nRemove PF_SYNCWRITE completely from the fsync/msync paths, and let\nthe O_DIRECT path just directly indicate that the writes are sync\nby using WRITE_SYNC instead.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9b13d72ffefabccbaad1397e102671754d486b72",
      "old_mode": 33188,
      "old_path": "block/as-iosched.c",
      "new_id": "56c99fa037dfa5348c0436aadb123e19c51d4a4b",
      "new_mode": 33188,
      "new_path": "block/as-iosched.c"
    },
    {
      "type": "modify",
      "old_id": "c88f161d3fb3192d18fdc109e23e6b774a8fcb39",
      "old_mode": 33188,
      "old_path": "block/cfq-iosched.c",
      "new_id": "4c4e9cc3ae26890c0b63a8dcbf6aff3c0caa7d7c",
      "new_mode": 33188,
      "new_path": "block/cfq-iosched.c"
    },
    {
      "type": "modify",
      "old_id": "17c42ddd31db1fe302d6f0802e51b72bc8f23096",
      "old_mode": 33188,
      "old_path": "block/ll_rw_blk.c",
      "new_id": "2270bb451385a39e09c16fbde74e4d6c472f0d8f",
      "new_mode": 33188,
      "new_path": "block/ll_rw_blk.c"
    },
    {
      "type": "modify",
      "old_id": "6f887478b148a8b2551c81ea1d3a4900586221b3",
      "old_mode": 33188,
      "old_path": "drivers/usb/gadget/file_storage.c",
      "new_id": "a43dc908ac59218fa564b13a3ce10d3eb312f52a",
      "new_mode": 33188,
      "new_path": "drivers/usb/gadget/file_storage.c"
    },
    {
      "type": "modify",
      "old_id": "23f1f3a68077b87c947a350ee57b30ee3aa94ed6",
      "old_mode": 33188,
      "old_path": "fs/buffer.c",
      "new_id": "373bb6292bdc137a606296c7864093470d41b00f",
      "new_mode": 33188,
      "new_path": "fs/buffer.c"
    },
    {
      "type": "modify",
      "old_id": "b05d1b218776946f4448ba2d0fd51cee477730cf",
      "old_mode": 33188,
      "old_path": "fs/direct-io.c",
      "new_id": "538fb0418fbab7aba852cc298b5a9ded054935f2",
      "new_mode": 33188,
      "new_path": "fs/direct-io.c"
    },
    {
      "type": "modify",
      "old_id": "6db95cf3aaa22dfd8abdfaae7a92313cf10520df",
      "old_mode": 33188,
      "old_path": "fs/fs-writeback.c",
      "new_id": "031b27a4bc9a170a9436f73353e10864fe78d5d1",
      "new_mode": 33188,
      "new_path": "fs/fs-writeback.c"
    },
    {
      "type": "modify",
      "old_id": "3457e7b97363e10cff35c0875743b627e10f44b0",
      "old_mode": 33188,
      "old_path": "include/linux/blkdev.h",
      "new_id": "482a21d676279ccbd3d7421be1630b009db44094",
      "new_mode": 33188,
      "new_path": "include/linux/blkdev.h"
    },
    {
      "type": "modify",
      "old_id": "a9d23c7d1b25d242ebd4b0c1cda7c8eab33639ce",
      "old_mode": 33188,
      "old_path": "include/linux/sched.h",
      "new_id": "38b4791e6a5da17cd527054dcdc4e4cda000db5b",
      "new_mode": 33188,
      "new_path": "include/linux/sched.h"
    },
    {
      "type": "modify",
      "old_id": "bc6c95376366e394f6a21d98a985561184f2f46b",
      "old_mode": 33188,
      "old_path": "mm/msync.c",
      "new_id": "d083544df21bdf7a7f2229d5846a02ba22e1218f",
      "new_mode": 33188,
      "new_path": "mm/msync.c"
    }
  ]
}
