public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: "André Weidemann" <Andre.Weidemann@web.de>
To: Jan Kiszka <jan.kiszka@web.de>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	seabios@seabios.org, kvm@vger.kernel.org,
	Alex Williamson <alex.williamson@redhat.com>
Subject: Re: Graphics card pass-through working with two pass pci-initialization
Date: Fri, 28 May 2010 20:49:07 +0200	[thread overview]
Message-ID: <4C001023.4030807@web.de> (raw)
In-Reply-To: <4DE0AFF1.2050404@web.de>

Hi,

On 28.05.2011 10:18, Jan Kiszka wrote:
> On 2011-05-26 23:19, André Weidemann wrote:
>> On 27.05.2011 21:50, André Weidemann wrote:
>>> On 27.05.2011 21:40, André Weidemann wrote:
>>>
>>>> If I am not mistaken then the graphics card needs 2 bars, one with 256MB
>>>> and one with 128K. The sound card then needs 1 bar with 16K of PCI
>>>> memory.
>>>> How big is the PCI memory with seabios?
>>>> Is there really not enough space to "squeeze" in those extra 16K?
>>>
>>> I obviously forgot to add up the other memory that is used...
>>> 32MB go to the standard VGA card. Running qemu-kvm with "-vga none" did
>>> not work, so I left it in. And the e1000 NIC needs another 128K.
>>>
>>> I'll see if I can get rid of the standard VGA card. I guess that should
>>> free enough memory for the sound card.
>>
>> I did some more testing by starting the VM with the paramter "-vga none"
>> and passed both the VGA card and the sound card to it. With this option
>> the VM did not boot,
>
> Where did it hang, ie. what IP was reported by info cpus?

I added some debug options and found out, that the VM hangs when trying 
to initialize the graphics card ROM.
See here:
http://pastebin.com/S9a8uQfU

And some additional info here:

http://pastebin.com/AC4rw8Ek (info cpus/registers)
http://pastebin.com/yYkn8jL2 (info pci)

>> but I could use the monitor to take a look at the
>> PCI bar assignment. Even though the memory for the standard VGA card is
>> freed, the soundcard does not seem to get the 16K bar it needs. "info
>> pci" for the sound card still looks like this:
>>   Bus  0, device   5, function 0:
>>      Audio controller: PCI device 8086:3a3e
>>        IRQ 10.
>>        BAR0: 32 bit memory at 0xffffffffffffffff [0x00003ffe].
>>
>> Does anyone have an idea why there was no bar assigned?
>
> Maybe Gerd's patches aren't sufficient and you still need to change
> BUILD_MAX_HIGHMEM. See the hacks in
> http://git.kiszka.org/?p=seabios.git;a=shortlog;h=refs/heads/vga-assign,
> either replacing Gerd's patches or combined with them (I haven't checked
> if the latter makes sense).

I do not have access to the machine until tomorrow. I'm curious to see 
if extending the PCI memory window will cure the problem.

>> Can the kernel be too old? (2.6.35.7.)
>
> It would be good to check the latest kvm kernel to see if that oops is
> still present. In that case, please try to collect the backtrace via
> serial console, hopefully complete then. We may have an resource cleanup
> issue there.

I will see if I can upgrade to the latest kernel tomorrow.

>>
>> Just to test whether or not two devices can be assigned, I passed
>> through 2 sound cards. (There is an onbard sound card and the Radeon has
>> one too).
>>
>> Each sound card gets its bar assigned as you can see:
>>    Bus  0, device   4, function 0:
>>      Audio controller: PCI device 1002:aa80
>>        IRQ 10.
>>        BAR0: 32 bit memory at 0xfebf0000 [0xfebf3fff].
>>        id ""
>>    Bus  0, device   5, function 0:
>>      Audio controller: PCI device 8086:3a3e
>>        IRQ 10.
>>        BAR0: 32 bit memory at 0xfebf4000 [0xfebf7fff].
>>
>> but the sound cards do not show inside the Windows VM.
>>
>> With both sound cards still passed to the VM I then booted an Ubuntu
>> 10.10 image instead of Windows7. It got as far as starting gdm, but then
>> the entire host and VM became very slow.
>> The last message I saw on the terminal before gdm started was this:
>> [   23.030016 ] hda_intel: azx_get_response timeout, switching to
>> single_cmd mode: last cmd=0x000f0000
>> [   29.290017 ] hda_intel: azx_get_response timeout, switching to
>> single_cmd mode: last cmd=0x200f0000
>
> Likely some IRQ issue. Please check if latest qemu-kvm.git +
> http://thread.gmane.org/gmane.comp.emulators.qemu/102540 makes any
> difference.

See above comments. I will try this tomorrow.

Regards
  André

  reply	other threads:[~2011-05-28 18:49 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1306227933-4880-1-git-send-email-kraxel@redhat.com>
     [not found] ` <1306227933-4880-2-git-send-email-kraxel@redhat.com>
     [not found]   ` <20110525023406.GG8517@valinux.co.jp>
     [not found]     ` <20110525043353.GH8517@valinux.co.jp>
     [not found]       ` <4DDCC7A5.60706@redhat.com>
     [not found]         ` <4DDCF9ED.5050208@redhat.com>
     [not found]           ` <4DDDDA8D.6080807@web.de>
     [not found]             ` <4DDDF62C.2010603@redhat.com>
2011-05-27  5:32               ` Graphics card pass-through working with two pass pci-initialization André Weidemann
2011-05-27 11:09                 ` Jan Kiszka
2011-05-27 19:40                   ` André Weidemann
2011-05-27 19:50                     ` André Weidemann
2011-05-26 21:19                       ` André Weidemann
2011-05-28  8:18                         ` Jan Kiszka
2010-05-28 18:49                           ` André Weidemann [this message]
2011-05-29 15:22                             ` Jan Kiszka
2011-05-29 15:33                               ` Avi Kivity
2011-05-29 19:30                               ` André Weidemann
2011-05-29 20:51                                 ` Jan Kiszka
2011-05-30  7:34                     ` Gerd Hoffmann
2011-05-30  9:58                       ` Gerd Hoffmann
2011-05-31  2:29                       ` [SeaBIOS] " Isaku Yamahata
2011-06-01  7:30                         ` Gerd Hoffmann
2011-06-01  9:56                           ` Alexander Graf
2011-06-01 10:20                             ` Rudolf Marek
2011-06-01 13:47                               ` Gerd Hoffmann
2011-06-01 14:40                                 ` Rudolf Marek
2011-06-01 22:15                                   ` Kevin O'Connor
2011-06-01 22:22                                     ` Yushu Yao
2011-06-01 11:13                             ` Avi Kivity
2011-06-01 11:16                               ` [SeaBIOS] " Alexander Graf
2011-06-01 11:18                                 ` Avi Kivity
2011-06-01 14:20                           ` [SeaBIOS] " Isaku Yamahata
2011-06-01 14:31                             ` Jan Kiszka
2011-06-01 14:36                               ` Alex Williamson
2011-06-01 22:34                             ` Kevin O'Connor
2011-06-06  6:30                               ` Gerd Hoffmann
2011-06-07  8:05                                 ` Jan Kiszka

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=4C001023.4030807@web.de \
    --to=andre.weidemann@web.de \
    --cc=alex.williamson@redhat.com \
    --cc=jan.kiszka@web.de \
    --cc=kraxel@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=seabios@seabios.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox