diff options
author | James Hogan <[email protected]> | 2017-03-14 10:15:28 +0000 |
---|---|---|
committer | James Hogan <[email protected]> | 2017-03-28 14:53:52 +0100 |
commit | 5dee99b24eeffbe673a71237faf551978cd311d3 (patch) | |
tree | c94dfca417fc9acd6ce0164a5c64940547a95801 /scripts/gdb/linux/lists.py | |
parent | 372582a6c6fcced38219d06545dd26ad7904bc6f (diff) |
KVM: MIPS/Emulate: Update CP0_Compare emulation for VZ
Update emulation of guest writes to CP0_Compare for VZ. There are two
main differences compared to trap & emulate:
- Writing to CP0_Compare in the VZ hardware guest context acks any
pending timer, clearing CP0_Cause.TI. If we don't want an ack to take
place we must carefully restore the TI bit if it was previously set.
- Even with guest timer access disabled in CP0_GuestCtl0.GT, if the
guest CP0_Count reaches the guest CP0_Compare the timer interrupt
will assert. To prevent this we must set CP0_GTOffset to move the
guest CP0_Count out of the way of the new guest CP0_Compare, either
before or after depending on whether it is a forwards or backwards
change.
Signed-off-by: James Hogan <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Cc: "Radim Krčmář" <[email protected]>
Cc: Ralf Baechle <[email protected]>
Cc: [email protected]
Cc: [email protected]
Diffstat (limited to 'scripts/gdb/linux/lists.py')
0 files changed, 0 insertions, 0 deletions