<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/gpu/drm/qxl, branch master</title>
<subtitle>Linux Kernel</subtitle>
<id>https://git.etezian.org/cgit.cgi/linux.git/atom?h=master</id>
<link rel='self' href='https://git.etezian.org/cgit.cgi/linux.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/'/>
<updated>2016-12-06T09:26:48+00:00</updated>
<entry>
<title>Merge remote-tracking branch 'airlied/drm-next' into drm-misc-next</title>
<updated>2016-12-06T09:26:48+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-12-06T09:26:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=75e75cbd55183ff12459666c0a1d3e71fe1481ab'/>
<id>urn:sha1:75e75cbd55183ff12459666c0a1d3e71fe1481ab</id>
<content type='text'>
Backmerge v4.9-rc8 to get at

commit e94bd1736f1f60e916a85a80c0b0ebeaae36cce5
Author: Michel Dänzer &lt;michel.daenzer@amd.com&gt;
Date:   Wed Nov 30 17:30:01 2016 +0900

drm: Don't call drm_for_each_crtc with a non-KMS driver

so I can apply Michel's follow-up patch.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</content>
</entry>
<entry>
<title>drm/qxl: fix use of uninitialized variable</title>
<updated>2016-12-05T18:14:13+00:00</updated>
<author>
<name>Pan Bian</name>
<email>bianpan2016@163.com</email>
</author>
<published>2016-12-03T15:11:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=16571a8a435abf73cde769918850ca76a471f14c'/>
<id>urn:sha1:16571a8a435abf73cde769918850ca76a471f14c</id>
<content type='text'>
In function qxl_release_alloc(), when kmalloc() returns a NULL pointer,
it returns value 0 and parameter *ret is uninitialized. 0 means no error
to the callers of qxl_release_alloc(). The callers keep going and will
try to reference the uninitialized variable. This patch fixes the bug,
returning "-ENOMEM" when kmalloc() fails.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=188911

Signed-off-by: Pan Bian &lt;bianpan2016@163.com&gt;
[seanpaul fixed up subject prefix]
Signed-off-by: Sean Paul &lt;seanpaul@chromium.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1480777902-7648-1-git-send-email-bianpan2016@163.com
</content>
</entry>
<entry>
<title>drm/qxl: Don't register debugfs for control minors</title>
<updated>2016-12-05T07:30:35+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2016-12-05T07:29:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=48d9831627c6a059946085ce42d2fd17fb365b8d'/>
<id>urn:sha1:48d9831627c6a059946085ce42d2fd17fb365b8d</id>
<content type='text'>
They're gone since 8a357d10043c ("drm: Nerf DRM_CONTROL nodes").
Spotted while doing a full audit when revieng a similar patch from
Nicolai for radeon.

v2: Drink coffee first aka don't forget the unregister side.

Cc: Dave Airlie &lt;airlied@redhat.com&gt;
Fixes: 8a357d10043c ("drm: Nerf DRM_CONTROL nodes")
Cc: Nicolai Stange &lt;nicstange@gmail.com&gt;
Acked-by: Dave Airlie &lt;airlied@redhat.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20161205072926.12546-1-daniel.vetter@ffwll.ch
</content>
</entry>
<entry>
<title>Merge tag 'drm-qemu-20161121' of git://git.kraxel.org/linux into drm-next</title>
<updated>2016-11-30T04:18:51+00:00</updated>
<author>
<name>Dave Airlie</name>
<email>airlied@redhat.com</email>
</author>
<published>2016-11-30T04:18:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=63207455963053ca212e61c75f43b3502ea69f0e'/>
<id>urn:sha1:63207455963053ca212e61c75f43b3502ea69f0e</id>
<content type='text'>
drm/virtio: fix busid in a different way, allocate more vbufs.
drm/qxl: various bugfixes and cleanups,

* tag 'drm-qemu-20161121' of git://git.kraxel.org/linux: (224 commits)
  drm/virtio: allocate some extra bufs
  qxl: Allow resolution which are not multiple of 8
  qxl: Don't notify userspace when monitors config is unchanged
  qxl: Remove qxl_bo_init() return value
  qxl: Call qxl_gem_{init, fini}
  qxl: Add missing '\n' to qxl_io_log() call
  qxl: Remove unused prototype
  qxl: Mark some internal functions as static
  Revert "drm: virtio: reinstate drm_virtio_set_busid()"
  drm/virtio: fix busid regression
  drm: re-export drm_dev_set_unique
  Linux 4.9-rc5
  gp8psk: Fix DVB frontend attach
  gp8psk: fix gp8psk_usb_in_op() logic
  dvb-usb: move data_mutex to struct dvb_usb_device
  iio: maxim_thermocouple: detect invalid storage size in read()
  aoe: fix crash in page count manipulation
  lightnvm: invalid offset calculation for lba_shift
  Kbuild: enable -Wmaybe-uninitialized warnings by default
  pcmcia: fix return value of soc_pcmcia_regulator_set
  ...
</content>
</entry>
<entry>
<title>qxl: Allow resolution which are not multiple of 8</title>
<updated>2016-11-15T08:45:33+00:00</updated>
<author>
<name>Christophe Fergeau</name>
<email>cfergeau@redhat.com</email>
</author>
<published>2016-11-08T09:12:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=ff996e72a0a1503005b76d0869a46b3a712f327a'/>
<id>urn:sha1:ff996e72a0a1503005b76d0869a46b3a712f327a</id>
<content type='text'>
The use of drm_cvt_mode() in qxl_add_monitors_config_modes() means that
the resolutions we are going to present to user-space are going to be
rounded down to a multiple of 8. In the QXL arbitrary resolution case,
this is not useful.
This commit forces the actual width/height that was requested by the
client in the drm_display_mode structure rather than keeping the
rounded version.

Signed-off-by: Christophe Fergeau &lt;cfergeau@redhat.com&gt;
Message-id: 20161108091209.25568-8-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>qxl: Don't notify userspace when monitors config is unchanged</title>
<updated>2016-11-15T08:45:32+00:00</updated>
<author>
<name>Christophe Fergeau</name>
<email>cfergeau@redhat.com</email>
</author>
<published>2016-11-08T09:12:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=9e3b317839298abc0ab796a691f8449a16792398'/>
<id>urn:sha1:9e3b317839298abc0ab796a691f8449a16792398</id>
<content type='text'>
When the QXL driver receives a QXL_INTERRUPT_CLIENT_MONITORS_CONFIG interrupt,
we currently always notify userspace that there was some hotplug event.

However, gnome-shell/mutter is reacting to this event by attempting a
resolution change, which it does by issueing drmModeRmFB, drmModeAddFB,
and then drmModeSetCrtc. This has the side-effect of causing
qxl_crtc_mode_set() to tell the QXL virtual hardware that a primary
surface was destroyed and created. After going through QEMU and then the
remote SPICE client, a new identical monitors config message will be
sent, resulting in a QXL_INTERRUPT_CLIENT_MONITORS_CONFIG interrupt to
be emitted, and the same scenario occurring again.

As destroying/creating the primary surface causes a visible screen
flicker, this makes the guest hard to use (
https://bugzilla.redhat.com/show_bug.cgi?id=1266484 ).

This commit checks if the screen configuration we received is the same
one as the current one, and does not notify userspace about it if that's
the case.

Signed-off-by: Christophe Fergeau &lt;cfergeau@redhat.com&gt;
Acked-by: Frediano Ziglio &lt;fziglio@redhat.com&gt;
Message-id: 20161108091209.25568-7-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>qxl: Remove qxl_bo_init() return value</title>
<updated>2016-11-15T08:45:32+00:00</updated>
<author>
<name>Christophe Fergeau</name>
<email>cfergeau@redhat.com</email>
</author>
<published>2016-11-08T09:12:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=ae4b9a09234ec77832406bdb767015ebd82cf22f'/>
<id>urn:sha1:ae4b9a09234ec77832406bdb767015ebd82cf22f</id>
<content type='text'>
It's always returning 0, and it's always ignored.

Signed-off-by: Christophe Fergeau &lt;cfergeau@redhat.com&gt;
Acked-by: Frediano Ziglio &lt;fziglio@redhat.com&gt;
Message-id: 20161108091209.25568-6-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>qxl: Call qxl_gem_{init, fini}</title>
<updated>2016-11-15T08:45:32+00:00</updated>
<author>
<name>Christophe Fergeau</name>
<email>cfergeau@redhat.com</email>
</author>
<published>2016-11-08T09:12:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=b3740e88601d698706f79514cb24ad0b8e415034'/>
<id>urn:sha1:b3740e88601d698706f79514cb24ad0b8e415034</id>
<content type='text'>
qdev-&gt;gem.objects was initialized directly in qxl_device_init() rather
than going through qxl_gem_init(), and qxl_gem_fini() was never called.

Signed-off-by: Christophe Fergeau &lt;cfergeau@redhat.com&gt;
Message-id: 20161108091209.25568-5-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>qxl: Add missing '\n' to qxl_io_log() call</title>
<updated>2016-11-15T08:45:31+00:00</updated>
<author>
<name>Christophe Fergeau</name>
<email>cfergeau@redhat.com</email>
</author>
<published>2016-11-08T09:12:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=00d7d642702240ac14fb37bb0f95ce4e12879f40'/>
<id>urn:sha1:00d7d642702240ac14fb37bb0f95ce4e12879f40</id>
<content type='text'>
The message has to be terminated by a newline as it's not going to get
added automatically.

Signed-off-by: Christophe Fergeau &lt;cfergeau@redhat.com&gt;
Acked-by: Frediano Ziglio &lt;fziglio@redhat.com&gt;
Message-id: 20161108091209.25568-4-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>qxl: Remove unused prototype</title>
<updated>2016-11-15T08:45:31+00:00</updated>
<author>
<name>Christophe Fergeau</name>
<email>cfergeau@redhat.com</email>
</author>
<published>2016-11-08T09:12:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.etezian.org/cgit.cgi/linux.git/commit/?id=86c792aa22d6fc262f7533ca6cad373300ae4830'/>
<id>urn:sha1:86c792aa22d6fc262f7533ca6cad373300ae4830</id>
<content type='text'>
qxl_crtc_set_from_monitors_config() is defined in qxl_drv.h but never
implemented.

Signed-off-by: Christophe Fergeau &lt;cfergeau@redhat.com&gt;
Acked-by: Frediano Ziglio &lt;fziglio@redhat.com&gt;
Message-id: 20161108091209.25568-3-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
</feed>
