)]}'
{
  "commit": "9d8ffbfc1d371131cd2b44dc40f3d2fa1b90faae",
  "tree": "0c66091522d657c1f8fbf585881c8392d72ad547",
  "parents": [
    "ece408818d27f745ef1b05fb3cc99a1e7a5bf580"
  ],
  "author": {
    "name": "Chao Liu",
    "email": "chao.liu.zevorn@gmail.com",
    "time": "Tue Feb 03 22:27:05 2026 +0800"
  },
  "committer": {
    "name": "Fabiano Rosas",
    "email": "farosas@suse.de",
    "time": "Tue Feb 17 09:37:40 2026 -0300"
  },
  "message": "tests/qtest/libqos: Add RISC-V IOMMU helper library\n\nIntroduce a libqos helper module for RISC-V IOMMU testing with\niommu-testdev. The helper provides routines to:\n\n- Build device contexts (DC) and 3-level page tables for SV39/SV39x4\n- Program command queue (CQ), fault queue (FQ), and DDTP registers\n  following the RISC-V IOMMU specification\n- Execute DMA translations and verify results\n\nThe current implementation supports SV39 for S-stage and SV39x4 for\nG-stage translation. Support for SV48/SV48x4/SV57/SV57x4 can be added\nin future patches.\n\nSigned-off-by: Chao Liu \u003cchao.liu.zevorn@gmail.com\u003e\nReviewed-by: Tao Tang \u003ctangtao1634@phytium.com.cn\u003e\nReviewed-by: Fabiano Rosas \u003cfarosas@suse.de\u003e\nReviewed-by: Daniel Henrique Barboza \u003cdaniel.barboza@oss.qualcomm.com\u003e\nLink: https://lore.kernel.org/qemu-devel/a2edf8c44f0bce26dccb91a7d13edb58be50c1a3.1770127918.git.chao.liu.zevorn@gmail.com\nSigned-off-by: Fabiano Rosas \u003cfarosas@suse.de\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d3aa6d6732dc12815c99cf9537e436d9430af037",
      "old_mode": 33188,
      "old_path": "MAINTAINERS",
      "new_id": "950212e32ca9a10855a941dc99e1bb5c8f2de6c0",
      "new_mode": 33188,
      "new_path": "MAINTAINERS"
    },
    {
      "type": "modify",
      "old_id": "b4daec808fee2f989860aa16a885b7e762899f05",
      "old_mode": 33188,
      "old_path": "tests/qtest/libqos/meson.build",
      "new_id": "4a69acad0dc91c52b02bdc5dc638d2f224c45fe8",
      "new_mode": 33188,
      "new_path": "tests/qtest/libqos/meson.build"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "295583f53647fd15f4033edb4936b93fb7df32d4",
      "new_mode": 33188,
      "new_path": "tests/qtest/libqos/qos-riscv-iommu.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "90e69a5d731a1490a82d01f93c19aed244d3cf37",
      "new_mode": 33188,
      "new_path": "tests/qtest/libqos/qos-riscv-iommu.h"
    }
  ]
}
