)]}'
{
  "commit": "edded454067bd9bda8a4a2a3ef54ae19474407da",
  "tree": "2d04e553becebb144efeb0ca85b53ba45c249bd3",
  "parents": [
    "5fa45de5623abd3a6d0b9575a4f014cbfe886b36"
  ],
  "author": {
    "name": "David Gibson",
    "email": "david@gibson.dropbear.id.au",
    "time": "Wed Jun 27 14:50:46 2012 +1000"
  },
  "committer": {
    "name": "Anthony Liguori",
    "email": "aliguori@us.ibm.com",
    "time": "Wed Jun 27 16:33:26 2012 -0500"
  },
  "message": "pseries: Implement IOMMU and DMA for PAPR PCI devices\n\nCurrently the pseries machine emulation does not support DMA for emulated\nPCI devices, because the PAPR spec always requires a (guest visible,\nparavirtualized) IOMMU which was not implemented.  Now that we have\ninfrastructure for IOMMU emulation, we can correct this and allow PCI DMA\nfor pseries.\n\nWith the existing PAPR IOMMU code used for VIO devices, this is almost\ntrivial. We use a single DMAContext for each (virtual) PCI host bridge,\nwhich is the usual configuration on real PAPR machines (which often have\n_many_ PCI host bridges).\n\nCc: Alex Graf \u003cagraf@suse.de\u003e\n\nSigned-off-by: Alexey Kardashevskiy \u003caik@ozlabs.ru\u003e\nSigned-off-by: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Anthony Liguori \u003caliguori@us.ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1c4d85f97784916ba20844978d5d2c89981ff47d",
      "old_mode": 33188,
      "old_path": "hw/spapr.h",
      "new_id": "9153f29a60f62e5cfac2f6d9a4e13209ff180b59",
      "new_mode": 33188,
      "new_path": "hw/spapr.h"
    },
    {
      "type": "modify",
      "old_id": "5a769b9f4ab54f629823964720dd3ba3734cf9c5",
      "old_mode": 33188,
      "old_path": "hw/spapr_iommu.c",
      "new_id": "388ffa4b2279308f37221b94ecc93178c813f5e2",
      "new_mode": 33188,
      "new_path": "hw/spapr_iommu.c"
    },
    {
      "type": "modify",
      "old_id": "97d417a99713cb56658c106afd6361f41fcf3198",
      "old_mode": 33188,
      "old_path": "hw/spapr_pci.c",
      "new_id": "47ba5ff770c56237fefddedcf524b85fd95a6540",
      "new_mode": 33188,
      "new_path": "hw/spapr_pci.c"
    },
    {
      "type": "modify",
      "old_id": "f54c2e81085b2a831bd9a9bd13313e9aad7530b7",
      "old_mode": 33188,
      "old_path": "hw/spapr_pci.h",
      "new_id": "d9e46e22e32134b78caca0dcc35f86f00e5ceb29",
      "new_mode": 33188,
      "new_path": "hw/spapr_pci.h"
    }
  ]
}
