ELF@@ml    lAq_    @&R@!@ _     {&RS@lA#khT? aH@79b,@`(@9bH@?kTSA{¨_`@c@b(@Bb@c!ԟSA{¨_    {@@{_    {&RS@@2@s`n@ 5bQ@|_@|5 R`n@b?AT`s"PTSA@{è_ր@@b(@Bb@c!`s"P`T Հ@@b(@Bb@c!SA@{è_     {&RS*@@@RAs5`n@4tjSA@{è_֠@@b(@Bb@c!`n@5@@b(@Bb@c!tjSA@{è_    {S*@h@B@B 7`@&R h@4 @96R `RA@5R @!P@ ?SA{¨_`@"R"9c@b(@Bb@c!R`@c@b(@Bb@c!R     {}Rd@ |/@q$\@@T`R* @{è_C?6 @*{è_    {S@@blA4b@&Rs bv@b4bz@"4R6bbAyRdv@crAy@B|$BÚ!SA{¨_֠    {&RS*[@HA34dfv2aJ@!aJ:*cBu.q`|_`|ȡ5:aJ@!aJSA[B{è_!    {S[c#@!\@ @aD9 6@&R`@6k@V5vRA`nAk T`NA 4`JA 47w@@`(7uR*%**cRd*k`TqT /@5R/@5Ss@*'g@*RKK c4gSA[BcC#@{ƨ_~W *~5 5! @9@7`@"R"9c@b(@Bb@!7w@!@aD97!@`@c@b(@Bb@c!SA[BcC#@{ƨ_!!    {S C96@j@@ 7`@@`SA{¨_ր@@b(@c!b@     {Sk@!oA4[c@:@v@k TqMTxV@yHtr@y~@c@~|~  ~T |&Rj@T)Y!@g^@ycfr@yReV@yb@9@*b@**Rc[BcCSAkD{Ũ_`@ @!RR&Rj@T)g^@yfr@yceV@yRb@ @#@b(@Bc![BcCb@     {&RRS*!|``tn4[ck9sR *`5{kT`@h;@#\s@R_'*b4[BcCkDsE*SA{ƨ_[BcCkDsERSA*{ƨ_b    {cwR S*[***#R*k`TqT6'@**"R?SA[BcC{Ũ_'    {CS*[c&RkY3@8k@w@Z5zRAwR*****k`TqTz4g@K qiTo@6Sa@**Rcg@7R*a@+@*c**RW 4?q @z T?@***{ASB[CcDkE3@_q@zTg@*ҳ/@`[ ?@|*˷ a@**Rc ښq*$ @z Ta@*RcRg@**Rc ښq*$ @zT*Rc+@g@**cRR g@kT! @9@7`@"R"9c@b(@Bb@c!Ԛ?q)To@7g@ +@***Rc|qiTo@7g@j]g@f     {&RS[@LA44v"*C9@6RSA*[B@{Ĩ_`@aj@@ `7a@*c*R4 Rqa|_!Ka|5SA*[B@{Ĩ_*`@!T@ ?***Rc!`@c@b(@Bb@c!R*cRR*R R9     {S&R[@@@nAk)T2T@eC9*fn@Rc`n@5*``b@@5@4SA[B{è_*`4@@b(@Bc!c Rqa|_!Ka|5n@@b(@Bb@c!SA[B{è_b@     {S[ks@O@`nAa@k TcD`@xbj@@ 7`A@&RR5@@4*?6K@KkT{qTSa@`R@ r*gR} cE Rff|K|K_@U)HRV@yr!!|$! ÚO@!aA@(7cF*{CSD[EkGsH_ր6AbR5Sa@*Rc`@aj@@ 7`A@! @9@6cFR`@*R!`@R!cF`@"R" 9c@b(@Bb@c!cFRO@@Ss@cjbRtB r#B"$|C~CU)BfGcGu@|K *RccFSs@*RcRcF     {@<@{_     {S[!X@?qiT? qTBb:t6a@bJ@ SA[B{Ĩ_c8`h`|Scxdc$6A8@* @@ @@a4urbjt"|BBGA` )@SA[B{Ĩ_    {S@@nA4*@uJSA@{Ĩ_uJґSA@{Ĩ_    { &Rc@bnA _kT(@9 @{¨_`@c@b(@Bb@c! @{¨_    {!@S[@@(7u"R**[BSA{è_@\@@! @97`@"R"9c@b(@Bb@!    {S[@@jA4bJvb`*V6tSA[B@{Ĩ_!    {@!@{_    {S*[&R@LA`4w"C9!7SA[B@{Ĩ_*RW`@aj@@ @79SA[B@{Ĩ_*@!X@! ?ֿ9!`@c@b(@Bb@c!Կ9    {S[^P@2aB@5C96U@*cR*SA[B@{Ĩ_     {S&R[*@lA4k"T2bQ@|_@5;qT`C9R@6@*SA[B{Ĩ_c Rqa|_!Ka|5**@@b(@Bb@c!Դ    {@!@{_    {&R @lA" kT@`@`4D R|_!K5;Ձ5@?q4KT`D97}RcRC r!|@@#|#cfa|KA! @{¨_@T`@c@b(@Bb@c! @{¨_`@c@b(@c!b@     {@!@{_    {SclA@_kT*[*`5** T*[BSAcC{Ǩ_&R #Rb"BR#*_q$@zT#_q @zaT@c@b(@Bb@c!SAcC{Ǩ_`@c@b(@"**![B#5`@c@b(@"*!Ԫb@b@    {@!@{_    {S[c&R@@@nAkiT2ks7T@C9*n@Rc@j@@ ` 7n@5*""RaRn@4*x@b]s T K@R?kTT@+@**6BbCB$Ң?@sBsT7@@SA[BcCkDsE{Ȩ_Q@|_@|5 Rn@@b(@Bb@c!SA[BcC{Ȩ_     {S*[&Rk@lA4kbT`u";?C996*"Rcs""RaR`D9 6@qTb@q*GajA4c*h@O@wb3]ؠT 7K@kT+@`HTSa@7@R6B @$*3@VFBƠATG@R@\@ G@`5cCsE*SA[BkD{ʨ_GR8hb A|Sxa$š`6A8`@`3@**` @``` @!`SA*[BcCkDsE{ʨ_! @97`@"R"9c@b(@Bb@c!R`@c@b(@"c!Rb@    {@!@{_    lA#4{S@h@B@B b7R 4@kT!@?qT?qTSA{è_[&R@n@@5[BR@&R bn@5an* 5`n@2`nRv2*n@7nR[B*R_    {[clAa-4@.7SRrj,Tkrh@A@Ss@ 7?k,T&Rsv~D9@{ 6@5@!Rr qT**`4T@**RcSAkDsE*[BcC{ʨ_*j@)a7ZK:6_`iT5_T*?@*cjңtC|CcGbT@@*cR*SA*[BcCkDsE{ʨ_@@xj) 5T@*cR*`T`C9@6Ry#waC96v"R*`TrA @_T b@`64sQ @v@_TnA*Y`C96*!R?@*bjt |BG SAkDsEdҕ@R@@"@J†j@v@ 7C9@7u!xZj)Mb* 5*T@*Rc* `*`T**?@nSAkDsE* `@v*1TT@*Rcu/Rsq @٢b6Yy8hb A|Sxa$š 6A8Հ@7**7@@р`@ @@R*rRcSASAkDRu    {S[@h@c@c 7 [B*SA{ƨ_lA4c2@@#T`D9a@@6&R  C9`64RA @9c*%/@4R*SA[BcC#@{ƨ_Z**`4Ss@**Rc[B*SAcC#@{ƨ_Z@sB94*SA[BcC{ƨ_cC4#@    {[cs @h@!@! 7[B*cCsE{Ȩ_SlA!4@2 kT@qT8@a@@3RZ!@*4Ss@**cRSA*[BcCkDsE{Ȩ_*@@6@`񄄚 @bJ{73@&R C9 6b*@57@*@`hTZ!@?@!SA*[BcCkDsE{Ȩ_Z!@<*SA[BcCsE{Ȩ_t@xsb33@6SA lSAkDhSA<kDdSA|kD`@= dev->num_crtcs)%s %s: %sdrm_WARN_ON(!list_empty(&dev->vblank_event_list))drm_WARN_ON(!list_empty(&vblank->pending_work))drm_WARN_ON(dev->max_vblank_count)drm_WARN_ON(!({ do { __attribute__((__noreturn__)) extern void __compiletime_assert_436(void) __attribute__((__error__("Unsupported access size for {READ,WRITE}_ONCE()."))); if (!((sizeof(vblank->inmodeset) == sizeof(char) || sizeof(vblank->inmodeset) == sizeof(short) || sizeof(vblank->inmodeset) == sizeof(int) || sizeof(vblank->inmodeset) == sizeof(long)) || sizeof(vblank->inmodeset) == sizeof(long long))) __compiletime_assert_436(); } while (0); (*(const volatile typeof( _Generic((vblank->inmodeset), char: (char)0, unsigned char: (unsigned char)0, signed char: (signed char)0, unsigned short: (unsigned short)0, signed short: (signed short)0, unsigned int: (unsigned int)0, signed int: (signed int)0, unsigned long: (unsigned long)0, signed long: (signed long)0, unsigned long long: (unsigned long long)0, signed long long: (signed long long)0, default: (vblank->inmodeset))) *)&(vblank->inmodeset)); }))drm_WARN_ON(!crtc)drm_WARN_ON_ONCE(drm_max_vblank_count(dev, pipe) != 0)%s %s: Cannot compute missed vblanks without frame duration missed %d vblanks in %lld ns, frame duration=%d ns, hw_diff=%d drm_WARN_ON(({ do { __attribute__((__noreturn__)) extern void __compiletime_assert_417(void) __attribute__((__error__("Unsupported access size for {READ,WRITE}_ONCE()."))); if (!((sizeof(vblank->enabled) == sizeof(char) || sizeof(vblank->enabled) == sizeof(short) || sizeof(vblank->enabled) == sizeof(int) || sizeof(vblank->enabled) == sizeof(long)) || sizeof(vblank->enabled) == sizeof(long long))) __compiletime_assert_417(); } while (0); (*(const volatile typeof( _Generic((vblank->enabled), char: (char)0, unsigned char: (unsigned char)0, signed char: (signed char)0, unsigned short: (unsigned short)0, signed short: (signed short)0, unsigned int: (unsigned int)0, signed int: (signed int)0, unsigned long: (unsigned long)0, signed long: (signed long)0, unsigned long long: (unsigned long long)0, signed long long: (signed long long)0, default: (vblank->enabled))) *)&(vblank->enabled)); }) && drm_core_check_feature(dev, DRIVER_MODESET))[drm] *ERROR* crtc %u: Can't calculate constants, dotclock = 0! crtc %u: hwmode: htotal %d, vtotal %d, vdisplay %d crtc %u: clock %d kHz framedur %d linedur %d &vblank->queuedrm_vblank_init_releasecrtc %u: Calculating number of vblanks. diff_ns = %lld, framedur_ns = %d) crtc %u: Redundant vblirq ignored updating vblank count on crtc %u: current=%llu, diff=%u, hw=%u hw_last=%u clamping vblank bump to 1 on crtc %u: diffr=%u due to pre-modeset. drm_WARN_ON_ONCE(cur_vblank != vblank->last)enabling vblank on crtc %u, ret: %d crtc %d, vblank enabled %d, inmodeset %d drm_WARN_ON(drm_vblank_enable(dev, pipe))[drm] *ERROR* Invalid crtc %u [drm] *ERROR* Called from CRTC w/o get_scanout_position()!? crtc %u: Noop due to uninitialized mode. drm_WARN_ON_ONCE(drm_drv_uses_atomic_modeset(dev))crtc %u : scanoutpos query failed. crtc %u: Noisy timestamp %d us > %d us [%d reps]. crtc %u : v p(%d,%d)@ %lld.%06ld -> %lld.%06ld [e %d us, %d rep] %s %s: This function requires support for accurate vblank timestamps.disabling vblank on crtc %u drm_WARN_ON(atomic_read(&vblank->refcount) == 0)%s %s: vblank not available on crtc %i, ret=%i %s %s: vblank wait timed out on crtc %i Sending premature vblank event on disable: wanted %llu, current %llu drm_WARN_ON_ONCE(!drm_dev_has_vblank(dev))vblank event on %llu, current %llu Unsupported type value 0x%x, supported mask 0x%x crtc %d failed to acquire vblank counter, %d event on vblank count %llu, current %llu, crtc %u waiting on vblank count %llu, crtc %u crtc %d returning %u to client crtc %d vblank wait interrupted by signal       " #   l b |    w  P       F   drivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.cdrivers/gpu/drm/drm_vblank.c///drm.timestamp_precision_usecdrm.vblankoffdelaydrm.parm=timestamp_precision_usec:Max. error on timestamps [usecs]drm.parm=vblankoffdelay:Delay until vblank irq auto-disable [msecs] (0: never disable, <0: disable immediately)drm.parmtype=timestamp_precision_usec:intdrm.parmtype=vblankoffdelay:intGCC: (GNU) 13.2.1 20231205 (Red Hat 13.2.1-6)=@` 0@P"`^p3W{ @0c@P`==  = = X=====` =x==%==!2P=#=%J ='\ =)w d=+@=-=/=1=3!85=57=9=;===?=A=C=E=G=I=K=M=O=Q=S=U=W=Y=[=]=_a=aaa = bb=b&b7bHbYbjbc=c{ccccCc ~c(c0c8c@IcHzcPcXc`chRcpcxc c\ c c c c- cei eC eCp e* e f=f f( f((i5 ? I :S W] tg q {    " ? \ y       ' D a ~) 4 ? J U ` ,k Iv f        !#%')+-/139;=?ACEGIKMOQSUWY[]_h`P Hp($xD2$n((88C(g`(h!(!LH,"Pds@#h`'(      ) 8 I U c z        @`k} 8G<V^hx )A^'{(8*.F[l0drm_vblank.c__export_symbol_drm_crtc_accurate_vblank_count$d__export_symbol_drm_vblank_init__export_symbol_drm_dev_has_vblank__export_symbol_drm_crtc_vblank_waitqueue__export_symbol_drm_calc_timestamping_constants__export_symbol_drm_crtc_vblank_helper_get_vblank_timestamp_internal__export_symbol_drm_crtc_vblank_helper_get_vblank_timestamp__export_symbol_drm_crtc_vblank_count__export_symbol_drm_crtc_vblank_count_and_time__export_symbol_drm_crtc_next_vblank_start__export_symbol_drm_crtc_arm_vblank_event__export_symbol_drm_crtc_send_vblank_event__export_symbol_drm_crtc_vblank_get__export_symbol_drm_crtc_vblank_put__export_symbol_drm_wait_one_vblank__export_symbol_drm_crtc_wait_one_vblank__export_symbol_drm_crtc_vblank_off__export_symbol_drm_crtc_vblank_reset__export_symbol_drm_crtc_set_max_vblank_count__export_symbol_drm_crtc_vblank_on__export_symbol_drm_crtc_vblank_restore__export_symbol_drm_handle_vblank__export_symbol_drm_crtc_handle_vblank$xdrm_vblank_count_and_time__get_vblank_counterdrm_crtc_get_last_vbltimestampstore_vblankdrm_vblank_init_releasevblank_disable_fndrm_reset_vblank_timestampdrm_update_vblank_countdrm_vblank_enable__param_str_timestamp_precision_usec__param_str_vblankoffdelaydrm_timestamp_precisiondrm_vblank_offdelay__key.0__already_done.6__already_done.2__already_done.5__already_done.3__already_done.4__already_done.1__UNIQUE_ID___addressable_drm_crtc_handle_vblank444__UNIQUE_ID___addressable_drm_handle_vblank443__UNIQUE_ID___addressable_drm_crtc_vblank_restore439__UNIQUE_ID___addressable_drm_crtc_vblank_on438__UNIQUE_ID___addressable_drm_crtc_set_max_vblank_count437__UNIQUE_ID___addressable_drm_crtc_vblank_reset435__UNIQUE_ID___addressable_drm_crtc_vblank_off434__UNIQUE_ID___addressable_drm_crtc_wait_one_vblank433__UNIQUE_ID___addressable_drm_wait_one_vblank432__UNIQUE_ID___addressable_drm_crtc_vblank_put431__UNIQUE_ID___addressable_drm_crtc_vblank_get430__UNIQUE_ID___addressable_drm_crtc_send_vblank_event428__UNIQUE_ID___addressable_drm_crtc_arm_vblank_event427__UNIQUE_ID___addressable_drm_crtc_next_vblank_start426__UNIQUE_ID___addressable_drm_crtc_vblank_count_and_time425__UNIQUE_ID___addressable_drm_crtc_vblank_count424__UNIQUE_ID___addressable_drm_crtc_vblank_helper_get_vblank_timestamp423__UNIQUE_ID___addressable_drm_crtc_vblank_helper_get_vblank_timestamp_internal422__UNIQUE_ID___addressable_drm_calc_timestamping_constants421__UNIQUE_ID___addressable_drm_crtc_vblank_waitqueue420__UNIQUE_ID___addressable_drm_dev_has_vblank419__UNIQUE_ID___addressable_drm_vblank_init418__UNIQUE_ID___addressable_drm_crtc_accurate_vblank_count416__UNIQUE_ID_timestamp_precision_usec415__UNIQUE_ID_vblankoffdelay414__UNIQUE_ID_timestamp_precision_usectype413__UNIQUE_ID_vblankoffdelaytype412__param_timestamp_precision_usec__param_vblankoffdelay.L144721.L144722.L144723.L144724.L144725.L144726.L144727.L144728.L144729.L1447210.L1447211.L1447212.L1447213.L1447214.L1447215.L1447216.L1447217.L1447218.L1447219.L1447220.L1447221.L1447222.L1447223.L1447224.L1447225.L1447226.L1447227.L1447228.L1447229.L1447230.L1447231.L1447232.L1447233.L1447234.L1447235.L1447236.L1447237dev_driver_string__warn_printk_raw_spin_lock_irq_raw_spin_unlock_irqdrm_crtc_from_indexktime_get_raw_spin_lock_raw_spin_unlock__drm_debug__drm_dev_dbgkthread_destroy_workertimer_delete_syncdrm_mode_copy_dev_errdrmm_kmallocdrm_vblank_worker_init__init_waitqueue_headinit_timer_key__drmm_add_action_or_resetns_to_timespec64__tracepoint_drm_vblank_event_delivereddrm_send_event_timestamp_lockedcpu_number__cpu_online_mask__traceiter_drm_vblank_event_deliveredpreempt_schedule_notracedrm_vblank_count_raw_spin_lock_irqsave_raw_spin_unlock_irqrestore__list_add_valid_or_reportdrm_vblank_disable_and_savedrm_vblank_getdrm_vblank_putjiffiesmod_timerinit_wait_entryprepare_to_wait_eventfinish_waitschedule_timeout__wake_up__list_del_entry_valid_or_reportdrm_vblank_cancel_pending_workskthread_flush_worker__tracepoint_drm_vblank_eventdrm_handle_vblank_works__traceiter_drm_vblank_eventdrm_legacy_modeset_ctl_ioctldrm_wait_vblank_ioctldrm_lease_heldkmalloc_cacheskmalloc_tracekfreedrm_event_reserve_init_locked__tracepoint_drm_vblank_event_queued__traceiter_drm_vblank_event_queueddrm_crtc_get_sequence_ioctldrm_mode_object_finddrm_modeset_lockdrm_modeset_unlockdrm_crtc_queue_sequence_ioctlparam_ops_int""(""(|"8"("8 "(4L"pP"(T"pX"(\""(""(,"0"(4"8"(<ccc"x"("x"( 4L"`P"(T"`X"(\ H"L"Pcc""""(""( "0"("0"(  "( "(  "` "`  " " 4 @ "( H "( ` l  " "( " "(   " P "  P "    "   $ ( < t   8 T  <  " "  "0 "0 " " " " " " " " ("0 <"0 Pdchc" "(" "("0 "0 " " 4d" l" x"`"("`"(" " Hh" p" t"P "("P "($<"@"(D"H"(Ll"p x"p $" ," 0Xc\c|" " " " " "(" "(p" x" "H "H Xl p |    0"4"(8"<"(@lt cc" " $x 8P"`"("`"(T|"8 "8 P""(""(tx""(""(0"X 4"(8"X <"(@|  ( < H  t    " "( " "(   " " !!$!