)]}'
{
  "commit": "9cb805fd2674f474d058fee6d7aa9e83fcd3d336",
  "tree": "63344366acae27416cf291b85adee7b556a6e831",
  "parents": [
    "c8e2085d8e7a64d753eb2a43e4aeae674a99d2ff"
  ],
  "author": {
    "name": "Alexey Kardashevskiy",
    "email": "aik@ozlabs.ru",
    "time": "Wed Aug 20 22:16:33 2014 +1000"
  },
  "committer": {
    "name": "Paolo Bonzini",
    "email": "pbonzini@redhat.com",
    "time": "Mon Aug 25 13:25:16 2014 +0200"
  },
  "message": "cpus: Define callback for QEMU \"nmi\" command\n\nThis introduces an NMI (Non Maskable Interrupt) interface with\na single nmi_monitor_handler() method. A machine or a device can\nimplement it. This searches for an QOM object with this interface\nand if it is implemented, calls it. The callback implements an action\nrequired to cause debug crash dump on in-kernel debugger invocation.\nThe callback returns Error**.\n\nThis adds a nmi_monitor_handle() helper which walks through\nall objects to find the interface. The interface method is called\nfor all found instances.\n\nThis adds support for it in qmp_inject_nmi(). Since no architecture\nsupports it at the moment, there is no change in behaviour.\n\nThis changes inject-nmi command description for HMP and QMP.\n\nSigned-off-by: Alexey Kardashevskiy \u003caik@ozlabs.ru\u003e\nReviewed-by: Alexander Graf \u003cagraf@suse.de\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2b5c0bd7c74c07a85ddaf8eda145ef4ad99c003c",
      "old_mode": 33188,
      "old_path": "cpus.c",
      "new_id": "37d90f4e930d67c75150b9c3572024a7dde6ee53",
      "new_mode": 33188,
      "new_path": "cpus.c"
    },
    {
      "type": "modify",
      "old_id": "d0943b1ff320b1fa389ae8fa501246625421ece0",
      "old_mode": 33188,
      "old_path": "hmp-commands.hx",
      "new_id": "f859f8d29f285898dd395d2e95a7265d11dd3c25",
      "new_mode": 33188,
      "new_path": "hmp-commands.hx"
    },
    {
      "type": "modify",
      "old_id": "5377d052e9d817893a581df0d5a565f9de62411d",
      "old_mode": 33188,
      "old_path": "hw/core/Makefile.objs",
      "new_id": "17845df3f045b8194b1e1180e879c831289517a8",
      "new_mode": 33188,
      "new_path": "hw/core/Makefile.objs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3dff020659d05cb549805ea6331512ea375bc1f4",
      "new_mode": 33188,
      "new_path": "hw/core/nmi.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b541772e1d940fe7ee62e30e80d76b7a640067a9",
      "new_mode": 33188,
      "new_path": "include/hw/nmi.h"
    },
    {
      "type": "modify",
      "old_id": "341f417a5f99d4168d4be60a3a6069f6836ddbd2",
      "old_mode": 33188,
      "old_path": "qapi-schema.json",
      "new_id": "689b548abfd6620b3694650563f7fe8b5b27d175",
      "new_mode": 33188,
      "new_path": "qapi-schema.json"
    },
    {
      "type": "modify",
      "old_id": "4be4765f27a75411636134d6636fa2d4e2cd158e",
      "old_mode": 33188,
      "old_path": "qmp-commands.hx",
      "new_id": "7658d4bd24f9f11276716c6d7a9bdff6588a21ca",
      "new_mode": 33188,
      "new_path": "qmp-commands.hx"
    }
  ]
}
