From: Paolo Bonzini <pbonzini@redhat.com>
To: Alex Williamson <alex.williamson@redhat.com>
Cc: qemu-devel <qemu-devel@nongnu.org>,
Gleb Natapov <gleb@redhat.com>,
deniv@lavabit.com
Subject: Re: [Qemu-devel] VFIO-VGA Issue
Date: Wed, 10 Apr 2013 19:36:32 +0200 [thread overview]
Message-ID: <5165A320.1000303@redhat.com> (raw)
In-Reply-To: <1365607252.2918.2.camel@bling.home>
Il 10/04/2013 17:20, Alex Williamson ha scritto:
> On Wed, 2013-04-10 at 12:01 +0300, Gleb Natapov wrote:
>> On Tue, Apr 09, 2013 at 04:17:48PM -0600, Alex Williamson wrote:
>>> On Tue, 2013-04-09 at 11:18 -0600, Alex Williamson wrote:
>>>> On Tue, 2013-04-09 at 08:22 -0400, deniv@lavabit.com wrote:
>>>>> Hi!
>>>>>
>>>>> I've tried passing through my ASUS Radeon HD7750, but qemu just hogs 100%
>>>>> of one core and stops. Since the display didn't light up, I couldn't see
>>>>> how far Win 7 boot went. For a Linux guest I tried redirecting kernel
>>>>> messages to serial console, but there was nothing (qemu stops even before
>>>>> kernel start?).
>>>>>
>>>>> Also, this GPU is kinda troublesome: it doesn't work with the proprietary
>>>>> driver if VT-d is enabled in BIOS (boot process stops with "dmar: DRHD:
>>>>> handling fault status reg 3"). The GPU works with the FOSS driver, though.
>>>>> Could this somehow be related to the passthrough issue?
>>>>>
>>>>> Anyway, VT-d in pci-assign mode works for network adapters on this host.
>>>>> It runs kernel 3.9.0-rc5 (with vfio-vga enabled), qemu git from yesterday,
>>>>> and seabios 1.7.2. The host has no driver installed for the GPU. Before
>>>>> assiging it to qemu I'd run "echo '1002 683f' >
>>>>> /sys/bus/pci/drivers/vfio-pci/new_id" and the same for the associated HDMI
>>>>> device. Command line:
>>>>> qemu-kvm -machine q35,accel=kvm \
>>>>> -cpu host -smp 4 -m 2G \
>>>>> -vga none -display none \
>>>>> -kernel /kvm/kernel-3.7.8 -append 'root=/dev/vda console=ttyS0' \
>>>>> -drive
>>>>> index=0,media=disk,cache=none,if=virtio,aio=native,file=/dev/vg3/gpu \
>>>>> -device vfio-pci,host=01:00.0,x-vga=on \
>>>>> -device vfio-pci,host=01:00.1 \
>>>>> -serial telnet:127.0.0.1:52990,server
>>>>
>>>> You should always at least get monitor sync if it's going to work, but
>>>> you may have to reboot the host between each attempt. I've been doing
>>>> most of the VGA development on an AMD box and swapping over to an Intel
>>>> system reminds me why. Try removing the ",accel=kvm -cpu host -smp 4"
>>>> pieces of your command an try again. If that works, it means there are
>>>> still broken bits of real mode handling in KVM. My HD7850 hangs on an
>>>> Intel host the same way you describe, but posts if I disable KVM
>>>> support. Thanks,
>>>
>>> Gleb,
>>>
>>> If I run trace-cmd while I'm in this hung state with KVM enabled, the
>>> log is filled with:
>>>
>>> qemu-system-x86-9569 [000] 10027.806836: kvm_emulate_insn: c0000:b2d3: ff 7d 00
>>>
>>> I hope this means more to you than it does to me ;) Based on the
>>> segment register we're executing in the VGA BIOS for the assigned VGA
>>> device. Let me know what more I can provide to help debug. Thanks,
>>>
>> This is wrong encoding. Such instruction does not exists. Can you see
>> what happens before this emulation starts to happen.
>
> Yeah, it seems like b2d3 is a bad offset, if I align the code at d2 or
> d0 gdb is able to disassemble it. I'm not having much luck with
> breakpoints or stepping, but I'll keep fiddling with it to try to figure
> out how we're getting here. Thanks,
How does -d in_asm look for eip values around 000cb2XX?
Paolo
next prev parent reply other threads:[~2013-04-10 17:36 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-09 12:22 [Qemu-devel] VFIO-VGA Issue deniv
2013-04-09 17:18 ` Alex Williamson
2013-04-09 22:17 ` Alex Williamson
2013-04-10 9:01 ` Gleb Natapov
2013-04-10 15:20 ` Alex Williamson
2013-04-10 15:22 ` Gleb Natapov
2013-04-10 17:36 ` Paolo Bonzini [this message]
2013-04-09 22:33 ` deniv
2013-04-09 22:53 ` Alex Williamson
2013-04-10 0:02 ` deniv
2013-04-10 15:37 ` Alex Williamson
2013-04-10 17:11 ` deniv
2013-04-10 18:30 ` Alex Williamson
2013-04-10 20:32 ` deniv
2013-04-10 20:42 ` Alex Williamson
2013-04-11 17:59 ` deniv
2013-04-15 18:48 ` Alex Williamson
2013-04-25 18:15 ` deniv
[not found] ` <517915C5.3020309@lavabit.com>
[not found] ` <1366915789.2918.794.camel@bling.home>
2013-04-26 12:02 ` deniv
-- strict thread matches above, loose matches on Subject: below --
2013-05-16 20:46 Maik Broemme
2013-05-17 10:23 ` Paolo Bonzini
2013-05-20 3:10 ` Alex Williamson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5165A320.1000303@redhat.com \
--to=pbonzini@redhat.com \
--cc=alex.williamson@redhat.com \
--cc=deniv@lavabit.com \
--cc=gleb@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.