)]}'
{
  "commit": "1bb34a412750291e4e5e9f1d0fe7ae1b7e976098",
  "tree": "00d481a2ff4302f444fbf7c31e5e661f79dc85a9",
  "parents": [
    "9c0cbd54ce0397017a823484f9a8054ab369b8a2"
  ],
  "author": {
    "name": "john stultz",
    "email": "johnstul@us.ibm.com",
    "time": "Sun Oct 30 15:01:42 2005 -0800"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@g5.osdl.org",
    "time": "Sun Oct 30 17:37:18 2005 -0800"
  },
  "message": "[PATCH] NTP shift_right cleanup\n\nCreate a macro shift_right() that avoids the numerous ugly conditionals in the\nNTP code that look like:\n\n        if(a \u003c 0)\n                b \u003d -(-a \u003e\u003e shift);\n        else\n                b \u003d a \u003e\u003e shift;\n\nReplacing it with:\n\n        b \u003d shift_right(a, shift);\n\nThis should have zero effect on the logic, however it should probably have\na bit of testing just to be sure.\n\nAlso replace open-coded min/max with the macros.\n\nSigned-off-by : John Stultz \u003cjohnstul@us.ibm.com\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7e050a2cc35be69f2685309ff9c445adbba8ae68",
      "old_mode": 33188,
      "old_path": "include/linux/timex.h",
      "new_id": "04a4a8cb4ed37ab150b6575b3ae9f9268967e5e7",
      "new_mode": 33188,
      "new_path": "include/linux/timex.h"
    },
    {
      "type": "modify",
      "old_id": "a3c2100470e106becb5155d091e2bf9c6d1dee7c",
      "old_mode": 33188,
      "old_path": "kernel/time.c",
      "new_id": "245d595a13cb9f566f67c2ac6ab6dfb8c0af1143",
      "new_mode": 33188,
      "new_path": "kernel/time.c"
    },
    {
      "type": "modify",
      "old_id": "6ed1a826e5ced0f3812bdc5126cd46ada4ef92eb",
      "old_mode": 33188,
      "old_path": "kernel/timer.c",
      "new_id": "6b94adb45b03b0ccd1a239470347087393c8f886",
      "new_mode": 33188,
      "new_path": "kernel/timer.c"
    }
  ]
}
