)]}'
{
  "commit": "e6842472eb7f8091c27eb43ad934097ce04d3fbb",
  "tree": "1955782375cc0a83a91aa2e849381efa3a161a63",
  "parents": [
    "db3d76a623b8ce429318cc2491881c02b790dab4"
  ],
  "author": {
    "name": "Steven Rostedt (Red Hat)",
    "email": "rostedt@goodmis.org",
    "time": "Wed Feb 13 15:18:38 2013 -0500"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Mon Mar 04 06:06:38 2013 +0800"
  },
  "message": "ftrace: Call ftrace cleanup module notifier after all other notifiers\n\ncommit 8c189ea64eea01ca20d102ddb74d6936dd16c579 upstream.\n\nCommit: c1bf08ac \"ftrace: Be first to run code modification on modules\"\n\nchanged ftrace module notifier\u0027s priority to INT_MAX in order to\nprocess the ftrace nops before anything else could touch them\n(namely kprobes). This was the correct thing to do.\n\nUnfortunately, the ftrace module notifier also contains the ftrace\nclean up code. As opposed to the set up code, this code should be\nrun *after* all the module notifiers have run in case a module is doing\ncorrect clean-up and unregisters its ftrace hooks. Basically, ftrace\nneeds to do clean up on module removal, as it needs to know about code\nbeing removed so that it doesn\u0027t try to modify that code. But after it\nremoves the module from its records, if a ftrace user tries to remove\na probe, that removal will fail due as the record of that code segment\nno longer exists.\n\nNothing really bad happens if the probe removal is called after ftrace\ndid the clean up, but the ftrace removal function will return an error.\nCorrect code (such as kprobes) will produce a WARN_ON() if it fails\nto remove the probe. As people get annoyed by frivolous warnings, it\u0027s\nbest to do the ftrace clean up after everything else.\n\nBy splitting the ftrace_module_notifier into two notifiers, one that\ndoes the module load setup that is run at high priority, and the other\nthat is called for module clean up that is run at low priority, the\nproblem is solved.\n\nReported-by: Frank Ch. Eigler \u003cfche@redhat.com\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6b194d842b18ea510b9307a7b098aac6140e9b44",
      "old_mode": 33188,
      "old_path": "kernel/trace/ftrace.c",
      "new_id": "4a86e6404085c68c90a0cc26ab92cc4fb761eeea",
      "new_mode": 33188,
      "new_path": "kernel/trace/ftrace.c"
    }
  ]
}
