[PATCH v5 0/7] drm/mgag200: Implement VBLANK support

Thomas Zimmermann tzimmermann at suse.de
Mon Oct 14 12:39:14 UTC 2024


Hi

Am 11.10.24 um 18:44 schrieb Luck, Tony:
> Posted too soon. Some time (kernel timestamps say a few minutes) after the
> successful boot the console spewed another stack dump and the machine hung.

This warning is OK for the quick workaround.

Attached is a full revert of the vblank support for you to test. If that 
undoes the bug, I'll post it for review to the list.

Best regards
Thomas


>
> -Tony
>
>
> brk-bdx-01 login: [  364.922549] ------------[ cut here ]------------
> [  364.927987] mgag200 0000:08:00.0: [drm] drm_WARN_ON(pipe >= dev->num_crtcs)
> [  364.928157] WARNING: CPU: 46 PID: 3556 at drivers/gpu/drm/drm_vblank.c:1347 drm_crtc_vblank_off+0x250/0x270 [drm]
> [  364.947651] Modules linked in: snd_seq_dummy snd_hrtimer snd_seq snd_seq_device snd_timer snd soundcore xt_CHECKSUM xt_MASQUERADE xt_conntrack ipt_REJECT nf_nat_tftp nf_conntrack_tftp bridge stp llc nf_conntrack_netbios_ns nf_conntrack_broadcast nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat ip6table_nat ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_mangle iptable_raw iptable_security ip_set rfkill nf_tables nfnetlink ip6table_filter ip6_tables iptable_filter sunrpc vfat fat intel_rapl_msr intel_rapl_common intel_uncore_frequency intel_uncore_frequency_common sb_edac x86_pkg_temp_thermal intel_powerclamp coretemp iTCO_wdt intel_pmc_bxt iTCO_vendor_support rapl ipmi_ssif intel_cstate intel_uncore acpi_ipmi joydev pcspkr ipmi_si i2c_i801 mei_me ipmi_devintf i2c_smbus lpc_ich mei ioatdma wmi ipmi_msghandler acpi_pad zram ip_tables crct10dif_pclmul crc32_pclmul mgag200
> [  364.948006]  crc32c_intel i2c_algo_bit ghash_clmulni_intel drm_shmem_helper sha512_ssse3 drm_kms_helper sha256_ssse3 sha1_ssse3 mpt3sas ixgbe raid_class mdio drm scsi_transport_sas dca fuse
> [  365.066964] CPU: 46 UID: 42 PID: 3556 Comm: gnome-shell Tainted: G        W          6.12.0-rc2+ #171
> [  365.077283] Tainted: [W]=WARN
> [  365.080617] Hardware name: Intel Corporation BRICKLAND/BRICKLAND, BIOS BRBDXSD1.86B.0338.V01.1603162127 03/16/2016
> [  365.092189] RIP: 0010:drm_crtc_vblank_off+0x250/0x270 [drm]
> [  365.098473] Code: 4c 8b 67 50 4d 85 e4 75 03 4c 8b 27 e8 e9 be 01 d6 48 c7 c1 78 9b b1 c0 4c 89 e2 48 c7 c7 1e d6 b1 c0 48 89 c6 e8 f0 8f 60 d5 <0f> 0b 48 83 c4 20 5b 5d 41 5c 41 5d 41 5e 41 5f c3 cc cc cc cc 66
> [  365.119464] RSP: 0018:ffffbd1ca3d87b20 EFLAGS: 00010282
> [  365.125316] RAX: 000000000000003f RBX: ffff9ddf0a498000 RCX: 0000000000000000
> [  365.133297] RDX: 0000000000000002 RSI: ffffffff97a00e78 RDI: 00000000ffffffff
> [  365.141283] RBP: 0000000000000000 R08: 0000000000000000 R09: ffffbd1ca3d879e0
> [  365.149274] R10: ffffbd1ca3d879d8 R11: ffff9e12011fffe8 R12: ffff9df257758df0
> [  365.157266] R13: ffff9ddf0a4993f0 R14: ffff9ddf05087a00 R15: ffffffffc0b726c0
> [  365.165244] FS:  00007f2ae47fad80(0000) GS:ffff9deb61d00000(0000) knlGS:0000000000000000
> [  365.174299] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  365.180736] CR2: 00000be199403000 CR3: 00000000127a8001 CR4: 00000000003706f0
> [  365.188726] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [  365.196718] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> [  365.204709] Call Trace:
> [  365.207462]  <TASK>
> [  365.209829]  ? __warn+0x90/0x1a0
> [  365.213469]  ? drm_crtc_vblank_off+0x250/0x270 [drm]
> [  365.219104]  ? report_bug+0x1c3/0x1d0
> [  365.223226]  ? handle_bug+0x5b/0xa0
> [  365.227150]  ? exc_invalid_op+0x14/0x70
> [  365.231455]  ? asm_exc_invalid_op+0x16/0x20
> [  365.236159]  ? drm_crtc_vblank_off+0x250/0x270 [drm]
> [  365.241762]  ? _raw_spin_unlock_irq+0x24/0x50
> [  365.246653]  ? lockdep_hardirqs_on+0x7b/0x100
> [  365.251549]  mgag200_crtc_helper_atomic_disable+0xf/0x160 [mgag200]
> [  365.258576]  disable_outputs+0x246/0x360 [drm_kms_helper]
> [  365.264671]  drm_atomic_helper_commit_tail+0x1a/0x80 [drm_kms_helper]
> [  365.271896]  mgag200_mode_config_helper_atomic_commit_tail+0x28/0x40 [mgag200]
> [  365.279998]  commit_tail+0x94/0x130 [drm_kms_helper]
> [  365.285578]  drm_atomic_helper_commit+0x13e/0x170 [drm_kms_helper]
> [  365.292513]  drm_atomic_commit+0x97/0xb0 [drm]
> [  365.297533]  ? __pfx___drm_printfn_info+0x10/0x10 [drm]
> [  365.303439]  drm_mode_atomic_ioctl+0x995/0xb80 [drm]
> [  365.309061]  ? __pfx_drm_mode_atomic_ioctl+0x10/0x10 [drm]
> [  365.315245]  drm_ioctl_kernel+0x85/0xf0 [drm]
> [  365.320183]  drm_ioctl+0x23a/0x450 [drm]
> [  365.324640]  ? __pfx_drm_mode_atomic_ioctl+0x10/0x10 [drm]
> [  365.330825]  ? __pfx___fget_files+0xb/0x10
> [  365.335438]  __x64_sys_ioctl+0x8a/0xc0
> [  365.339656]  do_syscall_64+0x73/0x190
> [  365.343780]  entry_SYSCALL_64_after_hwframe+0x76/0x7e
> [  365.349445] RIP: 0033:0x7f2ae87280ab
> [  365.353462] Code: ff ff ff 85 c0 79 9b 49 c7 c4 ff ff ff ff 5b 5d 4c 89 e0 41 5c c3 66 0f 1f 84 00 00 00 00 00 f3 0f 1e fa b8 10 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 9d bd 0c 00 f7 d8 64 89 01 48
> [  365.374448] RSP: 002b:00007ffc89bc33c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> [  365.382925] RAX: ffffffffffffffda RBX: 00007ffc89bc3410 RCX: 00007f2ae87280ab
> [  365.390908] RDX: 00007ffc89bc3410 RSI: 00000000c03864bc RDI: 000000000000000b
> [  365.398904] RBP: 00000000c03864bc R08: 0000000000000002 R09: 0000000000000002
> [  365.406901] R10: 00007f2ae87f4a00 R11: 0000000000000246 R12: 0000564bfe3dcc80
> [  365.414889] R13: 000000000000000b R14: 0000564bfdead540 R15: 0000564bfdb6b5d0
> [  365.422914]  </TASK>
> [  365.425379] irq event stamp: 1043639
> [  365.429393] hardirqs last  enabled at (1043651): [<ffffffff96183fae>] __up_console_sem+0x5e/0x70
> [  365.439231] hardirqs last disabled at (1043662): [<ffffffff96183f93>] __up_console_sem+0x43/0x70
> [  365.449074] softirqs last  enabled at (1043676): [<ffffffff960dac91>] __irq_exit_rcu+0xa1/0x110
> [  365.458818] softirqs last disabled at (1043671): [<ffffffff960dac91>] __irq_exit_rcu+0xa1/0x110
> [  365.468548] ---[ end trace 0000000000000000 ]---
>
>
> -----Original Message-----
> From: Luck, Tony
> Sent: Friday, October 11, 2024 9:37 AM
> To: Thomas Zimmermann <tzimmermann at suse.de>
> Cc: jfalempe at redhat.com; airlied at redhat.com; sam at ravnborg.org; emil.l.velikov at gmail.com; maarten.lankhorst at linux.intel.com; mripard at kernel.org; airlied at gmail.com; daniel at ffwll.ch; dri-devel at lists.freedesktop.org
> Subject: RE: [PATCH v5 0/7] drm/mgag200: Implement VBLANK support
>
> Progress! My system now boots. But there's one WARN_ON dump along the way to the "login:" prompt.
>
> Thanks
>
> -Tony
>
> ---
>
> [   33.111505] Console: switching to colour dummy device 80x25
> [   33.119581] mgag200 0000:08:00.0: vgaarb: deactivate vga console
> [   33.139574] [drm] Initialized mgag200 1.0.0 for 0000:08:00.0 on minor 0
> [   33.157665] fbcon: mgag200drmfb (fb0) is primary device
> [   33.196490] ixgbe 0000:03:00.1: Multiqueue Enabled: Rx Queue count = 63, Tx Queue count = 63 XDP Queue count = 0
> [   33.281367] ixgbe 0000:03:00.1: 16.000 Gb/s available PCIe bandwidth, limited by 5.0 GT/s PCIe x4 link at 0000:00:03.2 (capable of 32.000 Gb/s with 5.0 GT/s PCIe x8 link)
> [   33.282519] ------------[ cut here ]------------
> [   33.282550] mgag200 0000:08:00.0: [drm] drm_WARN_ON(pipe >= dev->num_crtcs)
> [   33.282610] WARNING: CPU: 123 PID: 1774 at drivers/gpu/drm/drm_vblank.c:1488 drm_crtc_vblank_on_config+0x1b5/0x210 [drm]
> [   33.282687] Modules linked in: crct10dif_pclmul crc32_pclmul mgag200(+) crc32c_intel i2c_algo_bit ghash_clmulni_intel drm_shmem_helper sha512_ssse3 drm_kms_helper sha256_ssse3 sha1_ssse3 mpt3sas ixgbe(+) raid_class mdio drm scsi_transport_sas dca fuse
> [   33.282712] CPU: 123 UID: 0 PID: 1774 Comm: systemd-udevd Not tainted 6.12.0-rc2+ #171
> [   33.282716] Hardware name: Intel Corporation BRICKLAND/BRICKLAND, BIOS BRBDXSD1.86B.0338.V01.1603162127 03/16/2016
> [   33.282718] RIP: 0010:drm_crtc_vblank_on_config+0x1b5/0x210 [drm]
> [   33.282743] Code: 4c 8b 67 50 4d 85 e4 75 03 4c 8b 27 e8 34 ce 01 d6 48 c7 c1 78 9b b1 c0 4c 89 e2 48 c7 c7 1e d6 b1 c0 48 89 c6 e8 3b 9f 60 d5 <0f> 0b 48 83 c4 18 5b 5d 41 5c 41 5d 41 5e 41 5f c3 cc cc cc cc 48
> [   33.282745] RSP: 0018:ffffbd1ca3f8f660 EFLAGS: 00010282
> [   33.282749] RAX: 000000000000003f RBX: ffff9ddf0a498000 RCX: 0000000000000000
> [   33.282751] RDX: 0000000000000002 RSI: ffffffff97a00e78 RDI: 00000000ffffffff
> [   33.282753] RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000
> [   33.282755] R10: 0000000000000001 R11: 0000000000000001 R12: ffff9df257758df0
> [   33.282757] R13: ffff9ddf0a4993f0 R14: ffffffffc0b726c0 R15: ffff9ddf05d33450
> [   33.282758] FS:  00007f66ab8e2b40(0000) GS:ffff9deb61f80000(0000) knlGS:0000000000000000
> [   33.282761] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [   33.282763] CR2: 00007f66ab8c7c4b CR3: 000000000bc04003 CR4: 00000000003706f0
> [   33.282765] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [   33.282766] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> [   33.282768] Call Trace:
> [   33.282771]  <TASK>
> [   33.282773]  ? __warn+0x90/0x1a0
> [   33.282785]  ? drm_crtc_vblank_on_config+0x1b5/0x210 [drm]
> [   33.282808]  ? report_bug+0x1c3/0x1d0
> [   33.282819]  ? handle_bug+0x5b/0xa0
> [   33.282824]  ? exc_invalid_op+0x14/0x70
> [   33.282827]  ? asm_exc_invalid_op+0x16/0x20
> [   33.282839]  ? drm_crtc_vblank_on_config+0x1b5/0x210 [drm]
> [   33.282862]  ? mgag200_crtc_set_gamma_linear+0x17a/0x190 [mgag200]
> [   33.282868]  ? mgag200_enable_display+0x13b/0x160 [mgag200]
> [   33.282876]  drm_crtc_vblank_on+0x28/0x40 [drm]
> [   33.282898]  drm_atomic_helper_commit_modeset_enables+0xa6/0x240 [drm_kms_helper]
> [   33.282920]  drm_atomic_helper_commit_tail+0x50/0x80 [drm_kms_helper]
> [   33.282931]  mgag200_mode_config_helper_atomic_commit_tail+0x28/0x40 [mgag200]
> [   33.282951]  commit_tail+0x94/0x130 [drm_kms_helper]
> [   33.282963]  drm_atomic_helper_commit+0x13e/0x170 [drm_kms_helper]
> [   33.282975]  drm_atomic_commit+0x97/0xb0 [drm]
> [   33.282996]  ? __pfx___drm_printfn_info+0x10/0x10 [drm]
> [   33.283027]  drm_client_modeset_commit_atomic+0x207/0x250 [drm]
> [   33.283060]  drm_client_modeset_commit_locked+0x5b/0x190 [drm]
> [   33.283086]  drm_client_modeset_commit+0x24/0x50 [drm]
> [   33.283109]  __drm_fb_helper_restore_fbdev_mode_unlocked+0x95/0xd0 [drm_kms_helper]
> [   33.283122]  drm_fb_helper_set_par+0x2e/0x40 [drm_kms_helper]
> [   33.283132]  fbcon_init+0x2a8/0x560
> [   33.283143]  visual_init+0xc4/0x120
> [   33.283150]  do_bind_con_driver.isra.0+0x1a1/0x3d0
> [   33.283158]  do_take_over_console+0x10b/0x1a0
> [   33.283164]  do_fbcon_takeover+0x5c/0xc0
> [   33.283167]  fbcon_fb_registered+0x49/0x70
> [   33.283170]  do_register_framebuffer+0x184/0x230
> [   33.283179]  register_framebuffer+0x20/0x40
> [   33.283182]  __drm_fb_helper_initial_config_and_unlock+0x33e/0x590 [drm_kms_helper]
> [   33.283193]  ? drm_client_register+0x33/0xc0 [drm]
> [   33.283222]  drm_fbdev_shmem_client_hotplug+0x6c/0xc0 [drm_shmem_helper]
> [   33.283228]  drm_client_register+0x7b/0xc0 [drm]
> [   33.283254]  mgag200_pci_probe+0x90/0x180 [mgag200]
> [   33.283262]  local_pci_probe+0x46/0xa0
> [   33.283269]  pci_device_probe+0xb5/0x220
> [   33.283277]  really_probe+0xd9/0x380
> [   33.283288]  __driver_probe_device+0x78/0x150
> [   33.283293]  driver_probe_device+0x1e/0x90
> [   33.283297]  __driver_attach+0xd6/0x1d0
> [   33.283301]  ? __pfx___driver_attach+0x10/0x10
> [   33.283305]  bus_for_each_dev+0x66/0xa0
> [   33.283311]  bus_add_driver+0x111/0x240
> [   33.283317]  driver_register+0x5c/0x120
> [   33.283320]  ? __pfx_mgag200_pci_driver_init+0x10/0x10 [mgag200]
> [   33.283326]  do_one_initcall+0x62/0x3a0
> [   33.283333]  ? __kmalloc_cache_noprof+0x240/0x300
> [   33.283343]  do_init_module+0x64/0x240
> [   33.283354]  init_module_from_file+0x7a/0xa0
> [   33.283366]  idempotent_init_module+0x15f/0x260
> [   33.283378]  __x64_sys_finit_module+0x5a/0xb0
> [   33.283383]  do_syscall_64+0x73/0x190
> [   33.283396]  entry_SYSCALL_64_after_hwframe+0x76/0x7e
> [   33.283399] RIP: 0033:0x7f66ac527e0d
> [   33.283403] Code: c8 0c 00 0f 05 eb a9 66 0f 1f 44 00 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 3b 80 0c 00 f7 d8 64 89 01 48
> [   33.283406] RSP: 002b:00007ffff0c752b8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
> [   33.283410] RAX: ffffffffffffffda RBX: 0000557cd3b38d00 RCX: 00007f66ac527e0d
> [   33.283412] RDX: 0000000000000000 RSI: 00007f66ac68132c RDI: 0000000000000010
> [   33.283414] RBP: 0000000000020000 R08: 0000000000000000 R09: 0000000000000000
> [   33.283416] R10: 0000000000000010 R11: 0000000000000246 R12: 00007f66ac68132c
> [   33.283418] R13: 0000557cd3b18eb0 R14: 0000000000000007 R15: 0000557cd3b38f80
> [   33.283429]  </TASK>
> [   33.283431] irq event stamp: 45133
> [   33.283433] hardirqs last  enabled at (45139): [<ffffffff96187784>] vprintk_emit+0x3d4/0x3e0
> [   33.283444] hardirqs last disabled at (45144): [<ffffffff96187737>] vprintk_emit+0x387/0x3e0
> [   33.283448] softirqs last  enabled at (44822): [<ffffffff960dac91>] __irq_exit_rcu+0xa1/0x110
> [   33.283456] softirqs last disabled at (44817): [<ffffffff960dac91>] __irq_exit_rcu+0xa1/0x110
> [   33.283459] ---[ end trace 0000000000000000 ]---
> [   33.283494] Console: switching to colour frame buffer device 128x48
> [   33.379557] ixgbe 0000:03:00.1: MAC: 3, PHY: 0, PBA No: G36748-005
> [   33.399852] mgag200 0000:08:00.0: [drm] fb0: mgag200drmfb frame buffer device

-- 
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Revert-drm-mgag200-Add-vblank-support.patch
Type: text/x-patch
Size: 16663 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20241014/fb61839b/attachment-0001.bin>


More information about the dri-devel mailing list