On 2/15/21 2:30 PM, Paolo Bonzini wrote: > On 15/02/21 13:59, Claudio Fontana wrote: >> Yes. The difference between before the patch and after the patch >> is that before we were still going through all the code in tcg_gen_callN, >> via the call to gen_helper_rsm macro, only to call finally an empty function >> for CONFIG_USER_ONLY (helper_rsm() {}), >> >> while now we do not generate anything, we do not call the gen_helper_rsm >> macro at all, so we don't go through tcg_gen_callN. >> > > Can we even have an abort() for such cases? > > Paolo >
Hi Paolo, where are you suggesting to have an abort()? You mean that we should abort() QEMU as soon as we detect in translate.c an RSM instruction in user-mode? Again the translate.c code for reference: case 0x1aa: /* rsm */ gen_svm_check_intercept(s, pc_start, SVM_EXIT_RSM); if (!(s->flags & HF_SMM_MASK)) goto illegal_op; gen_update_cc_op(s); gen_jmp_im(s, s->pc - s->cs_base); #ifndef CONFIG_USER_ONLY gen_helper_rsm(cpu_env); #endif /* CONFIG_USER_ONLY */ gen_eob(s); break; --- Thanks, CLaudio