target/i386/kvm: Improve KVM_EXIT_NOTIFY warnings

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Message-ID: <20240412073346.458116-28-richard.henderson@linaro.org>
[PMD: Fixed typo reported by Peter Maydell]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
This commit is contained in:
Richard Henderson 2024-04-12 00:33:46 -07:00 committed by Philippe Mathieu-Daudé
parent 2ad9d04492
commit a93b4061b0

View File

@ -5329,7 +5329,6 @@ int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run)
uint64_t code; uint64_t code;
int ret; int ret;
bool ctx_invalid; bool ctx_invalid;
char str[256];
KVMState *state; KVMState *state;
switch (run->exit_reason) { switch (run->exit_reason) {
@ -5389,15 +5388,15 @@ int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run)
case KVM_EXIT_NOTIFY: case KVM_EXIT_NOTIFY:
ctx_invalid = !!(run->notify.flags & KVM_NOTIFY_CONTEXT_INVALID); ctx_invalid = !!(run->notify.flags & KVM_NOTIFY_CONTEXT_INVALID);
state = KVM_STATE(current_accel()); state = KVM_STATE(current_accel());
sprintf(str, "Encounter a notify exit with %svalid context in"
" guest. There can be possible misbehaves in guest."
" Please have a look.", ctx_invalid ? "in" : "");
if (ctx_invalid || if (ctx_invalid ||
state->notify_vmexit == NOTIFY_VMEXIT_OPTION_INTERNAL_ERROR) { state->notify_vmexit == NOTIFY_VMEXIT_OPTION_INTERNAL_ERROR) {
warn_report("KVM internal error: %s", str); warn_report("KVM internal error: Encountered a notify exit "
"with invalid context in guest.");
ret = -1; ret = -1;
} else { } else {
warn_report_once("KVM: %s", str); warn_report_once("KVM: Encountered a notify exit with valid "
"context in guest. "
"The guest could be misbehaving.");
ret = 0; ret = 0;
} }
break; break;