Joonbum Ko [Thu, 30 Dec 2021 06:37:10 +0000 (15:37 +0900)]
Clear all cached buffer when queue_force_flush
Change-Id: Ic232153cfbdea49aea1a9fd862ac81f673f7814c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 30 Dec 2021 04:56:12 +0000 (13:56 +0900)]
Add mutex protection when gsource_destroy
Change-Id: I50e841fa3895e6f145249396574e6a8267f1e663
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 30 Dec 2021 06:19:24 +0000 (15:19 +0900)]
Add log to check when the transform changed
Change-Id: I069fc944356d25845655359cdb8654887b554e8f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 24 Dec 2021 01:45:28 +0000 (10:45 +0900)]
Package version up to 1.8.19
Change-Id: I5b0450b14c24e3f8152b46f9482f52a8fce19d71
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 24 Dec 2021 01:40:41 +0000 (10:40 +0900)]
Initialize last_deq_buffer to NULL when it free.
Problem : DEQ -> ENQ -> ACQ -> VBLANK -> COMMIT -> RELEASE
-> QUEUE_RESET -> last_deq_buffer free
-> try DEQ !!< will be blocked.
Init wl_egl_surface->last_deq_buffer to NULL when it was free
to prevent to access the wrong pointer of last_deq_buffer.
Change-Id: Ic619b6a27a098b3de06c5733cec171538f921165
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 23 Dec 2021 01:38:38 +0000 (10:38 +0900)]
Package version up to 1.8.18
Change-Id: I61c16ae2ae8798af01bfcf383602f607dce88049
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 23 Dec 2021 01:41:04 +0000 (10:41 +0900)]
Added mutex for protecting vblank resources.
As-Is :
- vblank resource was protected via surf_mutex.
To-Be :
- It will be protected via its own mutex.
Change-Id: Iff4084a4f8271b8cbe4a7ece308b98915d9641af
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 22 Dec 2021 08:25:36 +0000 (17:25 +0900)]
Changed to do roundtrip_queue before display_fini.
Change-Id: I998141a3dc63ac944526dbb14876d8d6fa690c02
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 22 Dec 2021 08:16:12 +0000 (17:16 +0900)]
Remove wl_egl_buffer from vblank list when it freed.
- If the wl_egl_buffer is forcibly free from the buffer_clear(),
the invalid wl_egl_buffer remains in vblank->waiting_buffers.
- This invalid pointer should be removed from the list
when wl_egl_buffer free.
Change-Id: If6b9f58f4160c4426f2b816a22afb9e23b61372a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 22 Dec 2021 05:45:09 +0000 (14:45 +0900)]
Modified the new buffer allocation in the RESET situation
As-Is :
- If the tbm_surface_queue_reset occurs more frequently
than VBLANK (16ms), there is a problem that the new tbm_surface
continues to be allocated.
To-Be :
- If there is a dequeue buffer before the RESET occurs,
the new buffer will be allocated after waiting for
dequeued buffer to be commit.
Change-Id: Id256e15e1125e06b362d5b90e7ead7718b6343ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 14 Dec 2021 04:46:53 +0000 (13:46 +0900)]
Package version up to 1.8.17
Change-Id: I94cb61d3c1600621d650b4b47ca41758ff8e3d4c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Changyeon Lee [Fri, 10 Dec 2021 06:48:48 +0000 (15:48 +0900)]
Send transform of window and buffer since wl_surface version 2
wl_surface_set_buffer_transform request is supported since
wl_surface version 2
Change-Id: Iaa9a996853b3e59fb2d325b615e1587d18e6c119
Changyeon Lee [Thu, 9 Dec 2021 10:54:34 +0000 (19:54 +0900)]
Send transform of window and buffer to server after they are created.
this patch is for fixing below case
1. create eglWidnowSurface(1) with wl_egl_window(1)
2. set window and buffer 90 transform with wl_egl_window(1)
3. destroy eglWindowSurface(1) of wl_egl_window(1)
4. set window and buffer 0 transform with wl_egl_window(1)
5. create eglWidnowSurface(2) with wl_egl_window(1)
7. set window transform 0 transform with wl_egl_window(1)
8. tpl does not send 0 transform to server
Change-Id: I8d83750f4ecd5791accecf4fe51681fe55b05cf1
Joonbum Ko [Tue, 14 Dec 2021 04:35:06 +0000 (13:35 +0900)]
Initialize wl_egl_buffer->waiting_source in mutex protection.
- the buffer_clear() of the main thread could occur thread conflict.
- the pointer wl_egl_buffer->waiting_source must be protected.
Change-Id: I4af88b06ff104a39c1fc0aa890d1cab74f589eb7
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 17 Nov 2021 04:32:44 +0000 (13:32 +0900)]
Package version up to 1.8.16
Change-Id: I1275061fee1f08b925c5eaf1abf5ab0c12a21443
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 17 Nov 2021 04:31:12 +0000 (13:31 +0900)]
Flush vblank waiting buffers when tdm error occured.
- If tdm error such as TIEMOUT occured,
flush all vblank waiting buffers of its wl_egl_surface.
Otherwise, only one wl_egl_buffer will be commited
per one vblank event.
Change-Id: I8df5cb847cf77875315df6ae3ca4086992f1700e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 21 Oct 2021 12:16:35 +0000 (21:16 +0900)]
Package version up to 1.8.15
Change-Id: Ie037ea92b73da3efb0e4ff953d6a65823036f7ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 21 Oct 2021 11:44:05 +0000 (20:44 +0900)]
Change the timeout limit to 200ms.
Change-Id: I05669288993d565f821594e19fcc404f8c02b4a5
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 21 Oct 2021 11:39:24 +0000 (20:39 +0900)]
Modified to create wl_buffer only just before surface commit.
- While surface is destroyed, it is to prevent unintentional
generation of wl_proxy.
Change-Id: Ic4b90c33d213453bad38ffd72cb9c2efbbfa5aa5
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 5 Oct 2021 03:25:19 +0000 (12:25 +0900)]
Package version up to 1.8.14
Change-Id: Ib22f2cefd37b778270b6a6c1b774edd79d1c8eb4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 28 Sep 2021 08:03:57 +0000 (17:03 +0900)]
wayland_egl_tizen: Move tizen_private_create() to each backend.
- Move the function implementation of tizen_private_create()
to each backend.
- Since wl_egl_window_tizen APIs are not used anymore,
it is not necessary to provide in wayland-egl-tizen-priv.h
Change-Id: I9309914f4c7a2c3267b5fd1edf844c25e866e64a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 28 Sep 2021 07:59:37 +0000 (16:59 +0900)]
wayland-egl-tizen: Modified to do not create tizen_private.
- tizen_private will be created by tpl_surface_create internally.
- Calling any wl_egl_window_tizen APIs before calling
tpl_surface_create will be ignored.
Change-Id: I5d5c195e27a2ea1d74e779fd6abc6025456e5df6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 6 Sep 2021 02:07:25 +0000 (11:07 +0900)]
Package version up to 1.8.13
Change-Id: I53afc721c8b4a28b875c0c2f252feec3820e4311
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 6 Sep 2021 02:04:23 +0000 (11:04 +0900)]
Move assert checking to before add listener of wl_buffer
Change-Id: Ia1b6a7ed497b5f0f1d2201719a40a3d1291acff0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 2 Sep 2021 06:29:20 +0000 (15:29 +0900)]
Modified build error when TIZEN_FEATURE disabled.
Change-Id: Ib0452ed93c86b1400a9daadfb2e295f95f11fd61
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 27 Aug 2021 01:31:58 +0000 (10:31 +0900)]
Package version up to 1.8.12
Change-Id: Iebc56cec9361db0f42a5a9883493a4f63fcc350a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 27 Aug 2021 01:31:11 +0000 (10:31 +0900)]
Fixed a problem than adds duplicate listener to wl_buffer.
Change-Id: I0ab36d23602b9b3099b2057ea0701cf9a4540234
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 27 Aug 2021 01:09:09 +0000 (10:09 +0900)]
Changed log printing for wl_buffer creation to TPL_INFO.
Change-Id: I4885691b57910a991a15c19e45ab22fad14a37ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 27 Aug 2021 01:05:44 +0000 (10:05 +0900)]
Add null checking to prevent problem.
Change-Id: I4f837569048a151d43b0a689950ab7a4bbdd1355
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 13 Aug 2021 02:04:56 +0000 (11:04 +0900)]
Add build flags to separate tizen specific feature.
Change-Id: I4615c5a9ca6a82d116fdd0662c2ce8f271490c62
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 13 Aug 2021 03:17:00 +0000 (12:17 +0900)]
Remove dependency releated wayland-vulkan-protocol
Change-Id: Id33821ae95d98e84c1af38b429804ccf3e92850e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 13 Aug 2021 02:02:40 +0000 (11:02 +0900)]
Move unusing files to unused and remove from makefile.
Change-Id: Ic24027a9e907cb064325a1c2690e820da17cd03a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 13 Aug 2021 01:53:02 +0000 (10:53 +0900)]
wayland-egl-tizen: Add a log output option.
Change-Id: I732410110ece931eb036b4398a45b8be143e36e4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 26 Jul 2021 04:16:14 +0000 (13:16 +0900)]
Package version up to 1.8.11
Change-Id: I19b4eabb56d6563d1c7a4bd1886a25d376d3f010
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 21 Jul 2021 07:53:14 +0000 (16:53 +0900)]
Remove unnecessary surf_mutex locking
- This surf_mutex locking in buffer_clear
can occur deadlock problem.
Change-Id: Ibd4fc7ff312c4ab96aa0db6c69d217979cac9622
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 21 Jun 2021 02:12:06 +0000 (11:12 +0900)]
Package version up to 1.8.10
Change-Id: Ife001513e981d8ae2dae6dfedc5d7e210c0e873b
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 21 Jun 2021 02:11:34 +0000 (11:11 +0900)]
Fix missing use of num_buffers when create tbm_queue.
Change-Id: If02ac0b00d87c3a1da860eb69b3b361666ff90a6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 10 Jun 2021 05:36:02 +0000 (14:36 +0900)]
Fix incorrect use of can_dequeue return value.
Change-Id: Iac9ca1b9cd0a8d4749f10ee4dfd97f45a7f1a39a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 9 Jun 2021 03:20:44 +0000 (12:20 +0900)]
Resolve build warning related to backend init functions.
Change-Id: I08419d24c1411051029d4db6406682be0628db15
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 8 Jun 2021 09:35:18 +0000 (18:35 +0900)]
Add magic check to confirm WL_EGL_TIZEN private.
Change-Id: I0f3663c027c4c3e2d14843296b94d81345b3580e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 4 Jun 2021 06:55:36 +0000 (15:55 +0900)]
Package version up to 1.8.9
Change-Id: I68bc650bfe937a7e80c0ea73fa4b5a013cf020fd
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 27 May 2021 10:56:35 +0000 (19:56 +0900)]
Remove duplicate initialize.
Change-Id: Iebcb9c25dd42fe487dec172327f5161ff56ea0f1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 25 May 2021 09:22:55 +0000 (18:22 +0900)]
Add null checking to prevent problem.
Change-Id: Icd94a00b015b5100e6beaa59d435731836a2d376
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 27 May 2021 11:14:47 +0000 (20:14 +0900)]
Clarified thread message and corrected some bugs.
Change-Id: I63fec57eb66104c87757cf5f665e8160859bddc8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Tianhao Ni [Fri, 4 Jun 2021 05:42:48 +0000 (13:42 +0800)]
Fix ws-testcase build issue:
- Issue:
undefined reference to '__tpl_display_choose_backend_wl_egl_thread'
undefined refetence to '__tpl_display_choose_backend_wayland_vk_wsi'
- Fix:
Replace __tpl_display_choose_backend_wl_egl_thread() with __tpl_display_choose_backend_wl_egl_thread2()
Replace __tpl_display_choose_backend_wayland_vk_wsi() with __tpl_display_choose_backend_wayland_vk_wsi_thread()
Change-Id: I1d562bbaf37c4c45b238e221b125bdb42cc6db1a
Signed-off-by: Tianhao Ni <tianhao.ni@samsung.com>
Joonbum Ko [Thu, 20 May 2021 05:37:32 +0000 (14:37 +0900)]
Package version up to 1.8.8
Change-Id: I32040f47e2a577cffcb248fcc2fa0c0dc9d16e93
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 18 May 2021 08:28:29 +0000 (17:28 +0900)]
Expand the condition of need_to_wait in buffer_clear.
- AS-IS : The need_to_wait flags is set to true under
different conditions according to the use of
explicit_sync.
- PROBLEMS : A buffer that is not included in the condition
may cause thread conflict.
- TO-BE : The buffers whose status is from ENQUEUED to COMMITTED
will be cleared after waiting until wl_surface_commit.
Change-Id: Ic75de641182cfcfec2df71b57a982e1e63a52fe8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 18 May 2021 06:38:21 +0000 (15:38 +0900)]
Enhanced protection against fence waiting buffers.
- timeout value up to 50ms.
- Modified to guarantee until the waiting buffer
completes the operation through surf_mutex.
Change-Id: If0fd6de234f5f79369dee23d9cddda9cd961f882
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 17 May 2021 07:23:49 +0000 (16:23 +0900)]
Added surface_vblanks list for safe destroy.
- If an error occurs in tdm_client_display,
it is a problem that cannot be recovered,
but it should not affect rendering.
- In this case, destroy tdm_client and stop using wait_vblank.
- However, a problem occurs when accessing vblank after tdm_client_destroy.
- Therefore, the created vblanks must be destroyed first and then
destroy the tdm_client.
- The added surface_vblanks list is to trace the created vblanks.
Change-Id: I3eae60842761dd6cda0042ff941e0f0736633b4c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 17 May 2021 05:37:14 +0000 (14:37 +0900)]
Add tpl_surface_vblank_t to manage vblank object
Change-Id: I56b54ccf7c22c9ef03c6973483ba1c0cb52b959d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 11 May 2021 02:06:01 +0000 (11:06 +0900)]
Package version up to 1.8.7
Change-Id: I7cc41929a6be41e85a6d7f205411217339cdeb6a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 11 May 2021 06:08:19 +0000 (15:08 +0900)]
Fix to prevent thread conflict.
Change-Id: I946bd6bce80a3e6188ff9e6c060abb7634a7e9b0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 11 May 2021 02:05:26 +0000 (11:05 +0900)]
Fix so that wl_buffer is not added to the listener with null.
Change-Id: I346a97a4dcb3dfe11413919efacac1c904cfc096
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 3 May 2021 07:49:39 +0000 (16:49 +0900)]
Package version up to 1.8.6
Change-Id: I12bcd5b5c99b9a326697c1ea4f65d0c1c6f06269
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 3 May 2021 07:48:35 +0000 (16:48 +0900)]
Fix wrong case checking to unreachable code.
Change-Id: Id5bc26ba2cb5eb9cdadae12d751750ae7d243a9e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 30 Apr 2021 06:36:33 +0000 (15:36 +0900)]
Package version up to 1.8.5
Change-Id: Ie10549ac47f7c15bc87ac8a80b3bd07d217c3a04
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 30 Apr 2021 06:27:54 +0000 (15:27 +0900)]
Back up the legacy codes of wl_vk_thread to unused.
Change-Id: Ie9276cd997b89be2f558306daaee3e3eb3738be9
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 30 Apr 2021 06:20:04 +0000 (15:20 +0900)]
Fix a problem when explicit_fence was not used.
- Wayland error logs are printed due to attempt to add
the buffer release listener in duplicate.
Change-Id: I1c5653ea3802a5a901cbf7fa07df73f0a822afaf
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 29 Apr 2021 01:48:11 +0000 (10:48 +0900)]
Fix so that error log is not printed when tpl_display is reused.
Change-Id: Iab3be64d490dd0e8592dc57d413877e37e107fa1
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 29 Apr 2021 01:45:53 +0000 (10:45 +0900)]
Disabled the codes that is not being used now.
Change-Id: I48424781d5f3c5edafa205da7963401b60daecef
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 29 Apr 2021 01:44:19 +0000 (10:44 +0900)]
Make vulkan only uses the thread backend.
Change-Id: Ia6e693f04811edd4759ddd6fa322327227e6aa2e
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 27 Apr 2021 10:51:22 +0000 (19:51 +0900)]
Make the prefix of backend APIs shorten
Change-Id: I8ccfcd5402ad9071854f7ea69695a553fe9e213c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 27 Apr 2021 10:46:09 +0000 (19:46 +0900)]
Change some internal functions to static
Change-Id: I11f1394a62ed6b1a2f19a01364c0aa9a6aded16f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 27 Apr 2021 10:41:10 +0000 (19:41 +0900)]
Add set_post_interval to set commit interval
Change-Id: I1f531f4240662ccfe5afef643052e99a830ae4d6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 27 Apr 2021 06:22:56 +0000 (15:22 +0900)]
Implement buffer commit/release
Change-Id: I7f6685b20da489603e9661333420a09980f93182
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 26 Apr 2021 10:35:31 +0000 (19:35 +0900)]
Implement DEQ/CANCEL/ACQ/ENQ buffer.
Change-Id: If00f9b4e7c2aedefc9b20b76ac7abb99b6e6202d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 9 Apr 2021 05:24:31 +0000 (14:24 +0900)]
Implement swapchain create/destroy/get_swapchain_buffers.
Change-Id: Ic6b07b8247230409808db35ec308dbee2df5861c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 1 Apr 2021 07:22:02 +0000 (16:22 +0900)]
Implement tpl_wl_vk_surface using tpl_gthread_utils.
Change-Id: Ibb58ef10fa02fb6220453c5c18b7760a7a4d9994
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Re-implement tpl_wl_vk_surface using tpl_gthread_utils
Change-Id: I59ce5fb2092f60956ac1a2322f701b4a610016fe
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 29 Mar 2021 02:07:47 +0000 (11:07 +0900)]
tpl_wl_vk_thread: Modified wl_vk_display to use tpl_gthread_util
Change-Id: I3fb5c37a1a2850a95d1218dc607f6c190e94da1c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 17 Mar 2021 09:47:54 +0000 (18:47 +0900)]
Modified structures to be used in the vulkan backend.
Change-Id: Ia5c4c0843b150f988416c38cefed569b13909272
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 1 Apr 2021 07:52:12 +0000 (16:52 +0900)]
Package version up to 1.8.4
Change-Id: Icdb52e525fe619af52049250dbbc731e0334653d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 1 Apr 2021 07:49:25 +0000 (16:49 +0900)]
Fix potential overflow issue of buffers array.
Change-Id: I4d32443eb936f5ed0f0706f9e8fe3d3ac5187624
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 1 Apr 2021 07:24:03 +0000 (16:24 +0900)]
Add missing line to return NULL when alloc failed.
Change-Id: Ifa88e7a36fd19c144d50c9cec7604541d6aabf24
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 25 Mar 2021 04:15:53 +0000 (13:15 +0900)]
Package version up to 1.8.3
Change-Id: Ibf44a2061e89f5b0c9841ebe3a2b9c81b424bd07
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 25 Mar 2021 04:13:51 +0000 (13:13 +0900)]
Make ready_to_commit to TRUE when acquire_fence_fd is not used.
- Missig this line caused a serious problem where wl_surface_commit
would not work if acquire_fence_fd was not used.
Change-Id: I22b610ad187d90b2d51cb73fa7e4913095997009
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 25 Mar 2021 03:51:06 +0000 (12:51 +0900)]
Fixed wrong use of NULL checking macro.
Change-Id: I9d1d11823a15395dac38360aff25d9c991351f53
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 25 Mar 2021 03:46:10 +0000 (12:46 +0900)]
Close release_fence_fd when wl_egl_buffer freed.
- The fenced_release event can be dispatched just before
the wl_egl_buffer is freed.
At this time, release_fence_fd delivered to fenced_release event
may leak if it is not closed because wl_egl_buffer cannot be
used and is freed.
Change-Id: I7584c518b955c83f632b2d5ea281272f8dd2b166
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 25 Mar 2021 01:36:18 +0000 (10:36 +0900)]
Modified the log output from gsource_finalize.
Change-Id: I491f012afb0aba638cb40b3f4f47840dfe36dac4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 24 Mar 2021 10:48:31 +0000 (19:48 +0900)]
Add intended_destroy flag to destroy only when intended.
- G_IO_IN may occur in eventfd of finalizer source due to
some unexpected errors.
In this case, if gsource destroyed in unintended,
a fatal problem may occur in thread.
- The intended_destroy flag of the newly added to tpl_gsource
will help the finalizer source to operate normally only if it is
intended G_IO_IN.
Change-Id: I6dd6a2de7e3c4ff667f8d639e30783584e6e8cec
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 24 Mar 2021 08:06:35 +0000 (17:06 +0900)]
Add IO exception checking to reduce warning logs.
- When a problem occurs, there are cases where
the result of g_source_query_unix_fd is (cond == 0).
- Since too many warning logs may be output,
exception handling was added to simply ignore
it in this case.
Change-Id: I694c5916c82d0969a86db8207ad8a64224e2fb25
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 24 Mar 2021 07:31:52 +0000 (16:31 +0900)]
Add some logs to trace buffers.
Change-Id: I508922c4007f4ce7429f846bae7270ad54bfa364
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 23 Mar 2021 04:50:08 +0000 (13:50 +0900)]
Package version up to 1.8.2
Change-Id: I26be40e9102731927b0b0134745a18d050f39f7d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Tue, 23 Mar 2021 04:44:38 +0000 (13:44 +0900)]
Fix gem memory leak issue when client destroyed.
- When surface_fini, the ENQUEUED state, the wl_egl_buffer
was not properly processed.
- As a result, the APP was terminated without
tbm_surface_destroy, resulting in GEM Memory leak.
Change-Id: I5b9da2f256265c9f986ecc6ff4dcd963e096e30b
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 12 Mar 2021 06:52:53 +0000 (15:52 +0900)]
Package version up to 1.8.1
Change-Id: I2560ac5a621f19981742bb46965f155913e27b99
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 12 Mar 2021 04:22:16 +0000 (13:22 +0900)]
Enable explicit_fence_sync feature defaultly.
Change-Id: I44a63dc2df55d54372a8ddfe2392f618489ca1da
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 12 Mar 2021 02:17:25 +0000 (11:17 +0900)]
Fix a problem with overwriting fence fd with -1.
Change-Id: Iab7191b1ddd50a822b768529f577b1612f80e259
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 12 Mar 2021 01:42:33 +0000 (10:42 +0900)]
Fix buffer_clear logic for explicit fence sync.
Change-Id: Idb76fa9179605c03b29c8dd36d9276f121d7753d
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 11 Mar 2021 08:56:37 +0000 (17:56 +0900)]
Destroy buffer_release when wl_egl_buffer destroy.
Change-Id: Iad683fc89b9d9a5e23a948f564a64ad572715140
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 11 Mar 2021 07:09:32 +0000 (16:09 +0900)]
Make shorten the name of backend function.
- __tpl_wl_egl_surface_cancel_dequeued_buffer() is too long name.
- it will be changed to below.
__tpl_wl_egl_surface_cancel_buffer()
Change-Id: I05d6520097b965e316bbf8b9b9b2c1e78c62ecbb
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 11 Mar 2021 07:03:14 +0000 (16:03 +0900)]
Changed to wait until ENQUEUE becomes FENCE_SIGNALED.
- It is not safe to force close before being SIGNALED status
because it is a fence fd delivered from driver.
- Therefore, it is desirable to destroy all buffers
when SIGNALED status is guaranteed.
Change-Id: Ifd2632b6aeb3d519031e79cb03118b306fcd49a6
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 11 Mar 2021 06:30:21 +0000 (15:30 +0900)]
Fix some order of printing logs.
Change-Id: Ie0830c48474305fc61f12f571bd5911109e17cd3
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 11 Mar 2021 02:11:28 +0000 (11:11 +0900)]
Clear all buffers before destroying surf_source.
Change-Id: Ifc52b83af3eb193915090369f3e9985048a702fb
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 10 Mar 2021 06:49:47 +0000 (15:49 +0900)]
Fix some wrong indentations
Change-Id: I936059980b41c6abf7fa9be58d9f41032c7a373f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Mon, 8 Mar 2021 08:46:31 +0000 (17:46 +0900)]
Rename old one by adding _legacy postfix.
Change-Id: I7a69b027438ce99044d0842b971809efa61d49e3
Joonbum Ko [Thu, 4 Mar 2021 03:58:28 +0000 (12:58 +0900)]
Add string_to_status to print status logs as string.
Change-Id: I2166c284714a70a5c5c82a446e00e9e22472aa6a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Thu, 4 Mar 2021 01:36:02 +0000 (10:36 +0900)]
Add mutex lock/unlock before when clear mutex.
Change-Id: Ibeed901734d50be64fce2843ee93982e4071a5cf
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 3 Mar 2021 03:18:49 +0000 (12:18 +0900)]
Use tpl_gcond_timed_wait to prevent deadlock.
- There may be cases where the ddk terminates
without sending a fence release signal.
- In such a case, waiting for signaled with
tpl_gcond_wait() may result in deadlock.
- The newly added tpl_gcond_timed_wait() is used to
force release if a signal does not come within 16ms.
Change-Id: I11801bb9f8ff4450a00b12656694940e28121a69
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 3 Mar 2021 02:21:31 +0000 (11:21 +0900)]
Add a new tpl_gthread API to use g_cond_wait_until.
Change-Id: I7187b036fa58cbe7182659b015a3cb0d5eb56966
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Wed, 3 Mar 2021 01:57:25 +0000 (10:57 +0900)]
Fixed a problem occured by use_wait_vblank exception.
Change-Id: Id7ba6ab41d7fef4441cf3a03ef63074c6d2c0256
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
Joonbum Ko [Fri, 5 Feb 2021 06:51:39 +0000 (15:51 +0900)]
Add INFO logs at finalize.
Change-Id: I26aa6c7b35899b4aa29c2e39d2966c688ccce051
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>