)]}'
{
  "commit": "9a98e03cc145c994da824dac7602334f50feb670",
  "tree": "66ab8762b473ea81531aa17395e9678beae22f61",
  "parents": [
    "04aab9b2006bbdeff78dc162f206fdfebeca97d9"
  ],
  "author": {
    "name": "Oleg Nesterov",
    "email": "oleg@redhat.com",
    "time": "Fri Nov 23 20:15:17 2012 +0100"
  },
  "committer": {
    "name": "Oleg Nesterov",
    "email": "oleg@redhat.com",
    "time": "Fri Feb 08 17:47:03 2013 +0100"
  },
  "message": "uprobes: _register() should always do register_for_each_vma(true)\n\nTo support the filtering uprobe_register() should do\nregister_for_each_vma(true) every time the new consumer comes,\nwe need to install the previously nacked breakpoints.\n\nNote:\n\t- uprobes_mutex[] should die, what it actually protects is\n\t  alloc_uprobe().\n\n\t- UPROBE_RUN_HANDLER should die too, obviously it can\u0027t work\n\t  unless uprobe has a single consumer. The consumer should\n\t  serialize with _register/_unregister itself. Or this flag\n\t  should live in uprobe_consumer-\u003estate.\n\n\t- Perhaps we can do some optimizations later. For example, if\n\t  filter_chain() never returns false uprobe can record this\n\t  fact and avoid the unnecessary register_for_each_vma().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9401990846398616cc67bae2cfd10723af22d531",
      "old_mode": 33188,
      "old_path": "kernel/events/uprobes.c",
      "new_id": "d1d1394bca8b25af26f4df57be31c14f97452e1c",
      "new_mode": 33188,
      "new_path": "kernel/events/uprobes.c"
    }
  ]
}
