)]}'
{
  "commit": "1b111dc1216be2a89770fdc1ab3dfa8025957442",
  "tree": "22f63616a146378c5d4c2997f36e93dc30b102f7",
  "parents": [
    "061e84f7a469ad1f94f3b5f6a5361b346ab990e8"
  ],
  "author": {
    "name": "Markus Armbruster",
    "email": "armbru@redhat.com",
    "time": "Fri Nov 29 10:43:44 2013 +0100"
  },
  "committer": {
    "name": "Andreas Färber",
    "email": "afaerber@suse.de",
    "time": "Tue Dec 24 17:27:17 2013 +0100"
  },
  "message": "hw: cannot_instantiate_with_device_add_yet due to pointer props\n\nPointer properties can be set only by code, not by device_add.  A\ndevice with a pointer property can work with device_add only when the\nproperty may remain null.\n\nThis is the case for property \"interrupt_vector\" of device\n\"etraxfs,pic\".  Add a comment there.\n\nSet cannot_instantiate_with_device_add_yet for the other devices with\npointer properties, with a comment explaining why.\n\nJuha Riihimäki and Peter Maydell deserve my thanks for making \"pointer\nproperty must not remain null\" blatantly obvious in the OMAP devices.\n\nOnly device \"smbus-eeprom\" is actually changed.  The others are all\nsysbus devices, which get cannot_instantiate_with_device_add_yet set\nin their abstract base\u0027s class init function.  Setting it again in\ntheir class init function is technically redundant, but serves as\ninsurance for when sysbus devices become available with device_add,\nand as documentation.\n\nSigned-off-by: Markus Armbruster \u003carmbru@redhat.com\u003e\nReviewed-by: Edgar E. Iglesias \u003cedgar.iglesias@gmail.com\u003e (for ETRAX)\nSigned-off-by: Andreas Färber \u003cafaerber@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "97194ce7adc4d0bb3e28b9d7c5e432c765ff2091",
      "old_mode": 33188,
      "old_path": "hw/audio/marvell_88w8618.c",
      "new_id": "cdce238f55a481309c189d0e98828dd4c5fd8393",
      "new_mode": 33188,
      "new_path": "hw/audio/marvell_88w8618.c"
    },
    {
      "type": "modify",
      "old_id": "2a92ffb82eea22cfd3044d73503e446c9114d6d5",
      "old_mode": 33188,
      "old_path": "hw/dma/sparc32_dma.c",
      "new_id": "eac338f1bc8cd243f1b1e8c2a30459c6b6498606",
      "new_mode": 33188,
      "new_path": "hw/dma/sparc32_dma.c"
    },
    {
      "type": "modify",
      "old_id": "b8f572bb704b7ca9297ada0e61a780077e7ec3a2",
      "old_mode": 33188,
      "old_path": "hw/gpio/omap_gpio.c",
      "new_id": "938782a45da1171306da7e71858b5e19ee74f902",
      "new_mode": 33188,
      "new_path": "hw/gpio/omap_gpio.c"
    },
    {
      "type": "modify",
      "old_id": "f528b2b38e24ded9189b8d511f460c8f80681b3b",
      "old_mode": 33188,
      "old_path": "hw/i2c/omap_i2c.c",
      "new_id": "2d8e2b7839f9f5096eb59adbb224d9f903d64ac6",
      "new_mode": 33188,
      "new_path": "hw/i2c/omap_i2c.c"
    },
    {
      "type": "modify",
      "old_id": "0154283762e680abf16c3c0b90ad0a09103a5e9e",
      "old_mode": 33188,
      "old_path": "hw/i2c/smbus_eeprom.c",
      "new_id": "0218f8a0ebb9feacc4448534c3b04d60975d3384",
      "new_mode": 33188,
      "new_path": "hw/i2c/smbus_eeprom.c"
    },
    {
      "type": "modify",
      "old_id": "e02da533cbed93d526b82dde9e935049f80a83b9",
      "old_mode": 33188,
      "old_path": "hw/intc/etraxfs_pic.c",
      "new_id": "636262b49fd63d3d8e266fae4674d5af598c0646",
      "new_mode": 33188,
      "new_path": "hw/intc/etraxfs_pic.c"
    },
    {
      "type": "modify",
      "old_id": "42e00bc4b8a7c8aa3b1f6c590f7f4ceef391c733",
      "old_mode": 33188,
      "old_path": "hw/intc/grlib_irqmp.c",
      "new_id": "d1813f76b61c7583f0e7cd70b0ffe40fce4e68c2",
      "new_mode": 33188,
      "new_path": "hw/intc/grlib_irqmp.c"
    },
    {
      "type": "modify",
      "old_id": "7dd63da802920cb0e4a1796f4bfd4d9c86a99393",
      "old_mode": 33188,
      "old_path": "hw/intc/omap_intc.c",
      "new_id": "ad3931c1125ee966d6f02cabadf8089932f56069",
      "new_mode": 33188,
      "new_path": "hw/intc/omap_intc.c"
    },
    {
      "type": "modify",
      "old_id": "78ebbbca72d7ecf7eea9038e652f476bde3edc19",
      "old_mode": 33188,
      "old_path": "hw/net/etraxfs_eth.c",
      "new_id": "6a3c86db487eb9a6c4a74e0c27df9631b4d08a77",
      "new_mode": 33188,
      "new_path": "hw/net/etraxfs_eth.c"
    },
    {
      "type": "modify",
      "old_id": "e339f029b7d0321d06b7b3b2be9e6c755d412230",
      "old_mode": 33188,
      "old_path": "hw/net/lance.c",
      "new_id": "fe18564e1ea6f7bd8e66904b8b3ff9c87ceadd54",
      "new_mode": 33188,
      "new_path": "hw/net/lance.c"
    }
  ]
}
