[PATCH 5.4.y 0/2] 5.4.y missing upstream commits 7beb691f and 51f644b4, causing: WARNING in vkms_vblank_simulate

George Kennedy george.kennedy at oracle.com
Tue Aug 17 13:37:00 UTC 2021


Hello Thomas,

I sent this backport request to stable at vger.kernel.org a while ago 
including the maintainers, but mistakenly did not CC you. Sorry about that.

Can you please review this backport request for 5.4.y? Greg is waiting 
to hear from the maintainers before accepting the backport request.

Thank you,
George

On 5/31/2021 8:00 AM, Greg KH wrote:
> On Fri, May 21, 2021 at 03:53:18PM -0500, George Kennedy wrote:
>> During Syzkaller reproducer testing on 5.4.y (5.4.121-rc1) the following warning occurred:
>>
>> WARNING in vkms_vblank_simulate
>> https://syzkaller.appspot.com//bug?id=0ba17d70d062b2595e1f061231474800f076c7cb
>>
>> These 2 upstream commits are needed to fix the warning:
>> 7beb691f drm: Initialize struct drm_crtc_state.no_vblank from device settings
>> 51f644b4 drm/atomic-helper: reset vblank on crtc reset
>>
>> 51f644b4 has conflicts (which were resolved).
>>
>> [  101.335429] ------------[ cut here ]------------
>> [  101.336576] WARNING: CPU: 1 PID: 0 at drivers/gpu/drm/vkms/vkms_crtc.c:91 vkms_get_vblank_timestamp+0x10a/0x140
>> [  101.338952] Modules linked in:
>> [  101.339701] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 5.4.121-rc1-syzk #1
>> [  101.344331] RIP: 0010:vkms_get_vblank_timestamp+0x10a/0x140
>> [  101.345660] Code: 03 80 3c 02 00 75 4f 4d 2b b5 80 10 00 00 4d 89 34 24 e8 d9 4e a7 fc b8 01 00 00 00 5b 41 5c 41 5d 41 5e 5d c3 e8 c6 4e a7 fc <0f> 0b eb e4 e8 3d a0 e6 fc e9 27 ff ff ff e8 33 a0 e6 fc eb 91 4c
>> [  101.351293] RAX: ffff888107a65d00 RBX: 000000179647991a RCX: ffffffff84cde2af
>> [  101.352976] RDX: 0000000000000100 RSI: ffffffff84cde2fa RDI: 0000000000000006
>> [  101.354662] RBP: ffff88810b289ba8 R08: ffff888107a65d00 R09: ffffed1021651398
>> [  101.356361] R10: ffffed1021651398 R11: 0000000000000003 R12: ffff88810b289cb0
>> [  101.358037] R13: ffff88810a89c000 R14: 000000179647991a R15: 0000000000004e20
>> [  101.359718] FS:  0000000000000000(0000) GS:ffff88810b280000(0000) knlGS:0000000000000000
>> [  101.361627] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
>> [  101.362992] CR2: 00007f82b0154000 CR3: 0000000109460000 CR4: 00000000000006e0
>> [  101.364684] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
>> [  101.366369] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
>> [  101.368043] Call Trace:
>> [  101.368652]  <IRQ>
>> [  101.369159]  ? vkms_crtc_atomic_flush+0x2d0/0x2d0
>> [  101.370296]  drm_get_last_vbltimestamp+0x106/0x1b0
>> [  101.371446]  ? drm_crtc_set_max_vblank_count+0x1a0/0x1a0
>> [  101.372715]  ? __sanitizer_cov_trace_const_cmp4+0x16/0x20
>> [  101.374001]  drm_update_vblank_count+0x17a/0x800
>> [  101.375107]  ? store_vblank+0x1d0/0x1d0
>> [  101.376038]  ? __kasan_check_write+0x14/0x20
>> [  101.377071]  drm_vblank_disable_and_save+0x13a/0x3d0
>> [  101.378265]  ? vblank_disable_fn+0x101/0x180
>> [  101.379296]  vblank_disable_fn+0x14b/0x180
>> [  101.380282]  ? drm_vblank_disable_and_save+0x3d0/0x3d0
>> [  101.381508]  call_timer_fn+0x50/0x310
>> [  101.382393]  ? drm_vblank_disable_and_save+0x3d0/0x3d0
>> [  101.383621]  ? drm_vblank_disable_and_save+0x3d0/0x3d0
>> [  101.384849]  run_timer_softirq+0x76f/0x13e0
>> [  101.385857]  ? del_timer_sync+0xb0/0xb0
>> [  101.386792]  ? irq_work_interrupt+0xf/0x20
>> [  101.387776]  ? irq_work_interrupt+0xa/0x20
>> [  101.388761]  __do_softirq+0x18d/0x623
>> [  101.389647]  irq_exit+0x1fc/0x220
>> [  101.390454]  smp_apic_timer_interrupt+0xf0/0x380
>> [  101.391565]  apic_timer_interrupt+0xf/0x20
>> [  101.392547]  </IRQ>
>> [  101.393073] RIP: 0010:native_safe_halt+0x12/0x20
>> [  101.394178] Code: 96 fe ff ff 48 89 df e8 ac c1 fc f3 eb 92 90 90 90 90 90 90 90 90 90 90 55 48 89 e5 e9 07 00 00 00 0f 00 2d 10 ee 50 00 fb f4 <5d> c3 66 90 66 2e 0f 1f 84 00 00 00 00 00 55 48 89 e5 e9 07 00 00
>> [  101.398541] RSP: 0018:ffff888107aafd48 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13
>> [  101.400326] RAX: ffffffff8db7b830 RBX: ffff888107a65d00 RCX: ffffffff8db7c532
>> [  101.402004] RDX: 1ffff11020f4cba0 RSI: 0000000000000008 RDI: ffff888107a65d00
>> [  101.403680] RBP: ffff888107aafd48 R08: ffffed1020f4cba1 R09: ffffed1020f4cba1
>> [  101.405361] R10: ffffed1020f4cba0 R11: ffff888107a65d07 R12: 0000000000000001
>> [  101.407041] R13: 0000000000000001 R14: 0000000000000000 R15: 0000000000000000
>> [  101.408729]  ? __cpuidle_text_start+0x8/0x8
>> [  101.409735]  ? default_idle_call+0x32/0x70
>> [  101.410722]  default_idle+0x24/0x2c0
>> [  101.411589]  arch_cpu_idle+0x15/0x20
>> [  101.412459]  default_idle_call+0x5f/0x70
>> [  101.413405]  do_idle+0x30f/0x3d0
>> [  101.414185]  ? arch_cpu_idle_exit+0x40/0x40
>> [  101.415188]  ? complete+0x67/0x80
>> [  101.415992]  cpu_startup_entry+0x1d/0x20
>> [  101.416937]  start_secondary+0x2ec/0x3d0
>> [  101.417879]  ? set_cpu_sibling_map+0x2620/0x2620
>> [  101.418986]  secondary_startup_64+0xb6/0xc0
>> [  101.420001] ---[ end trace 6143b67a4d795a3a ]---
>>
>> Daniel Vetter (1):
>>    drm/atomic-helper: reset vblank on crtc reset
>>
>> Thomas Zimmermann (1):
>>    drm: Initialize struct drm_crtc_state.no_vblank from device settings
>>
>>   drivers/gpu/drm/arm/display/komeda/komeda_crtc.c |  7 ++---
>>   drivers/gpu/drm/arm/malidp_drv.c                 |  1 -
>>   drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c   |  7 ++---
>>   drivers/gpu/drm/drm_atomic_helper.c              | 10 ++++++-
>>   drivers/gpu/drm/drm_atomic_state_helper.c        |  4 +++
>>   drivers/gpu/drm/drm_vblank.c                     | 28 +++++++++++++++++++
>>   drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c        |  2 --
>>   drivers/gpu/drm/omapdrm/omap_crtc.c              |  8 +++---
>>   drivers/gpu/drm/omapdrm/omap_drv.c               |  4 ---
>>   drivers/gpu/drm/rcar-du/rcar_du_crtc.c           |  6 +----
>>   drivers/gpu/drm/tegra/dc.c                       |  1 -
>>   include/drm/drm_crtc.h                           | 34 +++++++++++++++++++-----
>>   include/drm/drm_simple_kms_helper.h              |  7 +++--
>>   include/drm/drm_vblank.h                         |  1 +
>>   14 files changed, 84 insertions(+), 36 deletions(-)
>>
>> -- 
>> 1.8.3.1
>>
> I need the drm developers/maintainers to ack these changes before I can
> take them into the stable tree...  {hint}



More information about the dri-devel mailing list