【QEMU系统分析之实例篇(六)】

ops/2024/10/21 3:47:28/

系列文章目录

第六章 QEMU系统仿真的机器创建分析实例


文章目录

  • 系列文章目录
    • 第六章 QEMU系统仿真的机器创建分析实例
  • 前言
  • 一、QEMU是什么?
  • 二、QEMU系统仿真的机器创建分析实例
    • 1.系统仿真的命令行参数
    • 2.目标机器创建过程
    • 3.static void pc_machine_initfn(Object *obj)
      • pc_system_flash_create(pcms)
      • pc_pflash_create()
    • 调试输出
  • 总结


前言

本文以 QEMU 8.2.2 为例,分析其作为系统仿真工具的工作过程,并为读者展示各种 QEMU 系统仿真的启动配置实例。
本文读者需要具备一定的 QEMU 系统仿真使用经验,并对 C 语言编程有一定了解。


一、QEMU是什么?

QEMU 是一个通用且开源的机器模拟器和虚拟机。
其官方主页是:https://www.qemu.org/


二、QEMU系统仿真的机器创建分析实例

1.系统仿真的命令行参数

QEMU 作为系统仿真工具,其入口代码在 system/main.c 文件中,初始化函数 qemu_init() 的实现在 system/vl.c 文件中。
本文将分析以下命令创建目标系统机器的运行过程,读者需要对 QEMU 系统启动过程的程序代码有所了解,相关内容可以参考《QEMU系统分析之启动篇》系列文章。

..\qemu\8.2.2-qkd\qemu-system-x86_64.exe -cpu "Penryn" -M  "q35,accel=whpx" -m "6G" -nodefaults

2.目标机器创建过程

这部分代码在 system/vl.c 文件中,实现如下:

int qemu_init(int argc, char **argv)
{
...qemu_create_machine(machine_opts_dict);
...
}

进入 qemu_create_machine() 后,第一步就是获取目标机器类型,代码如下:

static void qemu_create_machine(QDict *qdict)
{MachineClass *machine_class = select_machine(qdict, &error_fatal);
...
}

根据前文调试我们已经知道,目标机器 “pc-q35-8.2-machine” 的初始化工作工作主要在 /hw/i386/pc.c 文件的 static void pc_machine_initfn() 函数中完成,本文将逐条分析该函数的执行过程。


3.static void pc_machine_initfn(Object *obj)

函数 static void pc_machine_initfn() 在 /hw/i386/pc.c 文件,定义如下:

static void pc_machine_initfn(Object *obj)
{HUEDBG("enter\n");PCMachineState *pcms = PC_MACHINE(obj);PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);#ifdef CONFIG_VMPORTpcms->vmport = ON_OFF_AUTO_AUTO;
#elsepcms->vmport = ON_OFF_AUTO_OFF;
#endif /* CONFIG_VMPORT */pcms->max_ram_below_4g = 0; /* use default */pcms->smbios_entry_point_type = pcmc->default_smbios_ep_type;pcms->south_bridge = pcmc->default_south_bridge;/* acpi build is enabled by default if machine supports it */pcms->acpi_build_enabled = pcmc->has_acpi_build;pcms->smbus_enabled = true;pcms->sata_enabled = true;pcms->i8042_enabled = true;pcms->max_fw_size = 8 * MiB;
#ifdef CONFIG_HPETpcms->hpet_enabled = true;
#endifpcms->default_bus_bypass_iommu = false;pc_system_flash_create(pcms);pcms->pcspk = isa_new(TYPE_PC_SPEAKER);object_property_add_alias(OBJECT(pcms), "pcspk-audiodev",OBJECT(pcms->pcspk), "audiodev");cxl_machine_init(obj, &pcms->cxl_devices_state);HUEDBG("return\n");
}

前文我们已经分析了 pcms 和 pcmc 的生成过程,接下来我们进入函数 pc_system_flash_create(pcms) 创建 pflash 设备。

pc_system_flash_create(pcms)

函数 pc_system_flash_create() 在 /hw/i386/pc_sysfw.c 文件中,定义如下:

void pc_system_flash_create(PCMachineState *pcms)
{PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);if (pcmc->pci_enabled) {pcms->flash[0] = pc_pflash_create(pcms, "system.flash0","pflash0");pcms->flash[1] = pc_pflash_create(pcms, "system.flash1","pflash1");}
}

在 PCI 开启的情况下,将调用函数 pc_pflash_create() 完成 flash 的创建工作。


pc_pflash_create()

函数 pc_pflash_create() 在 /hw/i386/pc_sysfw.c 文件中,定义如下:

static PFlashCFI01 *pc_pflash_create(PCMachineState *pcms,const char *name,const char *alias_prop_name)
{
...huedbg_flag = 1;HUEDBG("run\n");pc_system_flash_create(pcms);HUEDBG("run\n");huedbg_flag = 0;
...
}void pc_system_flash_create(PCMachineState *pcms)
{HUEDBG("enter\n");PCMachineClass *pcmc = PC_MACHINE_GET_CLASS(pcms);HUEDBG("pcmc->pci_enabled=[%d]\n", pcmc->pci_enabled);if (pcmc->pci_enabled) {HUEDBG("run\n");pcms->flash[0] = pc_pflash_create(pcms, "system.flash0","pflash0");huedbg_dump_PFlashCFI01(pcms->flash[0]);HUEDBG("run\n");pcms->flash[1] = pc_pflash_create(pcms, "system.flash1","pflash1");huedbg_dump_PFlashCFI01(pcms->flash[1]);}HUEDBG("return\n");
}

函数 huedbg_dump_PFlashCFI01() 定义如下:

void huedbg_dump_PFlashCFI01(PFlashCFI01 *pfl)
{int i;
#if 0
// from hw/block/plash_cfi01.c
struct PFlashCFI01 {/*< private >*/SysBusDevice parent_obj;/*< public >*/BlockBackend *blk;uint32_t nb_blocs;uint64_t sector_len;uint8_t bank_width;uint8_t device_width; /* If 0, device width not specified. */uint8_t max_device_width;  /* max device width in bytes */uint32_t features;uint8_t wcycle; /* if 0, the flash is read normally */bool ro;uint8_t cmd;uint8_t status;uint16_t ident0;uint16_t ident1;uint16_t ident2;uint16_t ident3;uint8_t cfi_table[0x52];uint64_t counter;uint32_t writeblock_size;MemoryRegion mem;char *name;void *storage;VMChangeStateEntry *vmstate;bool old_multiple_chip_handling;/* block update buffer */unsigned char *blk_bytes;uint32_t blk_offset;
};
#endifHUEDBG("blk=[%p]\n", pfl->blk);HUEDBG("sector_len=[%llu]\n", pfl->sector_len);HUEDBG("nb_blocks=[%u]\n", pfl->nb_blocs);HUEDBG("bank_width=[%u]\n", pfl->bank_width);HUEDBG("device_width=[%u]\n", pfl->device_width);HUEDBG("max_device_width=[%u]\n", pfl->max_device_width);HUEDBG("features=[%u]\n", pfl->features);HUEDBG("wcycle=[%u]\n", pfl->wcycle);HUEDBG("ro=[%u]\n", pfl->ro);HUEDBG("cmd=[%u]\n", pfl->cmd);HUEDBG("status=[%u]\n", pfl->status);HUEDBG("ident0=[%u]\n", pfl->ident0);HUEDBG("ident1=[%u]\n", pfl->ident1);HUEDBG("ident2=[%u]\n", pfl->ident2);HUEDBG("ident3=[%u]\n", pfl->ident3);HUEDBG("cfi_table=[\n");for (i = 1; i <= sizeof(pfl->cfi_table); i++) {if (((i % 16) == 0) || (i == sizeof(pfl->cfi_table))) {HUEDBG_RAW("%02x\n", pfl->cfi_table[i]);} else {HUEDBG_RAW("%02x ", pfl->cfi_table[i]);}}HUEDBG("]=cfi_table\n");HUEDBG("counter=[%llu]\n", pfl->counter);HUEDBG("writeblock_size=[%u]\n", pfl->writeblock_size);HUEDBG("mem=[%p]\n", &pfl->mem);huedbg_dump_MemoryRegion(&pfl->mem);HUEDBG("name=[%s]\n", pfl->name);HUEDBG("storage=[%p]\n", pfl->storage);HUEDBG("vmstate=[%p]\n", pfl->vmstate);HUEDBG("old_multiple_chip_handling=[%u]\n", pfl->old_multiple_chip_handling);HUEDBG("blk_bytes=[%p]\n", pfl->blk_bytes);HUEDBG("blk_offset=[%u]\n", pfl->blk_offset);
}

调试输出

运行后结果如下:

D:\qkd-app\vmos>..\qemu\8.2.2-qkd\qemu-system-x86_64.exe -cpu "Penryn" -M  "q35,accel=whpx,smm=off" -m "6G" -audio "sdl,model=hda" -vga "std" -L "data" -nodefaults
[24644]../hw/i386/pc.c/pc_machine_initfn(1756):run
[24644]../hw/i386/pc_sysfw.c/pc_system_flash_create(106):enter
[24644]../qom/object.c/type_table_lookup(103):lookup type(generic-pc-machine) in hash table
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../hw/i386/pc_sysfw.c/pc_system_flash_create(109):pcmc->pci_enabled=[1]
[24644]../hw/i386/pc_sysfw.c/pc_system_flash_create(112):run
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(81):enter
[24644]../qom/object.c/type_table_lookup(103):lookup type(cfi.pflash01) in hash table
[24644]../qom/object.c/type_table_lookup(103):lookup type(cfi.pflash01) in hash table
[24644]../qom/object.c/object_new_with_type(789):try type_initialize(cfi.pflash01)
[24644]../qom/object.c/object_new_with_type(799):obj(cfi.pflash01) alloc
[24644]../qom/object.c/object_new_with_type(808):try object_initialize_with_type(cfi.pflash01)
[24644]../qom/object.c/object_initialize_with_type(568):obj with type(cfi.pflash01) enter
[24644]../qom/object.c/object_initialize_with_type(576):mapping obj(cfi.pflash01).class with type(cfi.pflash01).class
[24644]../qom/object.c/object_initialize_with_type(579):try object_class_property_init_all(cfi.pflash01)
[24644]../qom/object.c/object_class_property_init_all(552):obj(cfi.pflash01) enter
[24644]../qom/object.c/object_class_property_iter_init(1438):objclass{cfi.pflash01} enter
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_property_iter_init(1441):objclass{cfi.pflash01} return
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id1] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id1) init()
[24644]../qom/object.c/type_table_lookup(103):lookup type(device) in hash table
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id1) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id0] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id0) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id0) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[width] type=[uint8] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(width) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(width) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[device-width] type=[uint8] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(device-width) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(device-width) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[sector-length] type=[uint64] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(sector-length) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(sector-length) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[drive] type=[str] desc=[Node name or ID of a block device to use as a backend] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[name] type=[str] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[old-multiple-chip-handling] type=[bool] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(old-multiple-chip-handling) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(old-multiple-chip-handling) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[max-device-width] type=[uint8] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(max-device-width) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(max-device-width) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[num-blocks] type=[uint32] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(num-blocks) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(num-blocks) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[big-endian] type=[bool] desc=[on/off] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(big-endian) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(big-endian) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[secure] type=[bool] desc=[on/off] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(secure) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(secure) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id2] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id2) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id2) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id3] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id3) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id3) init()
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[hotpluggable] type=[bool] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[hotplugged] type=[bool] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[realized] type=[bool] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[parent_bus] type=[link<bus>] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[type] type=[string] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(563):obj(cfi.pflash01) return
[24644]../qom/object.c/object_initialize_with_type(583):try object_init_with_type(cfi.pflash01)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[cfi.pflash01] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[sys-bus-device] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[device] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[object] enter
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[object] return
[24644]../qom/object.c/object_init_with_type(423):name=[device] ti->instance_init() before
[24644]../qom/object.c/type_table_lookup(103):lookup type(device) in hash table
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_init_with_type(425):name=[device] ti->instance_init() after
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[device] return
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[sys-bus-device] return
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[cfi.pflash01] return
[24644]../qom/object.c/object_initialize_with_type(585):try object_post_init_with_type(cfi.pflash01)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[cfi.pflash01] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[sys-bus-device] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[device] enter
[24644]../qom/object.c/object_post_init_with_type(436):name=[device] ti->instance_post_init() before
[24644]../qom/object.c/object_post_init_with_type(438):name=[device] ti->instance_post_init() after
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[object] enter
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_initialize_with_type(587):obj(cfi.pflash01) return
[24644]../qom/object.c/object_new_with_type(812):obj(cfi.pflash01) return
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(84):run
[24644]../hw/core/qdev-properties.c/qdev_prop_set_uint64(841):name=[sector-length], value=[4096]
[24644]../qom/qom-qobject.c/object_property_set_qobject(26):name=[sector-length] enter!
[24644]../qom/object.c/object_property_set(1505):name=[sector-length] enter!
[24644]../qom/object.c/object_property_set(1507):name=[sector-length] run!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_set(1509):name=[sector-length] run!
[24644]../qom/object.c/object_property_set(1522):name=[sector-length] run!
[24644]../qom/object.c/object_property_set(1524):name=[sector-length] return!
[24644]../qom/qom-qobject.c/object_property_set_qobject(33):name=[sector-length] return!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(86):run
[24644]../hw/core/qdev-properties.c/qdev_prop_set_uint8(817):name=[width], value=[1]
[24644]../qom/qom-qobject.c/object_property_set_qobject(26):name=[width] enter!
[24644]../qom/object.c/object_property_set(1505):name=[width] enter!
[24644]../qom/object.c/object_property_set(1507):name=[width] run!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_set(1509):name=[width] run!
[24644]../qom/object.c/object_property_set(1522):name=[width] run!
[24644]../qom/object.c/object_property_set(1524):name=[width] return!
[24644]../qom/qom-qobject.c/object_property_set_qobject(33):name=[width] return!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(88):run
[24644]../hw/core/qdev-properties.c/qdev_prop_set_string(847):name=[name], value=[system.flash0]
[24644]../qom/qom-qobject.c/object_property_set_qobject(26):name=[name] enter!
[24644]../qom/object.c/object_property_set(1505):name=[name] enter!
[24644]../qom/object.c/object_property_set(1507):name=[name] run!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_set(1509):name=[name] run!
[24644]../qom/object.c/object_property_set(1522):name=[name] run!
[24644]../qom/object.c/object_property_set(1524):name=[name] return!
[24644]../qom/qom-qobject.c/object_property_set_qobject(33):name=[name] return!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(90):run
[24644]../qom/object.c/object_property_try_add(1307):name=[system.flash0] enter!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(pc-q35-8.2-machine) has parent(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(pc-q35-8.2-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(generic-pc-machine) has parent(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(generic-pc-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(x86-machine) has parent(machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(x86-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(machine) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_try_add(1348):name=[system.flash0] return-3!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(92):run
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_try_add(1307):name=[pflash0] enter!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(pc-q35-8.2-machine) has parent(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(pc-q35-8.2-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(generic-pc-machine) has parent(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(generic-pc-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(x86-machine) has parent(machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(x86-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(machine) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_try_add(1348):name=[pflash0] return-3!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(pc-q35-8.2-machine) has parent(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(pc-q35-8.2-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(generic-pc-machine) has parent(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(generic-pc-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(x86-machine) has parent(machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(x86-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(machine) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(100):return
[24644]../qom/object.c/type_table_lookup(103):lookup type(cfi.pflash01) in hash table
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(145):blk=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(146):sector_len=[4096]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(147):nb_blocks=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(148):bank_width=[1]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(149):device_width=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(150):max_device_width=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(151):features=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(152):wcycle=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(153):ro=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(154):cmd=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(155):status=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(156):ident0=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(157):ident1=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(158):ident2=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(159):ident3=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(160):cfi_table=[
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(168):]=cfi_table
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(169):counter=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(170):writeblock_size=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(171):mem=[000001461886ad30]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(67):romd_mode=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(68):ram=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(69):subpage=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(70):readonly=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(71):nonvolatile=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(72):rom_device=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(73):flush_coalesced_mmio=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(74):unmergeable=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(75):dirty_log_mask=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(76):is_iommu=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(77):ram_block=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(78):owner=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(79):dev=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(80):ops=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(81):opaque=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(82):container=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(83):mapped_via_alias=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(84):size=[00000000000000000000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(85):addr=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(86):destructor=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(87):align=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(88):terminates=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(89):ram_device=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(90):enabled=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(91):vga_logging_count=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(92):alias=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(93):alias_offset=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(94):priority=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(98):name=[(null)]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(99):ioeventfd_nb=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(100):ioeventfds=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(101):rdm=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(102):disable_reentrancy_guard=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(173):name=[system.flash0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(174):storage=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(175):vmstate=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(176):old_multiple_chip_handling=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(177):blk_bytes=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(178):blk_offset=[0]
[24644]../hw/i386/pc_sysfw.c/pc_system_flash_create(116):run
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(81):enter
[24644]../qom/object.c/type_table_lookup(103):lookup type(cfi.pflash01) in hash table
[24644]../qom/object.c/type_table_lookup(103):lookup type(cfi.pflash01) in hash table
[24644]../qom/object.c/object_new_with_type(789):try type_initialize(cfi.pflash01)
[24644]../qom/object.c/object_new_with_type(799):obj(cfi.pflash01) alloc
[24644]../qom/object.c/object_new_with_type(808):try object_initialize_with_type(cfi.pflash01)
[24644]../qom/object.c/object_initialize_with_type(568):obj with type(cfi.pflash01) enter
[24644]../qom/object.c/object_initialize_with_type(576):mapping obj(cfi.pflash01).class with type(cfi.pflash01).class
[24644]../qom/object.c/object_initialize_with_type(579):try object_class_property_init_all(cfi.pflash01)
[24644]../qom/object.c/object_class_property_init_all(552):obj(cfi.pflash01) enter
[24644]../qom/object.c/object_class_property_iter_init(1438):objclass{cfi.pflash01} enter
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_property_iter_init(1441):objclass{cfi.pflash01} return
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id1] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id1) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id1) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id0] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id0) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id0) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[width] type=[uint8] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(width) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(width) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[device-width] type=[uint8] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(device-width) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(device-width) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[sector-length] type=[uint64] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(sector-length) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(sector-length) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[drive] type=[str] desc=[Node name or ID of a block device to use as a backend] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[name] type=[str] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[old-multiple-chip-handling] type=[bool] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(old-multiple-chip-handling) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(old-multiple-chip-handling) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[max-device-width] type=[uint8] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(max-device-width) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(max-device-width) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[num-blocks] type=[uint32] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(num-blocks) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(num-blocks) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[big-endian] type=[bool] desc=[on/off] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(big-endian) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(big-endian) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[secure] type=[bool] desc=[on/off] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(secure) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(secure) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id2] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id2) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id2) init()
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[id3] type=[uint16] desc=[(null)] init=[00007ff73f4aafb0]
[24644]../qom/object.c/object_class_property_init_all(558):before obj(cfi.pflash01).prop(id3) init()
[24644]../qom/object.c/object_class_property_init_all(560):after obj(cfi.pflash01).prop(id3) init()
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[hotpluggable] type=[bool] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[hotplugged] type=[bool] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[realized] type=[bool] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[parent_bus] type=[link<bus>] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_class_property_init_all(555):prop name=[type] type=[string] desc=[(null)] init=[0000000000000000]
[24644]../qom/object.c/object_class_property_init_all(563):obj(cfi.pflash01) return
[24644]../qom/object.c/object_initialize_with_type(583):try object_init_with_type(cfi.pflash01)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[cfi.pflash01] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[sys-bus-device] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[device] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_init_with_type(416):obj->class->type->name=[cfi.pflash01] ti->name=[object] enter
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[object] return
[24644]../qom/object.c/object_init_with_type(423):name=[device] ti->instance_init() before
[24644]../qom/object.c/object_init_with_type(425):name=[device] ti->instance_init() after
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[device] return
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[sys-bus-device] return
[24644]../qom/object.c/object_init_with_type(427):obj->class->type->name=[cfi.pflash01] ti->name=[cfi.pflash01] return
[24644]../qom/object.c/object_initialize_with_type(585):try object_post_init_with_type(cfi.pflash01)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[cfi.pflash01] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[sys-bus-device] enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[device] enter
[24644]../qom/object.c/object_post_init_with_type(436):name=[device] ti->instance_post_init() before
[24644]../qom/object.c/object_post_init_with_type(438):name=[device] ti->instance_post_init() after
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_post_init_with_type(433):obj->class->type->name=[cfi.pflash01] ti->name=[object] enter
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_post_init_with_type(444):return
[24644]../qom/object.c/object_initialize_with_type(587):obj(cfi.pflash01) return
[24644]../qom/object.c/object_new_with_type(812):obj(cfi.pflash01) return
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(84):run
[24644]../hw/core/qdev-properties.c/qdev_prop_set_uint64(841):name=[sector-length], value=[4096]
[24644]../qom/qom-qobject.c/object_property_set_qobject(26):name=[sector-length] enter!
[24644]../qom/object.c/object_property_set(1505):name=[sector-length] enter!
[24644]../qom/object.c/object_property_set(1507):name=[sector-length] run!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_set(1509):name=[sector-length] run!
[24644]../qom/object.c/object_property_set(1522):name=[sector-length] run!
[24644]../qom/object.c/object_property_set(1524):name=[sector-length] return!
[24644]../qom/qom-qobject.c/object_property_set_qobject(33):name=[sector-length] return!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(86):run
[24644]../hw/core/qdev-properties.c/qdev_prop_set_uint8(817):name=[width], value=[1]
[24644]../qom/qom-qobject.c/object_property_set_qobject(26):name=[width] enter!
[24644]../qom/object.c/object_property_set(1505):name=[width] enter!
[24644]../qom/object.c/object_property_set(1507):name=[width] run!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_set(1509):name=[width] run!
[24644]../qom/object.c/object_property_set(1522):name=[width] run!
[24644]../qom/object.c/object_property_set(1524):name=[width] return!
[24644]../qom/qom-qobject.c/object_property_set_qobject(33):name=[width] return!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(88):run
[24644]../hw/core/qdev-properties.c/qdev_prop_set_string(847):name=[name], value=[system.flash1]
[24644]../qom/qom-qobject.c/object_property_set_qobject(26):name=[name] enter!
[24644]../qom/object.c/object_property_set(1505):name=[name] enter!
[24644]../qom/object.c/object_property_set(1507):name=[name] run!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_set(1509):name=[name] run!
[24644]../qom/object.c/object_property_set(1522):name=[name] run!
[24644]../qom/object.c/object_property_set(1524):name=[name] return!
[24644]../qom/qom-qobject.c/object_property_set_qobject(33):name=[name] return!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(90):run
[24644]../qom/object.c/object_property_try_add(1307):name=[system.flash1] enter!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(pc-q35-8.2-machine) has parent(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(pc-q35-8.2-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(generic-pc-machine) has parent(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(generic-pc-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(x86-machine) has parent(machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(x86-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(machine) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_try_add(1348):name=[system.flash1] return-3!
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(92):run
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(cfi.pflash01) has parent(sys-bus-device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(cfi.pflash01) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(device)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(sys-bus-device) has parent(device)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(sys-bus-device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(device) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(device) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_try_add(1307):name=[pflash1] enter!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(pc-q35-8.2-machine) has parent(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(pc-q35-8.2-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(generic-pc-machine) has parent(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(generic-pc-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(x86-machine) has parent(machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(x86-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(machine) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../qom/object.c/object_property_try_add(1348):name=[pflash1] return-3!
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(pc-q35-8.2-machine) has parent(generic-pc-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(pc-q35-8.2-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(generic-pc-machine) has parent(x86-machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(generic-pc-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(machine)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(x86-machine) has parent(machine)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(x86-machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(194):parent_type(object)
[24644]../qom/object.c/object_class_get_parent(1136):objclass(machine) has parent(object)
[24644]../qom/object.c/object_class_get_parent(1139):objclass(machine) return
[24644]../qom/object.c/object_class_get_parent(1127):enter
[24644]../qom/object.c/type_get_parent(196):no parent_type
[24644]../qom/object.c/object_class_get_parent(1132):objclass(object) has no parent return
[24644]../hw/i386/pc_sysfw.c/pc_pflash_create(100):return
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(145):blk=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(146):sector_len=[4096]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(147):nb_blocks=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(148):bank_width=[1]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(149):device_width=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(150):max_device_width=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(151):features=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(152):wcycle=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(153):ro=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(154):cmd=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(155):status=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(156):ident0=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(157):ident1=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(158):ident2=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(159):ident3=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(160):cfi_table=[
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(168):]=cfi_table
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(169):counter=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(170):writeblock_size=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(171):mem=[000001461886b240]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(67):romd_mode=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(68):ram=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(69):subpage=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(70):readonly=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(71):nonvolatile=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(72):rom_device=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(73):flush_coalesced_mmio=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(74):unmergeable=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(75):dirty_log_mask=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(76):is_iommu=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(77):ram_block=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(78):owner=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(79):dev=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(80):ops=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(81):opaque=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(82):container=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(83):mapped_via_alias=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(84):size=[00000000000000000000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(85):addr=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(86):destructor=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(87):align=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(88):terminates=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(89):ram_device=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(90):enabled=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(91):vga_logging_count=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(92):alias=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(93):alias_offset=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(94):priority=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(98):name=[(null)]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(99):ioeventfd_nb=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(100):ioeventfds=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(101):rdm=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(102):disable_reentrancy_guard=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(173):name=[system.flash1]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(174):storage=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(175):vmstate=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(176):old_multiple_chip_handling=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(177):blk_bytes=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(178):blk_offset=[0]
[24644]../hw/i386/pc_sysfw.c/pc_system_flash_create(121):return
[24644]../hw/i386/pc.c/pc_machine_initfn(1758):run
WHPX: setting APIC emulation mode in the hypervisor
Windows Hypervisor Platform accelerator is operational
whpx: injection failed, MSI (0, 0) delivery: 0, dest_mode: 0, trigger mode: 0, vector: 0, lost (c0350005)

其中,pflash 设备信息如下:

[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(145):blk=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(146):sector_len=[4096]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(147):nb_blocks=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(148):bank_width=[1]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(149):device_width=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(150):max_device_width=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(151):features=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(152):wcycle=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(153):ro=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(154):cmd=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(155):status=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(156):ident0=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(157):ident1=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(158):ident2=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(159):ident3=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(160):cfi_table=[
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(168):]=cfi_table
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(169):counter=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(170):writeblock_size=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(171):mem=[000001461886ad30]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(67):romd_mode=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(68):ram=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(69):subpage=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(70):readonly=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(71):nonvolatile=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(72):rom_device=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(73):flush_coalesced_mmio=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(74):unmergeable=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(75):dirty_log_mask=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(76):is_iommu=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(77):ram_block=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(78):owner=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(79):dev=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(80):ops=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(81):opaque=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(82):container=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(83):mapped_via_alias=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(84):size=[00000000000000000000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(85):addr=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(86):destructor=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(87):align=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(88):terminates=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(89):ram_device=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(90):enabled=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(91):vga_logging_count=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(92):alias=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(93):alias_offset=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(94):priority=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(98):name=[(null)]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(99):ioeventfd_nb=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(100):ioeventfds=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(101):rdm=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_MemoryRegion(102):disable_reentrancy_guard=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(173):name=[system.flash0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(174):storage=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(175):vmstate=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(176):old_multiple_chip_handling=[0]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(177):blk_bytes=[0000000000000000]
[24644]D:/msys64/home/yuhui/gitee/mingw-qemu/util/huedbg-pflash_cfi01.c/huedbg_dump_PFlashCFI01(178):blk_offset=[0]

总结

以上分析了 pflash 设备的创建过程,为后续载入 BIOS 并启动机器做准备。


http://www.ppmy.cn/ops/25399.html

相关文章

什么是scrum中的3355?

&#xff08;学校作业&#xff09; Scrum中的3355是指Scrum框架中的三个核心角色、三个工件、五个关键事件和五个价值观。 三个核心角色包括&#xff1a; 产品负责人&#xff08;Product Owner&#xff09;&#xff1a;主要负责确定产品的功能和达到要求的标准&#xff0c;指…

AI视频教程下载:用ChatGPT提示词开发AI应用和GPTs

在这个课程中&#xff0c;你将深入ChatGPT的迷人世界&#xff0c;学习如何利用其能力构建创新和有影响力的工具。你将发现如何创建不仅吸引而且保持用户参与度的应用程序&#xff0c;将流量驱动到你的网站&#xff0c;并开辟新的货币化途径。 **课程的主要特点&#xff1a;** …

react中useRef是什么?有啥用?怎么用?

useRef是什么? 在 React 中&#xff0c;useRef 是一个 Hook&#xff0c;它可以用来存储一个可变的值&#xff0c;这个值在组件的整个生命周期内保持不变。useRef 返回一个可变的 ref 对象&#xff0c;其 .current 属性被初始化为传递给 useRef 的参数&#xff08;initialValue…

【1429】招生管理管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java 招生管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0&…

VSCode SSH连接远程主机失败,显示Server status check failed - waiting and retrying

vscode ssh连接远程主机突然连接不上了&#xff0c;终端中显示&#xff1a;Server status check failed - waiting and retrying 但是我用Xshell都可以连接成功&#xff0c;所以不是远程主机的问题&#xff0c;问题出在本地vscode&#xff1b; 现象一&#xff1a; 不停地输入…

锂电池SOH预测 | 基于LSTM的锂电池SOH预测(附matlab完整源码)

锂电池SOH预测 锂电池SOH预测完整代码锂电池SOH预测 锂电池的SOH(状态健康度)预测是一项重要的任务,它可以帮助确定电池的健康状况和剩余寿命,从而优化电池的使用和维护策略。 SOH预测可以通过多种方法实现,其中一些常用的方法包括: 容量衰减法:通过监测电池的容量衰减…

【蓝桥杯C++A组省三 | 一场勇敢的征途与致19岁的信】

随着4.13西大四楼考场的倒计时结束… 就这样蓝桥杯落幕了 省三的名次既满足又不甘心&#xff0c;但又确乎说得上是19岁途中的又一枚勋章 从去年得知&#xff0c;纠结是否要报名、到寒假开始战战兢兢地准备、陆续开始创作博客&#xff0c;记录好题和成长……感谢你们的关注&…

区块链技术:NFG元宇宙电商模式

大家好&#xff0c;我是微三云周丽 随着互联网技术的迅猛发展&#xff0c;电子商务行业逐渐崛起为现代经济的重要支柱。而在这一浪潮中&#xff0c;元宇宙电商以其独特的商业模式和巨大的发展潜力&#xff0c;成为行业的新宠。其中&#xff0c;NFG作为元宇宙电商模式的代表&am…