[BUG] drm/ttm: Warning during suspend/freeze

Christian König christian.koenig at amd.com
Fri Aug 14 08:23:47 UTC 2020


Hi Thomas,

well I added a new assertion to catch cases when a driver tries to kmap 
a BO without grabbing the lock.

Looks like QXL is doing exactly that here.

Regards,
Christian.

Am 14.08.20 um 10:08 schrieb Thomas Gleixner:
> Suspending or freezing a KVM guest triggers the following warning
> reliably on current mainline:
>
> [56691.550343] printk: Suspending console(s) (use no_console_suspend to debug)
> [56691.578735] WARNING: CPU: 37 PID: 462 at drivers/gpu/drm/ttm/ttm_tt.c:51 ttm_tt_create+0xb6/0xe0 [ttm]
> [56692.795234] Modules linked in: snd_hda_codec_generic(E) qxl(E) drm_ttm_helper(E) ttm(E) snd_hda_intel(E) snd_intel_dspcfg(E) snd_hda_codec(E) drm_kms_helper(E) snd_hwdep(E) snd_hda_core(E) cec(E) snd_pcm(E) snd_timer(E) drm(E) joydev
> (E) snd(E) pcspkr(E) sg(E) evdev(E) virtio_balloon(E) serio_raw(E) virtio_console(E) soundcore(E) button(E) virtio_rng(E) rng_core(E) ip_tables(E) x_tables(E) autofs4(E) ext4(E) crc32c_generic(E) crc16(E) mbcache(E) jbd2(E) hid_generic(E) usbhid(E) hid(E) virtio_net(E) net_failover(E) failover(E) uhci_hcd(E) virtio_blk(E) sr_mod(E) cdrom(E) ata_generic(E) ehci_pci(E) ata_piix(E) ehci_hcd(E) libata(E) virtio_pci(E) usbcore(E) psmouse(E) virtio_ring(E) scsi_mod(E) i2c_piix4(E) virtio(E) floppy(E)
> [56691.578781] CPU: 37 PID: 462 Comm: kworker/37:1 Tainted: G            E     5.8.0+ #8217
> [56691.578784] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
> [56692.795348] Workqueue: events drm_fb_helper_dirty_work [drm_kms_helper]
> [56691.578872] RIP: 0010:ttm_tt_create+0xb6/0xe0 [ttm]
> [56691.578903] Call Trace:
> [56691.578912]  ttm_bo_kmap+0x13c/0x260 [ttm]
> [56691.578942]  qxl_bo_kmap+0x40/0x70 [qxl]
> [56691.578947]  qxl_gem_prime_vmap+0x21/0x50 [qxl]
> [56691.579060]  drm_gem_vmap+0x1f/0x50 [drm]
> [56691.579073]  drm_client_buffer_vmap+0x1c/0x30 [drm]
> [56691.579083]  drm_fb_helper_dirty_work+0xb2/0x1c0 [drm_kms_helper]
> [56691.579091]  process_one_work+0x246/0x580
> [56691.579099]  ? process_one_work+0x580/0x580
> [56691.579101]  worker_thread+0x30/0x370
> [56691.579104]  ? process_one_work+0x580/0x580
> [56691.579107]  kthread+0x12a/0x140
> [56691.579110]  ? kthread_park+0x80/0x80
> [56691.579118]  ret_from_fork+0x22/0x30
>
> Have not had time to figure out whether this is a regression or an older
> issue. If you need further info please let me know.
>
> Thanks,
>
>          tglx



More information about the dri-devel mailing list