)]}'
{
  "commit": "45876233605c268e929a7875081e129debe34bdc",
  "tree": "c16487f8e8428e86ecf9802c8ba0da82225622ee",
  "parents": [
    "7f63c41c6c57371a0931da3940c6620c2301442c"
  ],
  "author": {
    "name": "Jeremy Fitzhardinge",
    "email": "jeremy@goop.org",
    "time": "Wed May 02 19:27:13 2007 +0200"
  },
  "committer": {
    "name": "Andi Kleen",
    "email": "andi@basil.nowhere.org",
    "time": "Wed May 02 19:27:13 2007 +0200"
  },
  "message": "[PATCH] i386: PARAVIRT: use paravirt_nop to consistently mark no-op operations\n\nAdd a _paravirt_nop function for use as a stub for no-op operations,\nand paravirt_nop #defined void * version to make using it easier\n(since all its uses are as a void *).\n\nThis is useful to allow the patcher to automatically identify noop\noperations so it can simply nop out the callsite.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n[mingo] but only as a cleanup of the current open-coded (void *) casts.\nMy problem with this is that it loses the types. Not that there is much\nto check for, but still, this adds some assumptions about how function\ncalls look like\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "47698756aec5f215cb8f6067d53fcbf5899f1f6e",
      "old_mode": 33188,
      "old_path": "arch/i386/kernel/paravirt.c",
      "new_id": "3fdbd1f62379e422c2c4c30494c0396eb3e151bd",
      "new_mode": 33188,
      "new_path": "arch/i386/kernel/paravirt.c"
    },
    {
      "type": "modify",
      "old_id": "32acebce9ae25acce9120148a721c823ba489232",
      "old_mode": 33188,
      "old_path": "include/asm-i386/paravirt.h",
      "new_id": "f0bdaea6235d0c142c7d71377fb079dacd99ee92",
      "new_mode": 33188,
      "new_path": "include/asm-i386/paravirt.h"
    }
  ]
}
