Message ID | 874ocxzzql.fsf@ginnungagap.bsc.es |
---|---|
State | New |
Headers | show |
diff --git a/linux-user/signal.c b/linux-user/signal.c index 77683f7..097da9d 100644 --- a/linux-user/signal.c +++ b/linux-user/signal.c @@ -982,8 +982,8 @@ restore_sigcontext(CPUX86State *env, struct target_sigcontext *sc, int *peax) env->regs[R_ECX] = tswapl(sc->ecx); env->eip = tswapl(sc->eip); - cpu_x86_load_seg(env, R_CS, lduw(&sc->cs) | 3); - cpu_x86_load_seg(env, R_SS, lduw(&sc->ss) | 3); + cpu_x86_load_seg(env, R_CS, lduw_raw(&sc->cs) | 3); + cpu_x86_load_seg(env, R_SS, lduw_raw(&sc->ss) | 3); tmpflags = tswapl(sc->eflags); env->eflags = (env->eflags & ~0x40DD5) | (tmpflags & 0x40DD5);
Using a pointer on the host should not go through lduw. Signed-off-by: LluĂs <xscript@gmx.net> --- linux-user/signal.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)