(2012/01/12 7:11), Takuya Yoshikawa wrote:
On Wed, 11 Jan 2012 18:53:30 +0200
Nadav Amit<na...@cs.technion.ac.il>  wrote:

An exception might occur during decode (e.g., #PF during fetch).
Currently, the exception is ignored and emulation is performed.

Note that the decode/emulation will not be continued in such a case.

insn_fetch() is a bit tricky macro and it contains "goto done" to outside.
So if an error happens during fetching the instruction, x86_decode_insn()
will handle the X86EMUL_* fault value and returns FAIL immediately.

        Takuya


When I cleaned up insn_fetch(), I thought that fetching the instruction
which is being executed by the guest cannot cause #PF.

The possibility that a meaningless userspace might similtaneously unmap
the page, noted by Avi IIRC, was ignored intentionally, so we just fail
in such a case.

Did you see any real problem?

        Takuya


Instead, emulation should be skipped and the fault should be injected.
Skipping instruction should report a failure in this case.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to