linux-stable/drivers/gpu/drm/virtio
Laszlo Ersek c2cbc38b97 drm: virtio: reinstate drm_virtio_set_busid()
Before commit a325725633 ("drm: Lobotomize set_busid nonsense for !pci
drivers"), several DRM drivers for platform devices used to expose an
explicit "drm_driver.set_busid" callback, invariably backed by
drm_platform_set_busid().

Commit a325725633 removed drm_platform_set_busid(), along with the
referring .set_busid field initializations. This was justified because
interchangeable functionality had been implemented in drm_dev_alloc() /
drm_dev_init(), which DRM_IOCTL_SET_VERSION would rely on going forward.

However, commit a325725633 also removed drm_virtio_set_busid(), for
which the same consolidation was not appropriate: this .set_busid callback
had been implemented with drm_pci_set_busid(), and not
drm_platform_set_busid(). The error regressed Xorg/xserver on QEMU's
"virtio-vga" card; the drmGetBusid() function from libdrm would no longer
return stable PCI identifiers like "pci:0000:00:02.0", but rather unstable
platform ones like "virtio0".

Reinstate drm_virtio_set_busid() with judicious use of

  git checkout -p a325725633c2^ -- drivers/gpu/drm/virtio

Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Emil Velikov <emil.l.velikov@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Joachim Frieben <jfrieben@hotmail.com>
Cc: stable@vger.kernel.org # v4.8
Reported-by: Joachim Frieben <jfrieben@hotmail.com>
Fixes: a325725633
Ref: https://bugzilla.redhat.com/show_bug.cgi?id=1366842
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2016-10-04 13:10:30 +10:00
..
Kconfig drm/virtio: make fbdev support really optional 2016-07-18 09:11:40 +02:00
Makefile virtio-gpu: add basic prime support 2015-10-16 10:44:02 +02:00
virtgpu_debugfs.c drm/virtio: use %llu format string form atomic64_t 2015-10-16 11:36:36 +10:00
virtgpu_display.c drm/atomic-helper: Add NO_DISABLE_AFTER_MODESET flag support for plane commit 2016-08-29 11:29:37 +02:00
virtgpu_drm_bus.c drm: virtio: reinstate drm_virtio_set_busid() 2016-10-04 13:10:30 +10:00
virtgpu_drv.c drm: virtio: reinstate drm_virtio_set_busid() 2016-10-04 13:10:30 +10:00
virtgpu_drv.h drm: virtio: reinstate drm_virtio_set_busid() 2016-10-04 13:10:30 +10:00
virtgpu_fb.c drm: Remove unused fbdev_list members 2015-11-24 11:41:52 +01:00
virtgpu_fence.c drm/virtio: add real fence context and seqno 2016-09-20 14:25:43 +02:00
virtgpu_gem.c drm: Remove unused drm_device from drm_gem_object_lookup() 2016-05-17 08:47:30 +02:00
virtgpu_ioctl.c bugfixes for qemu (bochs, qxl and virtio-gpu) drm drivers 2016-09-28 13:23:07 +10:00
virtgpu_kms.c drm/virtio: add real fence context and seqno 2016-09-20 14:25:43 +02:00
virtgpu_object.c drm/ttm: remove lazy parameter from ttm_bo_wait 2016-05-04 20:21:26 -04:00
virtgpu_plane.c virtio-gpu: avoid possible NULL pointer dereference 2016-09-20 14:25:39 +02:00
virtgpu_prime.c virtio-gpu: add basic prime support 2015-10-16 10:44:02 +02:00
virtgpu_ttm.c drm/ttm: add wait for idle in all drivers bo_move functions 2016-07-07 14:54:35 -04:00
virtgpu_vq.c virtio-gpu: add 3d/virgl support 2015-10-16 10:44:02 +02:00