linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: Frediano Ziglio <fziglio@redhat.com>
Cc: dri-devel@lists.freedesktop.org, David Airlie <airlied@linux.ie>,
	open list <linux-kernel@vger.kernel.org>,
	"open list:DRM DRIVER FOR QXL VIRTUAL GPU" 
	<virtualization@lists.linux-foundation.org>,
	Daniel Vetter <daniel@ffwll.ch>,
	"open list:DRM DRIVER FOR QXL VIRTUAL GPU" 
	<spice-devel@lists.freedesktop.org>,
	Dave Airlie <airlied@redhat.com>
Subject: Re: [Spice-devel] [PATCH] drm/qxl: get vga ioports
Date: Mon, 5 Aug 2019 12:50:39 +0200	[thread overview]
Message-ID: <20190805105039.cxf2ogbzdf7hropp@sirius.home.kraxel.org> (raw)
In-Reply-To: <1869747233.4556840.1564996693878.JavaMail.zimbra@redhat.com>

  Hi,

> > +	ret = vga_get_interruptible(pdev, VGA_RSRC_LEGACY_IO);
> > +	if (ret) {
> > +		DRM_ERROR("can't get legacy vga ports\n");
> > +		goto put_vga;
> 
> I suppose that if this fails it's secondary so should continue.

Ah, right, there are secondary qxl cards (without the vga compat bits).
We should skip the call in that case (likewise for the cleanups).

> What happen configuring 2 QXL devices?
> Only a card should provide VGA registers in the system so
> if any other card provide them QXL won't work.

Well, with intel vgpu everything works fine with this patch.  Probably
i915 skips direct vga register access in case vga_get fails (because qxl
grabed them first).

In any case I'd prefer to fail qxl initialization over continuing
despite vga_get() having failed.  The failure mode is rather awkward:
qemu thinks the qxl card is in vga mode while the guest kernel thinks
qxl is in native mode.  Guest keeps queuing commands until the ring is
full while qemu never takes them out, so at some point the guest kernel
blocks forever in qxl_ring_push().

cheers,
  Gerd


      reply	other threads:[~2019-08-05 10:50 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-05  8:53 [PATCH] drm/qxl: get vga ioports Gerd Hoffmann
2019-08-05  9:18 ` [Spice-devel] " Frediano Ziglio
2019-08-05 10:50   ` Gerd Hoffmann [this message]

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=20190805105039.cxf2ogbzdf7hropp@sirius.home.kraxel.org \
    --to=kraxel@redhat.com \
    --cc=airlied@linux.ie \
    --cc=airlied@redhat.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=fziglio@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=spice-devel@lists.freedesktop.org \
    --cc=virtualization@lists.linux-foundation.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;
as well as URLs for NNTP newsgroup(s).