VirtualBox

Opened 3 months ago

Last modified 3 months ago

#22230 new defect

virtualBox crashes when trying to write to HPET register! This code can run normally on physical machines and vmWare, QEMU, and ESXI platforms.

Reported by: win333 Owned by:
Component: other Version: VirtualBox-7.1.4
Keywords: HPET Cc:
Guest type: other Host type: other

Description (last modified by win333)

virtualBox crashes when trying to write to HPET register! This code can run normally on physical machines and vmWare, QEMU, and ESXI platforms.

        hpet_registers.gcap_id = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0);
        hpet_registers.gen_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x10);
        hpet_registers.gintr_sta = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x20);
        hpet_registers.main_cnt = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0xF0);
        hpet_registers.tim0_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x100);
        hpet_registers.tim0_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x108);
        hpet_registers.tim1_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x120);
        hpet_registers.tim1_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x128);
        hpet_registers.tim2_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x140);
        hpet_registers.tim2_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x148);
        hpet_registers.tim3_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x160);
        hpet_registers.tim3_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x168);
        hpet_registers.tim4_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x180);
        hpet_registers.tim4_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x188);
        hpet_registers.tim5_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x1A0);
        hpet_registers.tim5_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x1A8);
        hpet_registers.tim6_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x1C0);
        hpet_registers.tim6_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x1C8);
        hpet_registers.tim7_conf = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x1E0);
        hpet_registers.tim7_comp = (UINT64 *) LADDR_TO_HADDR(hpet.address + 0x1E8);

/*VirtualBox crashes when writing data to hpet register*/
        *hpet_registers.gen_conf = 1;

        SFENCE();
        color_printk(RED,BLACK,"Hpet GEN_CONF=%#lX\n",*hpet_registers.gen_conf);
        while(1);

Attachments (3)

VBox.png (14.6 KB ) - added by win333 3 months ago.
VBox.log.1 (312.7 KB ) - added by win333 3 months ago.
logs.zip (121.7 KB ) - added by win333 3 months ago.
Please see this for the first two attachment upload errors. The file exceeds 512KB and must be converted into a compressed file.

Download all attachments as: .zip

Change History (6)

by win333, 3 months ago

Attachment: VBox.png added

by win333, 3 months ago

Attachment: VBox.log.1 added

comment:1 by win333, 3 months ago

Description: modified (diff)

comment:2 by win333, 3 months ago

Description: modified (diff)

comment:3 by win333, 3 months ago

Description: modified (diff)

by win333, 3 months ago

Attachment: logs.zip added

Please see this for the first two attachment upload errors. The file exceeds 512KB and must be converted into a compressed file.

Note: See TracTickets for help on using tickets.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette