Dear Experts,
Sorry to bother you. I am Shouyu, a postgraduate student of Beihang
University in China.
I am doing a research on “deterministic replay for KVM”, but I came up with
some questions which has bothered me for two weeks and I can’t work it out by
myself, so I have to ask for your help. Thank you!
My question is as follows:
I want to prevent new asynchronous interrupts during my replay process, for
example, timer interrupts, because these interrupts will disturb the
performance counters.
I just want to know how I can disable the timer interrupts being injected
into the guest OS.
I tried some ways but all failed, maybe I haven’t get the key point…
1. I modified the code in function "vmx_inject_irq()",I think the code
“vmcs_write32(VM_ENTRY_INTR_INFO_FIELD, intr)” is the real entry for an
interrupt to be injected, I commented the code, so no interrupt will be
injected into the guest in my opinion, but the result is not right, what I can
get is that the guest halts, not run correctly, the exit_reason is 12(HLT).
2. I also modified the code in function ” inject_pending_event()”, if
the interrupt is timer interrupt, I set the interrupt pending flag to be false
and return, instead of calling the set_irq(), but failed again.
I don’t know the reason and how I can disable or prevent the timer
interrupts being injected into the guest OS. Will you please explain that for
me? Thank you!
I am looking forward to your reply, thanks again!
Shouyu,
2012.07.10
N�Р骒r��y����b�X�肚�v�^�)藓{.n�+�筏�hФ�≤�}��财�z�&j:+v�����赙zZ+��+zf"�h���~����i���z��wア�?�ㄨ��&�)撷f