Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1522340 > unrolled thread

kvm: WARNING in em_jmp_far

Started byDmitry Vyukov <dvyukov@google.com>
First post2016-11-15 06:10 +0100
Last post2016-11-15 11:50 +0100
Articles 5 — 3 participants

Back to article view | Back to linux.kernel


Contents

  kvm: WARNING in em_jmp_far Dmitry Vyukov <dvyukov@google.com> - 2016-11-15 06:10 +0100
    Re: kvm: WARNING in em_jmp_far Nadav Amit <nadav.amit@gmail.com> - 2016-11-15 06:40 +0100
      Re: kvm: WARNING in em_jmp_far Dmitry Vyukov <dvyukov@google.com> - 2016-11-15 06:40 +0100
        Re: kvm: WARNING in em_jmp_far Nadav Amit <nadav.amit@gmail.com> - 2016-11-15 06:40 +0100
          Re: kvm: WARNING in em_jmp_far Paolo Bonzini <pbonzini@redhat.com> - 2016-11-15 11:50 +0100

#1522340 — kvm: WARNING in em_jmp_far

FromDmitry Vyukov <dvyukov@google.com>
Date2016-11-15 06:10 +0100
Subjectkvm: WARNING in em_jmp_far
Message-ID<sDEal-vS-1@gated-at.bofh.it>
Hello,

The following program triggers WARNING in em_jmp_far:
https://gist.githubusercontent.com/dvyukov/16bfd3d68fa7d5461101ef74e07796e4/raw/e6d663980681f2c5838ff6cd361cede7d3204838/gistfile1.txt


WARNING: CPU: 1 PID: 15748 at arch/x86/kvm/emulate.c:2128 em_jmp_far+0x4a7/0x530
Kernel panic - not syncing: panic_on_warn set ...

CPU: 1 PID: 15748 Comm: syz-executor Not tainted 4.9.0-rc5+ #28
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
 ffff880033986ec8 ffffffff834c2959 ffffffff00000001 1ffff10006730d6c
 ffffed0006730d64 0000000041b58ab3 ffffffff89575430 ffffffff834c266b
 0000000041b58ab3 ffffffff894d1810 ffffffff8158f020 ffffffff811ac787
Call Trace:
 [<     inline     >] __dump_stack lib/dump_stack.c:15
 [<ffffffff834c2959>] dump_stack+0x2ee/0x3f5 lib/dump_stack.c:51
 [<ffffffff81848908>] panic+0x200/0x425 kernel/panic.c:179
 [<ffffffff813fc919>] __warn+0x1c9/0x1e0 kernel/panic.c:542
 [<ffffffff813fcb81>] warn_slowpath_null+0x31/0x40 kernel/panic.c:585
 [<ffffffff81157867>] em_jmp_far+0x4a7/0x530 arch/x86/kvm/emulate.c:2128
 [<ffffffff811614ef>] x86_emulate_insn+0x43f/0x4090 arch/x86/kvm/emulate.c:5294
 [<ffffffff810e121e>] x86_emulate_instruction+0x43e/0x2300
arch/x86/kvm/x86.c:5547
 [<     inline     >] emulate_instruction arch/x86/include/asm/kvm_host.h:1116
 [<     inline     >] complete_emulated_io arch/x86/kvm/x86.c:6872
 [<ffffffff810e384e>] complete_emulated_mmio+0x76e/0xb70 arch/x86/kvm/x86.c:6936
 [<ffffffff810f1c92>] kvm_arch_vcpu_ioctl_run+0x3562/0x4eb0
arch/x86/kvm/x86.c:6980
 [<ffffffff8107b328>] kvm_vcpu_ioctl+0x678/0x11c0
arch/x86/kvm/../../../virt/kvm/kvm_main.c:2557
 [<     inline     >] vfs_ioctl fs/ioctl.c:43
 [<ffffffff81abcb44>] do_vfs_ioctl+0x1c4/0x1630 fs/ioctl.c:679
 [<     inline     >] SYSC_ioctl fs/ioctl.c:694
 [<ffffffff81abe044>] SyS_ioctl+0x94/0xc0 fs/ioctl.c:685
 [<ffffffff88143885>] entry_SYSCALL_64_fastpath+0x23/0xc6
Dumping ftrace buffer:
   (ftrace buffer empty)
Kernel Offset: disabled
reboot: cpu_has_vmx: ecx=80a02021 1

On commit a25f0944ba9b1d8a6813fd6f1a86f1bd59ac25a6 (Nov 13).

[toc] | [next] | [standalone]


#1522351

FromNadav Amit <nadav.amit@gmail.com>
Date2016-11-15 06:40 +0100
Message-ID<sDEDn-I6-3@gated-at.bofh.it>
In reply to#1522340
 
> On Nov 14, 2016, at 9:06 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
> 
> Hello,
> 
> The following program triggers WARNING in em_jmp_far:
> https://gist.githubusercontent.com/dvyukov/16bfd3d68fa7d5461101ef74e07796e4/raw/e6d663980681f2c5838ff6cd361cede7d3204838/gistfile1.txt
> 
> 
> WARNING: CPU: 1 PID: 15748 at arch/x86/kvm/emulate.c:2128 em_jmp_far+0x4a7/0x530

I don’t know how to “read” the test, but it seems that this warning
can be triggered if CS base/limit cause a #GP exception when EIP
is loaded.

I think it safe to remove this warning (which I introduced) as well as
the redundant “return rc” that follows it. The code should handle the
emulation correctly regardless of the warning.

Regards,
Nadav

[toc] | [prev] | [next] | [standalone]


#1522354

FromDmitry Vyukov <dvyukov@google.com>
Date2016-11-15 06:40 +0100
Message-ID<sDEDn-I6-9@gated-at.bofh.it>
In reply to#1522351
On Tue, Nov 15, 2016 at 6:24 AM, Nadav Amit <nadav.amit@gmail.com> wrote:
>
>> On Nov 14, 2016, at 9:06 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
>>
>> Hello,
>>
>> The following program triggers WARNING in em_jmp_far:
>> https://gist.githubusercontent.com/dvyukov/16bfd3d68fa7d5461101ef74e07796e4/raw/e6d663980681f2c5838ff6cd361cede7d3204838/gistfile1.txt
>>
>>
>> WARNING: CPU: 1 PID: 15748 at arch/x86/kvm/emulate.c:2128 em_jmp_far+0x4a7/0x530
>
> I don’t know how to “read” the test, but it seems that this warning
> can be triggered if CS base/limit cause a #GP exception when EIP
> is loaded.
>
> I think it safe to remove this warning (which I introduced) as well as
> the redundant “return rc” that follows it. The code should handle the
> emulation correctly regardless of the warning.

There was also a similar WARNING in em_ret_far:
https://groups.google.com/forum/#!msg/syzkaller/o5ZftARBhrs/r1ivQ-HtBgAJ

Please mail a fix and add a test.

Thanks

[toc] | [prev] | [next] | [standalone]


#1522356

FromNadav Amit <nadav.amit@gmail.com>
Date2016-11-15 06:40 +0100
Message-ID<sDEDn-I6-19@gated-at.bofh.it>
In reply to#1522354
> On Nov 14, 2016, at 9:30 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
> 
> On Tue, Nov 15, 2016 at 6:24 AM, Nadav Amit <nadav.amit@gmail.com> wrote:
>> 
>>> On Nov 14, 2016, at 9:06 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
>>> 
>>> Hello,
>>> 
>>> The following program triggers WARNING in em_jmp_far:
>>> https://gist.githubusercontent.com/dvyukov/16bfd3d68fa7d5461101ef74e07796e4/raw/e6d663980681f2c5838ff6cd361cede7d3204838/gistfile1.txt
>>> 
>>> 
>>> WARNING: CPU: 1 PID: 15748 at arch/x86/kvm/emulate.c:2128 em_jmp_far+0x4a7/0x530
>> 
>> I don’t know how to “read” the test, but it seems that this warning
>> can be triggered if CS base/limit cause a #GP exception when EIP
>> is loaded.
>> 
>> I think it safe to remove this warning (which I introduced) as well as
>> the redundant “return rc” that follows it. The code should handle the
>> emulation correctly regardless of the warning.
> 
> There was also a similar WARNING in em_ret_far:
> https://groups.google.com/forum/#!msg/syzkaller/o5ZftARBhrs/r1ivQ-HtBgAJ
> 
> Please mail a fix and add a test.

I am sorry, but I don’t think my current employer allows me to contribute
to KVM in such a manner.

Regards,
Nadav

[toc] | [prev] | [next] | [standalone]


#1522545

FromPaolo Bonzini <pbonzini@redhat.com>
Date2016-11-15 11:50 +0100
Message-ID<sDJtn-3Nv-5@gated-at.bofh.it>
In reply to#1522356

On 15/11/2016 06:39, Nadav Amit wrote:
> 
>> On Nov 14, 2016, at 9:30 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
>>
>> On Tue, Nov 15, 2016 at 6:24 AM, Nadav Amit <nadav.amit@gmail.com> wrote:
>>>
>>>> On Nov 14, 2016, at 9:06 PM, Dmitry Vyukov <dvyukov@google.com> wrote:
>>>>
>>>> Hello,
>>>>
>>>> The following program triggers WARNING in em_jmp_far:
>>>> https://gist.githubusercontent.com/dvyukov/16bfd3d68fa7d5461101ef74e07796e4/raw/e6d663980681f2c5838ff6cd361cede7d3204838/gistfile1.txt
>>>>
>>>>
>>>> WARNING: CPU: 1 PID: 15748 at arch/x86/kvm/emulate.c:2128 em_jmp_far+0x4a7/0x530
>>>
>>> I don’t know how to “read” the test, but it seems that this warning
>>> can be triggered if CS base/limit cause a #GP exception when EIP
>>> is loaded.
>>>
>>> I think it safe to remove this warning (which I introduced) as well as
>>> the redundant “return rc” that follows it. The code should handle the
>>> emulation correctly regardless of the warning.
>>
>> There was also a similar WARNING in em_ret_far:
>> https://groups.google.com/forum/#!msg/syzkaller/o5ZftARBhrs/r1ivQ-HtBgAJ
>>
>> Please mail a fix and add a test.
> 
> I am sorry, but I don’t think my current employer allows me to contribute
> to KVM in such a manner.

No problem, we can take care of it.

Paolo

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web