Merge to Master

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey guys,
   I merged in my emulation code to the master branch.  The highlights 
of what was added are:

* Intercept all interrupts except for FIQ (Linux doesn't use FIQ).  IRQs 
interrupts are handled as we discussed (couldn't drive this while the 
guest was running though)
* Changed kvmarm_handle_swi to be called kvmarm_handle_exit, added 
framework for handling each type of host interrupt
* Handle UNDEFINED interrupt by driving kvmarm_emulate_undefined_instr
* Exception emulation (not thoroughly tested, working on ways to build 
scaffolding and get this done)
* Coprocessor emulation, currently handles the basic get/set type regs 
(CR0, CR1). Other instructions such as TLB control/cache control, etc 
not implemented

Note that kvmtest will now show the final regs as if the next 
instruction to occur is the SVC interrupt handler (the PC is set to 
0x00000008).   This is because kvmtest adds an SWI at the end, and the 
exception emulation code gets driven.  After the emulation code, there 
is a temporary bit of code in kvmarm_handle_exit that tells 
arm_interrupts to return control to the host so we don't get stuck in 
the guest.  I would like to meet before the weekend, when are you guys free?

Brian



[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux