无法使用gdb写入qemu中的iomem区域

时间:2016-05-12 09:18:25

标签: qemu

我正在尝试在qemu中添加新设备。

在相应的cpu文件中,使用sysbus_mmio_map设置基址。

sysbus_mmio_map(SYS_BUS_DEVICE(&s->brif), 0, BASE_ADDRESS);

在新创建的设备文件中,

memory_region_init_io(&s->iomem, obj, &ops, s, "brif", SIZE);
sysbus_init_mmio((SYS_BUS_DEVICE(obj), &s->iomem);

ops具有相应的读写处理程序。

当我使用gdb访问IO内存区域时,我的读取处理程序被调用,但是当我使用gdb写入IO内存区域时,我的写入处理程序没有被调用。

我错过了什么?

更新:如果我从guest虚拟机内部运行的代码写入IO内存区域,我会得到写处理程序,问题是当我尝试从gdb访问时。

1 个答案:

答案 0 :(得分:0)

我相信这只是一个错误。请查看此bugreport(包含补丁)。