qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] i386 translation: fix typo in xsetbv implementa


From: Paolo Bonzini
Subject: Re: [Qemu-devel] [PATCH] i386 translation: fix typo in xsetbv implementation
Date: Sat, 23 Jul 2016 03:51:19 -0400 (EDT)

> On 07/20/2016 09:27 PM, Dave Hansen wrote:
> > QEMU 2.6 added support for the XSAVE family of instructions, which
> > includes the XSETBV instruction which allows setting the 'XCR0'
> > register.
> >
> > But, when booting Linux kernels with XSAVE support enabled, I was
> > getting very early crashes where the instruction pointer was set
> > to 0x3.  I tracked it down to a jump instruction generated by this:
> >
> >     gen_jmp_im(s->pc - pc_start);
> >
> > where s->pc is pointing to the instruction after XSETBV and pc_start
> > is pointing _at_ XSETBV.  Subtract the two and you get 0x3.  Whoops.
> >
> > The fix is to replace this typo with the pattern found everywhere
> > else in the file when folks want to end the translation buffer.
> >
> > Richard Henderson confirmed that this is a bug and that this is the
> > correct fix.
> >
> > Signed-off-by: Dave Hansen <address@hidden>
> > Cc: Paolo Bonzini <address@hidden>
> > Cc: Eduardo Habkost <address@hidden>
> > Cc: Richard Henderson <address@hidden>
> > ---
> >  target-i386/translate.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> Reviewed-by: Richard Henderson <address@hidden>

Thanks, queued and CCed qemu-stable.

Paolo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]