platform/core/uifw/libtpl-egl.git
19 months agoPackage version up to 1.9.9 15/282515/1 accepted/tizen_7.0_unified_hotfix tizen_7.0_hotfix accepted/tizen/7.0/unified/20221110.062136 accepted/tizen/7.0/unified/hotfix/20221116.110149 accepted/tizen/unified/20221006.151841 tizen_7.0_m2_release
Joonbum Ko [Wed, 5 Oct 2022 01:58:46 +0000 (10:58 +0900)]
Package version up to 1.9.9

Change-Id: I6c7059dae6306e235be00ac9ec8bd1f7d3112136
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoAdd null checking before calling tpl_gsource_destroy. 14/282514/1
Joonbum Ko [Wed, 5 Oct 2022 01:57:23 +0000 (10:57 +0900)]
Add null checking before calling tpl_gsource_destroy.

Change-Id: I431f21b80215abeafc5ab6daa45778f617cc661a
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoRemove unncessary header 13/282513/1
Joonbum Ko [Wed, 5 Oct 2022 01:49:43 +0000 (10:49 +0900)]
Remove unncessary header

Change-Id: I810ec7c149bbb782d8e04167f66810171226d728
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoPackage version up to 1.9.8 61/282361/1
Joonbum Ko [Fri, 30 Sep 2022 07:35:33 +0000 (16:35 +0900)]
Package version up to 1.9.8

Change-Id: I7a1bda7114b8cf98de0cd8f2f02dfb6b8d2c25fa
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoModified to call tpl_gsource_destroy only once. 60/282360/1
Joonbum Ko [Fri, 30 Sep 2022 07:33:54 +0000 (16:33 +0900)]
Modified to call tpl_gsource_destroy only once.

 - tpl_gsource_destroy means 'sending destroy message to thread'.
  So it need not to be called in loop.

Change-Id: Ifd5706d738a2385396acaa3723138b2f564de4c2
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoChanged the order of lock/unlock at buffer_clear. 59/282359/1
Joonbum Ko [Fri, 30 Sep 2022 07:23:50 +0000 (16:23 +0900)]
Changed the order of lock/unlock at buffer_clear.

 - The lock/unlock order of buffer->mutex and display->wl_event_mutex
  is important. display->mutex must surround buffer->mutex

 - Before applying this patch, deadlock issue may be
  occured in buffer_clear.

Change-Id: I90d9b36874def4e4c7f0bd36742b3bbd00faab44
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoDelete wrong g_main_context_unref 04/282304/1
Joonbum Ko [Thu, 29 Sep 2022 12:04:56 +0000 (21:04 +0900)]
Delete wrong g_main_context_unref

 - GMainContext is also destroyed when GMainLoop is destroyed.
  Therefore, it is the wrong code to do context_unref before loop_unref.

Change-Id: Ib57eab7ba4345565977102abb0df3268d7f42acb
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoChanged the function name properly. 03/282303/1
Joonbum Ko [Thu, 29 Sep 2022 11:45:42 +0000 (20:45 +0900)]
Changed the function name properly.

 tpl_cond_timed_wait -> tpl_gcond_timed_wait

Change-Id: Iebe13b6aa7598d652cf3b5968dbc7b2bb96a44e0
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoModified the codes related to call tpl_gcond_wait. 02/282302/1
Joonbum Ko [Tue, 27 Sep 2022 11:41:14 +0000 (20:41 +0900)]
Modified the codes related to call tpl_gcond_wait.

 - g_cond_wait is sometimes awakened by unknown or stolen signal.
  In such cases, unexpected problems may arise. To prevent these problems,
  each tpl_gsource has tpl_gmutex and tpl_gcond, and modified to try
  tpl_gcond_wait() until gsource_finalized flag becomes true.

 - It may be modified with better way.

Change-Id: I1360c0a3888186ba0309fe4d94c5be8e29c6f1b8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
19 months agoDelete g_cond_wait from tpl_gsource_destroy. 01/282301/1
Joonbum Ko [Wed, 28 Sep 2022 11:26:57 +0000 (20:26 +0900)]
Delete g_cond_wait from tpl_gsource_destroy.

 - g_cond_wait does not guarantee perfectly.
  Therefore, it is recommended that the caller of tpl_gsource_destroy
  should call the g_cond_wait to confirm if the destroy is
  actually complete.

 - https://docs.gtk.org/glib/method.Cond.wait.html
  Atomically releases mutex and waits until cond is signalled.
 When this function returns, mutex is locked again
 and owned by the calling thread.

  When using condition variables, it is possible that a spurious
 wakeup may occur (ie: g_cond_wait() returns even though g_cond_signal()
 was not called). It’s also possible that a stolen wakeup may occur.
 This is when g_cond_signal() is called, but another thread acquires
 mutex before this thread and modifies the state of the program in such
 a way that when g_cond_wait() is able to return,
 the expected condition is no longer met.

 For this reason, g_cond_wait() must always be used in a loop.
 See the documentation for GCond for a complete example.

Change-Id: If3b98b4d79b205d9125558edb75f4b85ef6a3a99
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
20 months agoPackage version up to 1.9.7 87/276087/3 accepted/tizen/unified/20220824.135624 submit/tizen/20220818.082356 submit/tizen/20220819.072630
Joonbum Ko [Thu, 9 Jun 2022 10:13:37 +0000 (19:13 +0900)]
Package version up to 1.9.7

Change-Id: I9a15a0ff3f4accd438af5fe8abd89d71fc1275fa
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
20 months agoFixed to prevent page fault via invalid address. 86/276086/3
Joonbum Ko [Thu, 9 Jun 2022 10:04:11 +0000 (19:04 +0900)]
Fixed to prevent page fault via invalid address.

 - If the last_enq_buffer of wl_egl_surface has a wrong pointer address,
  page fault may occur inside the tbm_surface_internal_is_valid of libtbm.
 - To prevent this problem, it is modified to check in advance from
  the list of buffers of wl_egl_surface.

Change-Id: I459b182e9ed435ce93a3a862251869fb9c7829ad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
20 months agoAdded internal function to check buffer is validate 85/276085/3
Joonbum Ko [Thu, 9 Jun 2022 09:43:49 +0000 (18:43 +0900)]
Added internal function to check buffer is validate

 - It can be modified flexibly.
 - For now, this function can check if given tbm_surface_h
  is managed by wl_egl_surface.

Change-Id: Ied59f583666a5f18f15537be6507c83c5277a866
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
21 months agoFix pointer to int cast warning 48/278248/1 accepted/tizen/unified/20220722.031005 submit/tizen/20220718.063229 submit/tizen/20220721.050405
Jinbong [Mon, 18 Jul 2022 05:53:58 +0000 (14:53 +0900)]
Fix pointer to int cast warning

Change-Id: Id0af40582f900c46745f6c1b8e6864789daeca81

21 months agoRevert "Remove compile warning about casting to pointer from integer of different...
Jinbong [Mon, 18 Jul 2022 05:46:27 +0000 (14:46 +0900)]
Revert "Remove compile warning about casting to pointer from integer of different size"

This reverts commit b1725298fc58f3e2e63da142bf9687a214f38146.

21 months agoRemove compile warning about casting to pointer from integer of different size submit/tizen/20220718.053106
Jinbong [Mon, 18 Jul 2022 05:14:28 +0000 (14:14 +0900)]
Remove compile warning about casting to pointer from integer of different size

22 months agoPackage version up to 1.9.6 09/276009/1 accepted/tizen/unified/20220610.134831 submit/tizen/20220607.045230 submit/tizen/20220609.070600 submit/tizen/20220609.091423 submit/tizen/20220613.104856 submit/tizen/20220715.101112 submit/tizen/20220715.101409 submit/tizen/20220715.102057 submit/tizen/20220715.104026
Joonbum Ko [Wed, 8 Jun 2022 10:23:57 +0000 (19:23 +0900)]
Package version up to 1.9.6

Change-Id: I8810e6da7e5c98841c37dee3b6660137b5445b5f
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
22 months agoFix pc.in to follow 64bit build guideline 08/276008/1
Joonbum Ko [Wed, 8 Jun 2022 10:23:26 +0000 (19:23 +0900)]
Fix pc.in to follow 64bit build guideline

Change-Id: I32adf0732fab34864cdb7e1cafffdad1b787ac2c
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.9.5 69/273969/1 submit/tizen/20220420.061219 submit/tizen/20220607.074731
Joonbum Ko [Tue, 19 Apr 2022 06:04:21 +0000 (15:04 +0900)]
Package version up to 1.9.5

Change-Id: I44d35f42e7a88c8a882e31640ec8783d0496a7ba
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFix issue when reset 39/273639/2
Xuelian Bai [Mon, 11 Apr 2022 07:02:57 +0000 (15:02 +0800)]
Fix issue when reset

Set ref_cnt as 1 before CREATE_QUEUE, or when queue is reused and
ref_cnt is increased, the ref_cnt will be set back to 1.
Set format as default when reset

Change-Id: I0bd90a361d26329cb86393b1eaddf1013af09244
Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
2 years agoPackage version up to 1.9.4 56/273356/2
Joonbum Ko [Tue, 5 Apr 2022 01:49:15 +0000 (10:49 +0900)]
Package version up to 1.9.4

Change-Id: Ic759425a78f195bd327f44dc3de9f6255a553f7b
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agofix 64bits build-errors 55/273355/2
Joonbum Ko [Tue, 5 Apr 2022 01:46:58 +0000 (10:46 +0900)]
fix 64bits build-errors

Change-Id: Ie5a6541b8442806c948c099f69eaa4729292b818
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoAdd missed initializing to trace tpl_surface. 54/273354/1
Joonbum Ko [Tue, 5 Apr 2022 01:42:16 +0000 (10:42 +0900)]
Add missed initializing to trace tpl_surface.

Change-Id: Id023b7633986e6ec59d482f8f77c45fcc7d512e7
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.9.3 17/271517/1 accepted/tizen/unified/20220224.125740 submit/tizen/20220223.080743
Joonbum Ko [Tue, 22 Feb 2022 08:20:36 +0000 (17:20 +0900)]
Package version up to 1.9.3

Change-Id: I2c1747fc961d1f39166b32f2aa5431db3648f2fc

2 years agoFix space trim issue at configure.ac 16/271516/1
Joonbum Ko [Tue, 22 Feb 2022 08:20:13 +0000 (17:20 +0900)]
Fix space trim issue at configure.ac

Change-Id: I5c8eaf9bb892af4336658ed3172ed86df353556b
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.9.2 69/271069/1 accepted/tizen/unified/20220217.153425 submit/tizen/20220215.070726
Joonbum Ko [Tue, 15 Feb 2022 05:33:26 +0000 (14:33 +0900)]
Package version up to 1.9.2

Change-Id: I3c744d64eaa7bfeb2f4dc00fe813e5de09331901
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoMake clear about use_explicit_sync feature flag. 66/271066/3
Joonbum Ko [Tue, 15 Feb 2022 05:06:30 +0000 (14:06 +0900)]
Make clear about use_explicit_sync feature flag.

 - if the boolean flag use_explicit_sync is true,
  it includes the meaning surface_sync is not null.
 - so, it need to be simplified with using only
  use_explicit_sync flag.

Change-Id: Icdcc55a76d72b28d9bd38a96de1093ab56edc135
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.9.1 76/270176/1 submit/tizen/20220126.091620 submit/tizen/20220215.005041
Joonbum Ko [Wed, 26 Jan 2022 07:04:51 +0000 (16:04 +0900)]
Package version up to 1.9.1

 - the minor version for tizen_7.0 is '9'

Change-Id: I21627d64a70f3d9a137ae73106be90d36328ce03
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoInitialize last_enq_buffer to null when it committed. 75/270175/1
Joonbum Ko [Wed, 26 Jan 2022 06:26:31 +0000 (15:26 +0900)]
Initialize last_enq_buffer to null when it committed.

 - If the last_enq_buffer of wl_egl_surface has been committed,
  it is not necessary to have this handle pointer.

Change-Id: I3153b3cc9cb133f1d51321dc7aaa92f57b1e5ed8
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPrevents the incorrect signal on gcond of wl_egl_buffer. 74/270174/1
Joonbum Ko [Thu, 20 Jan 2022 08:16:52 +0000 (17:16 +0900)]
Prevents the incorrect signal on gcond of wl_egl_buffer.

  As with g_cond_wait() it is possible that a spurious or stolen wakeup
 could occur. For that reason, waiting on a condition variable should
 always be in a loop, based on an explicitly-checked predicate.

Change-Id: I388e71a48dc91c1636490c856698c4a7f8d3fafd
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.23 62/269562/1 submit/tizen/20220118.102333
Joonbum Ko [Tue, 18 Jan 2022 02:06:30 +0000 (11:06 +0900)]
Package version up to 1.8.23

Change-Id: I39e166a5eba110731a2a3b5e8fa6a14f7b90bdad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoChange the handle of last_enq_buffer to tbm_surface_h 61/269561/1
Joonbum Ko [Tue, 18 Jan 2022 06:17:49 +0000 (15:17 +0900)]
Change the handle of last_enq_buffer to tbm_surface_h

 - to check validation for the handle of last_enq_buffer.

Change-Id: Ib92b28cd3bc6bfa553fb5de57afd9fc8cfcf0cdc
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.22 97/269197/2
Joonbum Ko [Tue, 11 Jan 2022 07:49:33 +0000 (16:49 +0900)]
Package version up to 1.8.22

Change-Id: I0a1ab000f80ab7a3c2aaaab0acfaca6591e95d53
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoFixed to use last_enq_buffer instead of last_deq_buffer. 21/269421/1
Joonbum Ko [Fri, 14 Jan 2022 01:51:51 +0000 (10:51 +0900)]
Fixed to use last_enq_buffer instead of last_deq_buffer.

 - last_deq_buffer has a risk to be free from thread.

Change-Id: I677704a5b9bbf8a7c405689663a856d83df595f4
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoMove unref to outside from buffer mutex. 20/269420/1
Joonbum Ko [Thu, 13 Jan 2022 08:52:48 +0000 (17:52 +0900)]
Move unref to outside from buffer mutex.

Change-Id: If2c0eb9ee17edf6febc830ec058b274b1eba5431
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoCall dispatch cb for disposable source when IO error occured. 96/269196/2
Joonbum Ko [Tue, 11 Jan 2022 06:41:03 +0000 (15:41 +0900)]
Call dispatch cb for disposable source when IO error occured.

Change-Id: I8a84a32b5c246c65a9b7a3ab5e5bc0e69afe51ae
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.21 61/268961/1
Joonbum Ko [Wed, 5 Jan 2022 07:53:24 +0000 (16:53 +0900)]
Package version up to 1.8.21

Change-Id: I21d36be947889a69c48b7b51c448d95abef6b0c9
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoRemove finalizer source to before cond_signal 60/268960/1
Joonbum Ko [Wed, 5 Jan 2022 07:48:11 +0000 (16:48 +0900)]
Remove finalizer source to before cond_signal

Change-Id: Iaeb1b75ecff8860f10f82a21e8ea2be972e70dad
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoPackage version up to 1.8.20 19/268719/1
Joonbum Ko [Thu, 30 Dec 2021 07:31:34 +0000 (16:31 +0900)]
Package version up to 1.8.20

Change-Id: I27eb1758e92fcafa69fd5203fc85fd7cca1d6fac
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
2 years agoClear all cached buffer when queue_force_flush 18/268718/1
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>
2 years agoAdd mutex protection when gsource_destroy 17/268717/1
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>
2 years agoAdd log to check when the transform changed 16/268716/1
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>
2 years agoPackage version up to 1.8.19 08/268508/1 submit/tizen/20211227.044152
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>
2 years agoInitialize last_deq_buffer to NULL when it free. 07/268507/1
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>
2 years agoPackage version up to 1.8.18 36/268436/1
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>
2 years agoAdded mutex for protecting vblank resources. 35/268435/1
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>
2 years agoChanged to do roundtrip_queue before display_fini. 34/268434/1
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>
2 years agoRemove wl_egl_buffer from vblank list when it freed. 33/268433/1
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>
2 years agoModified the new buffer allocation in the RESET situation 32/268432/1
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>
2 years agoPackage version up to 1.8.17 74/267974/1 accepted/tizen/unified/20211217.122040 submit/tizen/20211214.052148
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>
2 years agoSend transform of window and buffer since wl_surface version 2 73/267973/1
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

2 years agoSend transform of window and buffer to server after they are created. 72/267972/1
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

2 years agoInitialize wl_egl_buffer->waiting_source in mutex protection. 71/267971/1
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>
2 years agoPackage version up to 1.8.16 73/266673/1 accepted/tizen/unified/20211126.111807 submit/tizen/20211124.073616
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>
2 years agoFlush vblank waiting buffers when tdm error occured. 72/266672/1
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>
2 years agoPackage version up to 1.8.15 36/265536/1 accepted/tizen/unified/20211029.132555 submit/tizen/20211028.011250
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>
2 years agoChange the timeout limit to 200ms. 35/265535/1
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>
2 years agoModified to create wl_buffer only just before surface commit. 34/265534/1
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>
2 years agoPackage version up to 1.8.14 10/264910/1
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>
2 years agowayland_egl_tizen: Move tizen_private_create() to each backend. 92/264692/1
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>
2 years agowayland-egl-tizen: Modified to do not create tizen_private. 91/264691/1
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>
2 years agoPackage version up to 1.8.13 23/263523/1 accepted/tizen/6.5/unified/20211028.121408 accepted/tizen/unified/20210907.121933 submit/tizen/20210906.014744 submit/tizen_6.5/20211028.163101 tizen_6.5.m2_release
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>
2 years agoMove assert checking to before add listener of wl_buffer 22/263522/1
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>
2 years agoModified build error when TIZEN_FEATURE disabled. 31/263431/1 linux_yocto
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>
2 years agoPackage version up to 1.8.12 54/263154/3 accepted/tizen/unified/20210830.103935 submit/tizen/20210827.024157
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>
2 years agoFixed a problem than adds duplicate listener to wl_buffer. 53/263153/3
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>
2 years agoChanged log printing for wl_buffer creation to TPL_INFO. 52/263152/3
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>
2 years agoAdd null checking to prevent problem. 51/263151/3
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>
2 years agoAdd build flags to separate tizen specific feature. 50/263150/3
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>
2 years agoRemove dependency releated wayland-vulkan-protocol 57/263157/1
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>
2 years agoMove unusing files to unused and remove from makefile. 56/263156/1
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>
2 years agowayland-egl-tizen: Add a log output option. 55/263155/1
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>
2 years agoPackage version up to 1.8.11 68/261768/1 accepted/tizen/unified/20210802.135714 submit/tizen/20210727.093930 submit/tizen/20210802.011415
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>
2 years agoRemove unnecessary surf_mutex locking 64/261564/1
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>
2 years agoPackage version up to 1.8.10 25/260125/1 accepted/tizen/unified/20210622.125833 submit/tizen/20210621.073348
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>
2 years agoFix missing use of num_buffers when create tbm_queue. 24/260124/1
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>
2 years agoFix incorrect use of can_dequeue return value. 23/260123/1
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>
2 years agoResolve build warning related to backend init functions. 36/259536/1
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>
2 years agoAdd magic check to confirm WL_EGL_TIZEN private. 35/259535/1
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>
2 years agoPackage version up to 1.8.9 14/259314/1 accepted/tizen/unified/20210609.140524 submit/tizen/20210604.110910 submit/tizen/20210607.072910
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>
2 years ago Remove duplicate initialize. 13/259313/1
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>
2 years agoAdd null checking to prevent problem. 12/259312/1
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>
2 years agoClarified thread message and corrected some bugs. 11/259311/1
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>
2 years agoFix ws-testcase build issue: 04/259304/1
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>
2 years agoPackage version up to 1.8.8 51/258551/1
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>
2 years agoExpand the condition of need_to_wait in buffer_clear. 50/258550/1
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>
2 years agoEnhanced protection against fence waiting buffers. 49/258549/1
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>
2 years agoAdded surface_vblanks list for safe destroy. 48/258548/1
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>
2 years agoAdd tpl_surface_vblank_t to manage vblank object 47/258547/1
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>
2 years agoPackage version up to 1.8.7 17/258117/2 submit/tizen/20210511.063731
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>
2 years agoFix to prevent thread conflict. 38/258138/1
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>
2 years agoFix so that wl_buffer is not added to the listener with null. 16/258116/1
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>
3 years agoPackage version up to 1.8.6 11/257811/1 accepted/tizen/unified/20210506.103530 submit/tizen/20210504.031804
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>
3 years agoFix wrong case checking to unreachable code. 10/257810/1
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>
3 years agoPackage version up to 1.8.5 37/257737/1
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>
3 years agoBack up the legacy codes of wl_vk_thread to unused. 36/257736/1
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>
3 years agoFix a problem when explicit_fence was not used. 35/257735/1
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>
3 years agoFix so that error log is not printed when tpl_display is reused. 34/257734/1
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>
3 years agoDisabled the codes that is not being used now. 33/257733/1
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>
3 years agoMake vulkan only uses the thread backend. 32/257732/1
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>