Hwankyu Jhun [Thu, 12 Oct 2023 08:00:00 +0000 (17:00 +0900)]
Release version 0.38.10
Changes:
- Remove previous files at fork
Change-Id: I6bcd8cec89a1f332474bdad3285e73916041a4c3
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 12 Oct 2023 07:43:37 +0000 (16:43 +0900)]
Remove previous files at fork
This patch uses pthread_atfork() to register a fork handler.
While creating a children process, we should remove previous files
related to the process ID.
Change-Id: I04a646feefeb7dd21cc102c4ab2bb43f10a259b5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 12 Oct 2023 02:16:27 +0000 (11:16 +0900)]
Release version 0.38.9
Changes:
- Exclude dlog fds from closing fds
Change-Id: I3c215acf48c32d6d186409f9e2c0d1b32e0f3b0a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 12 Oct 2023 01:03:39 +0000 (10:03 +0900)]
Exclude dlog fds from closing fds
To print dlogs, the process pool checks whether the file descriptor is
dlog fd or not. And then, the dlog fds will be excluded from closing fds.
Change-Id: I86aee6554ec3ba7ad8cfbac395a84e75b629b52b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 11 Oct 2023 05:09:24 +0000 (14:09 +0900)]
Release version 0.38.8
Changes:
- Fix external package activation
Change-Id: I9e140fd972ddc010adaf7ed404b7bfae7d818dfc
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 11 Oct 2023 04:48:33 +0000 (13:48 +0900)]
Fix external package activation
The argument must be const char**. The dbus message must have a uid.
Change-Id: I7be2121233b1a801d3f4190f529d14d1f57c79e6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 6 Oct 2023 00:00:02 +0000 (09:00 +0900)]
Release version 0.38.7
Changes:
- Check SCHED_PRIORITY value
Change-Id: I771903a13fbcc20e8db09b31af9e220875427ae4
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 5 Oct 2023 07:53:57 +0000 (16:53 +0900)]
Check SCHED_PRIORITY value
If the SCHED_PRIORITY value is not 0, the app-defined-loader and the
launchpad-loader set the scheduling priority to 0.
Change-Id: I0281548e724f2d3a7caba981630d48d3a790a6e2
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Wed, 4 Oct 2023 01:36:56 +0000 (10:36 +0900)]
Release version 0.38.6
Changes:
- Fix wrong log message
- Change stdio redirect buffer
Change-Id: If627adcf78141826b34a7f0f9bafdd5a7c888362
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Wed, 27 Sep 2023 04:38:05 +0000 (13:38 +0900)]
Change stdio redirect buffer
Changes buffer from LOG_ID_APPS to LOG_ID_MAIN
Change-Id: I1863031404dafb8551e27f6c6769e1c2f92a33a9
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Thu, 21 Sep 2023 09:33:40 +0000 (18:33 +0900)]
Fix wrong log message
The SchedPriority::Set() log message is fixed.
Change-Id: I7187a0e48aa914563c6a47f2b701d9e03bb0440a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 21 Sep 2023 08:39:26 +0000 (17:39 +0900)]
Release version 0.38.5
Changes:
- Fix wrong implmenetation of launchpad library
Change-Id: Ie864909e35ee895ed1efd15cdd4c27666776aa6b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 21 Sep 2023 08:31:39 +0000 (17:31 +0900)]
Fix wrong implmenetation of launchpad library
The argc should be the size of the result of Bundle::Export().
Change-Id: Id4ec0eab4bdec0c750ef9553c001e2620703dffa
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 21 Sep 2023 04:47:19 +0000 (13:47 +0900)]
Release version 0.38.4
Changes:
- Modify argv creation of liblaunchpad library
Change-Id: I541e8139e52f6ae01a21b9becef41a5b200608b6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 21 Sep 2023 04:18:05 +0000 (13:18 +0900)]
Modify argv creation of liblaunchpad library
The last element of the argv should be nullptr.
If the last element is not nullptr, the following error can be occurred:
"Failed to execute a file. path: <executable file path>, errno: 14(Bad address)"
Change-Id: I5d691492171caf2e8a33ca72e874de6d609cabfb
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 20 Sep 2023 01:47:07 +0000 (10:47 +0900)]
Release version 0.38.3
Changes:
- Fix static analysis issues
Change-Id: I4606ad5f58d7283d2d5e3492febbd9e1b6a57610
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 19 Sep 2023 02:01:09 +0000 (11:01 +0900)]
Fix static analysis issues
Issues:
- COPY_INSTEAD_OF_MOVE
Change-Id: I1487405d8664a3fc2b056ac747927eb817943312
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 19 Sep 2023 00:41:41 +0000 (09:41 +0900)]
Release version 0.38.2
Changes:
- Fix static analysis issue
Change-Id: I99deee4ac9dd219943a7a3bed7f849729c7b184d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 18 Sep 2023 22:20:25 +0000 (07:20 +0900)]
Fix static analysis issue
Checker:
- DEREF_OF_NULL.RET_STAT
Change-Id: Ifc95e098d24ccd2d80c83bee5f3340b4e13c5a66
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 14 Sep 2023 10:16:47 +0000 (19:16 +0900)]
Release version 0.38.1
Changes:
- Modify disposal loader handler
Change-Id: I3d849e024e4177fc3314dd3c2a24e24cd6240dc0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 14 Sep 2023 10:15:00 +0000 (19:15 +0900)]
Modify disposal loader handler
The result should be delivered to the caller before sending SIGKILL signal.
Change-Id: I829d244b16aa4472ea6935349c5bf0e1353fc553
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 14 Sep 2023 01:39:10 +0000 (10:39 +0900)]
Release version 0.38.0
Changes:
- Lock and unlock mutex for process creation
- Add a new function for loader termination
- Modify launchpad_loader_dispose() function
Change-Id: I22ea0a0e1b82941effae92af36628655c0ae47fb
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 14 Sep 2023 01:27:04 +0000 (10:27 +0900)]
Modify launchpad_loader_dispose() function
The type of the return value is changed to 'int' from 'void'.
Change-Id: I7af938e048d36348a9ad6d070c6ab9feaa8e9978
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 13 Sep 2023 23:44:15 +0000 (08:44 +0900)]
Add a new function for loader termination
The launchpad_loader_dispose() function is added to dispose the loader iself.
The function sends a disposal request to the launchpad-process-pool.
When the launchpad-process-pool gets the request, it sends SIGKILL signal to
the running loader process.
Change-Id: I74ed0b2b5fa42d47220b335e84fb1776b7b748f5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 13 Sep 2023 10:09:42 +0000 (19:09 +0900)]
Lock and unlock mutex for process creation
To prevent memory corruption issue, this patch adds locking and
unlocking a mutex. If the memory allocation occurs when creating a
children process using fork(), the children process has a memory problem.
Change-Id: I6abc980533686421b30a7cbdac52f370cc352748
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 11 Sep 2023 04:34:19 +0000 (13:34 +0900)]
Release version 0.37.4
Changes:
- Reset scheduling priority
Change-Id: I01bff79963e43ec4bbda4c9ef91d2db9a0578ed8
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 11 Sep 2023 03:57:57 +0000 (12:57 +0900)]
Reset scheduling priority
This patch removes calling the SchedPriority::Set(0) from the launchpad
library. After this patch is applied, the loader process should reset
the priority to zero itself.
Change-Id: I93b1e435ab4ebbe9d21b790c547010e39321dabe
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 1 Sep 2023 02:09:46 +0000 (11:09 +0900)]
Release version 0.37.3
Changes:
- Set reset on fork flag
Change-Id: I505a0e223308029def83ce0458976830e0746144
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 31 Aug 2023 23:01:40 +0000 (08:01 +0900)]
Set reset on fork flag
The CPU_BOOSTING_RESET_ON_FORK flag is required in order not to
unintentionally inherit the CPU boosting to child processes.
Change-Id: Ie0573b18d1e595f7d59e0cc3e76c8784fbceffd4
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 31 Aug 2023 00:12:19 +0000 (09:12 +0900)]
Release version 0.37.2
Changes:
- Modify ready file path
Change-Id: I2a6e4eb25fbfc7fc60dd9629dad7c2e51408dbd2
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 30 Aug 2023 23:23:25 +0000 (08:23 +0900)]
Modify ready file path
The ready file path is changed to "/tmp/.<uid>-<loader_name>.ready".
Change-Id: Ia8b59a289b8181be53ef35edb78a89e52c830bb7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 30 Aug 2023 06:54:22 +0000 (15:54 +0900)]
Release version 0.37.1
Changes:
- Do not close all file descriptors
Change-Id: I4e9a8784972eee74a9d4d3e5a57ef5fa4cb775ef
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 29 Aug 2023 06:53:57 +0000 (15:53 +0900)]
Do not close all file descriptors
When the loader fails to find the main function, it tries to execute
an application using execv(). Before calling execv(), the loader closes
all opened file descriptors. Unfortunately, the loader can have crashed
by that. To avoid crash issues, this patch removes calling CloseAllFds().
Change-Id: I902d2f73ae30dc63e4d82599da6c1ced436e3920
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 30 Aug 2023 05:52:38 +0000 (14:52 +0900)]
Release version 0.37.0
Changes:
- Handle restart request
Change-Id: Ia6e7b0b58772a7ecbfe27100882574da17c801d7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 30 Aug 2023 04:39:43 +0000 (13:39 +0900)]
Handle restart request
Some platform developer wants to restart the loader process directly.
This patch supports the restart command.
Change-Id: I003891a8a9e5160c9b43d5ca11a61f3b79742662
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 28 Aug 2023 06:28:28 +0000 (15:28 +0900)]
Release version 0.36.9
Changes:
- Check CPU boosting level before calling boost API
Change-Id: Ib8b62f651161c9d4f11c369d015a2639178cc708
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 28 Aug 2023 05:42:32 +0000 (14:42 +0900)]
Check CPU boosting level before calling boost API
If the boosting is already applied to the launchpad-process-pool,
calling the resource_set_cpu_boosting() is not needed.
Change-Id: I14e564fa644e312c7eb6ca1305b222dd208ff3ca
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Wed, 23 Aug 2023 06:33:13 +0000 (15:33 +0900)]
Release version 0.36.8
Changes:
- Add setting priority to 0 before OnAdapterLoopBegin()
Change-Id: Ia254a37b83a5eb425df7e0fac98d7682f6ca99a6
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Wed, 23 Aug 2023 06:16:10 +0000 (15:16 +0900)]
Add setting priority to 0 before OnAdapterLoopBegin()
Change-Id: Ib72a523d8e3e2fd5700f7bbcc92e3ec2b6c3eee3
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Mon, 21 Aug 2023 00:31:39 +0000 (09:31 +0900)]
Release version 0.36.7
Changes:
- Remove timeout setting of applying cpu boosting
Change-Id: Ic39e5674387538b20622bba6d058840a37baabab
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 18 Aug 2023 04:56:24 +0000 (13:56 +0900)]
Remove timeout setting of applying cpu boosting
Unfortunately, the plugin module of the resource API does not support
timeout feature properly. According to the guide, if the timeout setting
exists, we must not call the resource_clear_cpu_boosting() function.
This patch changes the timeout argument to -1 from the 5000 (milliseconds).
Change-Id: Ice734819300b11d150231a149b6529cb92315281
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Thu, 17 Aug 2023 10:26:27 +0000 (19:26 +0900)]
Release version 0.36.6
Changes:
- Fix crash issue
Change-Id: I820f4de159dae3bccfd592bd832d2d79951d51f1
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Thu, 17 Aug 2023 09:10:48 +0000 (18:10 +0900)]
Fix crash issue
This patch is for a below crash issue.
#3 0xb6d503ce in __GI_abort () at abort.c:79
#4 0xb706dc1c in __gnu_cxx::__verbose_terminate_handler ()
at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95
#5 0xb707c336 in __cxxabiv1::__terminate (
handler=0xb707e820 <__gnu_cxx::__verbose_terminate_handler()>)
at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:47
#6 0xb707c39f in std::terminate () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:57
#7 0x800b2cba in std::thread::~thread (this=0x810b5a9c, __in_chrg=<optimized out>)
at /usr/lib/gcc/i586-tizen-linux-gnu/9.2.0/include/c++/thread:139
#8 launchpad::Worker::~Worker (this=0x810b5a80, __in_chrg=<optimized out>)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/worker.cc:46
#9 0x800b2ce2 in launchpad::Worker::~Worker (this=0x810b5a80, __in_chrg=<optimized out>)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/worker.cc:46
#10 0x8009978c in std::default_delete<launchpad::Worker>::operator() (
this=0x800ccb18 <launchpad::SignalManager::GetInst()::inst+280>, __ptr=<optimized out>)
at /usr/lib/gcc/i586-tizen-linux-gnu/9.2.0/include/c++/bits/unique_ptr.h:75
#11 std::unique_ptr<launchpad::Worker, std::default_delete<launchpad::Worker> >::reset (
__p=<optimized out>, this=0x800ccb18 <launchpad::SignalManager::GetInst()::inst+280>)
at /usr/lib/gcc/i586-tizen-linux-gnu/9.2.0/include/c++/bits/unique_ptr.h:394
#12 launchpad::SignalManager::Dispose (
this=this@entry=0x800cca00 <launchpad::SignalManager::GetInst()::inst>)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/signal_manager.cc:121
#13 0x8009983f in launchpad::SignalManager::Dispose (
this=0x800cca00 <launchpad::SignalManager::GetInst()::inst>)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/signal_manager.cc:171
#14 launchpad::SignalManager::~SignalManager (
this=0x800cca00 <launchpad::SignalManager::GetInst()::inst>, __in_chrg=<optimized out>)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/signal_manager.cc:171
#15 0xb6d6bfff in __run_exit_handlers (status=status@entry=-1, listp=0xb6f0339c <__exit_funcs>,
run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:108
#16 0xb6d6c1d5 in __GI_exit (status=-1) at exit.c:139
#17 0x80096948 in launchpad::ProcessPool::OnExecution (this=<optimized out>)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/process_pool.cc:118
#18 0x80071b03 in launchpad::Executor::Execute (this=this@entry=0x810b8044,
priority=priority@entry=0)
at /usr/src/debug/launchpad-0.36.3-1.i386/src/launchpad-process-pool/executor.cc:50
#19 0x80096b09 in launchpad::ProcessPool::PrepareProcess (this=0x810b8040)
Change-Id: I96ff11d3fb0fc6d368d531e4ecc38bf10135bc84
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Thu, 17 Aug 2023 04:25:11 +0000 (13:25 +0900)]
Release version 0.36.5
Changes:
- Create ready files of loader process
- Create ready file for all loaders
- Revert "Create ready files of loader process"
Change-Id: I142352c805c36c4a5bf212c3c8f5a80f0ef3bcbd
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 17 Aug 2023 03:57:54 +0000 (12:57 +0900)]
Revert "Create ready files of loader process"
This reverts commit
78f5909518b8e89f5a45e68d0e482352ac503289.
Change-Id: I54e852a6f3f54f2b2c207bd6ad763d60c00d48d3
Hwankyu Jhun [Thu, 17 Aug 2023 03:56:53 +0000 (12:56 +0900)]
Create ready file for all loaders
When the loader process is connecting to the launchpad-process-pool,
the launchpad-process-pool creates a ready file to notify that the loader
is ready.
Change-Id: Iff44684329682d56782c1b3ffeb9cff1e9425d1e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 7 Aug 2023 00:16:41 +0000 (09:16 +0900)]
Create ready files of loader process
A new function is added to create a ready file of the loader.
The function creates the file that the path is
"/run/user/<uid>/.<loader_name>.ready".
Change-Id: Id2c6181793650c55b866deddbf2c68ff3b43f1d6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 17 Aug 2023 01:30:31 +0000 (10:30 +0900)]
Release version 0.36.4
Changes:
- Modify CPUBoostingController
Change-Id: I744cdf875f803142a9bfb9115625008fa3deed53
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 16 Aug 2023 04:58:14 +0000 (13:58 +0900)]
Modify CPUBoostingController
This patch removes the RESET_ON_FORK flag. If the flag is set,
the scheduling policy is not inherited to the sub thread.
Change-Id: I8f63106271907749bdabff033881aab619f2e892
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 11 Aug 2023 08:09:57 +0000 (17:09 +0900)]
Release version 0.36.3
Changes:
- Add a missing exception handling
- Close all fds while creating process pool
Change-Id: I7af928c124425d35a6e99e8a584c58118f8335ef
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 11 Aug 2023 06:26:58 +0000 (15:26 +0900)]
Close all fds while creating process pool
After calling fork(), the child process should close all unused file
descriptors.
Change-Id: I5c0e714dff3bff182fdafbeb1153da5b4e38d0b7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 11 Aug 2023 03:31:50 +0000 (12:31 +0900)]
Add a missing exception handling
The Vconf::Get<T> can throw an exception. This patch adds an exception
handling to prevent a crash issue.
Change-Id: I96943d2e02b898bf07881d6327f303a923d4a2f7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Tue, 1 Aug 2023 04:46:02 +0000 (13:46 +0900)]
Release version 0.36.2
Changes:
- Change multiple instance appid key
Change-Id: I1fbc64259cd2b8db342d6c1b75be011709d7eb2c
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Tue, 1 Aug 2023 03:15:33 +0000 (12:15 +0900)]
Change multiple instance appid key
Change-Id: I6586c84e52ee060dc64283eac23eefe96f2604e5
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Fri, 28 Jul 2023 04:33:59 +0000 (13:33 +0900)]
Release version 0.36.1
Changes:
- Fix static analysis issues
Change-Id: I77826afded881cf7c7f5dde783905f1525fd2a0f
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Fri, 28 Jul 2023 01:54:38 +0000 (10:54 +0900)]
Fix static analysis issues
Changes:
- Changes method to stoull.
Change-Id: I802be7a7e343b219f1cded40ec9560c2886ee129
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Thu, 27 Jul 2023 02:13:12 +0000 (11:13 +0900)]
Release version 0.36.0
Changes:
- Handle loader termination request
Change-Id: I0a4d6fd7ee908bde5fc79e08604a0f0aa2718d82
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 26 Jul 2023 06:12:47 +0000 (15:12 +0900)]
Handle loader termination request
Some developers want to send the kill request to the running loader process.
This patch adds a new handler to handle the kill request.
Change-Id: Iad92282db51f60a8bb420739f406e1a426bb203e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 24 Jul 2023 07:20:20 +0000 (16:20 +0900)]
Release version 0.35.18
Changes:
- Modify SIGCHLD handler
Change-Id: I82d8c9b197885a893439b0232516d726b6f6986e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 24 Jul 2023 07:01:57 +0000 (16:01 +0900)]
Modify SIGCHLD handler
If SIGCHLD signal is received, launchpad checks whether the pending request
exists or not. If it exists, launchpad sends the launch signal to listeners.
Change-Id: Ie82b4df2b49ce02beb95a4b7547584b6a674d424
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Thu, 20 Jul 2023 05:43:51 +0000 (14:43 +0900)]
Release version 0.35.17
Changes:
- Modify setting AUL_APPID environment variable for multiple instance
Change-Id: Iff650377315bd6329901a415940178cd1f0dc8da
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Thu, 20 Jul 2023 05:09:24 +0000 (14:09 +0900)]
Modify setting AUL_APPID environment variable for multiple instance
When an app is launched as multiple instances, appid should include
instance id to distinguish them.
launchpad set AUL_APPID environment variable as original appid.
Change-Id: Ie0cae1d5d10d51024ea1bd25ca6299ea15e4fac8
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Tue, 18 Jul 2023 03:20:40 +0000 (12:20 +0900)]
Release version 0.35.16
Changes:
- Modify setting environment variable
Change-Id: I4545de274b595c8276ecc64dcd249f80628686ee
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 18 Jul 2023 02:19:33 +0000 (11:19 +0900)]
Modify setting environment variable
If TIZEN_GLIB_CONTEXT already exists, the launchpad library does not set it to
zero. Unfortunately, the launchpad library overwrites the environment variable
even if the process is the candidate process as like dotnet loader.
Change-Id: I3c1667627ac0955a422f96cc6b9264cbf05115ec
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Fri, 14 Jul 2023 08:23:16 +0000 (17:23 +0900)]
Release version 0.35.15
Changes:
- Change exit method
Change-Id: Ife08ea0d4ea4b94effb45be0bfdb14fd44880b54
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Fri, 14 Jul 2023 07:55:18 +0000 (16:55 +0900)]
Change exit method
When a app-defined-loader failed app launch, it is exited using exit().
But in some cases, the loader process becomes deadlocked due to sub thread resources.
This patch changes exit method to _exit().
Change-Id: Ibabf46e1ba58b596197ab71b479b6d2af02591b8
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Fri, 14 Jul 2023 01:16:52 +0000 (10:16 +0900)]
Release version 0.35.14
Changes:
- Modify log tags
Change-Id: I6924a6a9dd3c7e09849f584329772775b7d66252
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 14 Jul 2023 01:11:16 +0000 (10:11 +0900)]
Modify log tags
The log tags are changed to "LAUNCHPAD". And, this patch modifies the
log format that the name is added as like "[COMMON]".
Change-Id: I758b22118a3041fb2d4d82f1a7a2a977a2ab7594
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 12 Jul 2023 05:04:49 +0000 (14:04 +0900)]
Release version 0.35.13
Changes:
- Add printing log message for debugging
Change-Id: Iff963f428775223e59f98ae95746e3448a3b3813
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 12 Jul 2023 04:58:00 +0000 (13:58 +0900)]
Add printing log message for debugging
To debug the performance issue, this patch adds log print to the
Util::CloseAllFds().
Change-Id: Id6a1eb2439eb57c5a7123cf5cb448a704be154b0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 10 Jul 2023 08:22:32 +0000 (17:22 +0900)]
Release version 0.35.12
Changes:
- Fix a bug about invoking the event listener
- Check arguments of loader
Change-Id: Id2c9241e136973e5a966c50124acc6f03fb62c00
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 10 Jul 2023 08:04:03 +0000 (17:04 +0900)]
Check arguments of loader
Before calling the loader_terminate_cb callback function, the launchpad library
checks whether the argument count is zero or not.
If it's true, the launchpad library does not call the callback function for
backward compatibility.
Change-Id: Ifeb9283701814efe6c1f1b69f4fbf129a3ce9b56
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 10 Jul 2023 06:49:27 +0000 (15:49 +0900)]
Fix a bug about invoking the event listener
Although the event listener of the signal manager is registered,
the signal manager did not call the event listener.
This patch fixes the problem.
Change-Id: I0d8920faab97bba8fd0cb565149418015228e3a2
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 3 Jul 2023 08:30:26 +0000 (08:30 +0000)]
Release version 0.35.11
Changes:
- Fixed the build error using gcc 13
Change-Id: I1812f0d6e3852a3881fe809e0ed38ba43ac2522b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
wchang kim [Mon, 3 Jul 2023 05:49:35 +0000 (14:49 +0900)]
Fixed the build error using gcc 13
Change-Id: I1ad7ed75373562f1666dc1b5a8625886d55c0b8e
Hwankyu Jhun [Mon, 3 Jul 2023 00:38:54 +0000 (00:38 +0000)]
Release version 0.35.10
Changes:
- Modify activation method
- Check LaunchMode before setting scheduling priority
Change-Id: Ie85ed56f6b55d2a137b9f9ecedd7ad6d66136908
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Sun, 2 Jul 2023 23:17:43 +0000 (23:17 +0000)]
Check LaunchMode before setting scheduling priority
Before setting the scheduling priority to the normal priority,
launchpad-process-pool should check whether the launch mode is
"Always_Loader_With_Low_Priority" or not.
Change-Id: I0b8d962f476b895384f37ea19deba020b25dad75
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Fri, 30 Jun 2023 03:45:03 +0000 (12:45 +0900)]
Modify activation method
Change-Id: I55897427b3ecc56de36c461cbcc2f6801def5b9f
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Fri, 30 Jun 2023 06:43:02 +0000 (06:43 +0000)]
Release version 0.35.9
Changes:
- Add an exception handling of the argument check
Change-Id: I02dc0aec97b770ab1cfd2b8d1785621e59f44194
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 29 Jun 2023 21:55:00 +0000 (21:55 +0000)]
Add an exception handling of the argument check
If the argc is 0, the launchpad loader should return an error immediately.
Change-Id: I1a96a62928248c6629c5d636f0959a34943fde97
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 27 Jun 2023 09:23:56 +0000 (09:23 +0000)]
Release version 0.35.8
Changes:
- Modify Unref() method of LoaderContext
Change-Id: Ie4692a0ef0b5a4fbd3d97b1e509eefdc357103d9
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 27 Jun 2023 09:08:55 +0000 (09:08 +0000)]
Modify Unref() method of LoaderContext
The ref count should not be decreased when the value is zero.
Change-Id: I88ac89ed6f6fa9af753324723a632779a09eb28b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 27 Jun 2023 00:08:50 +0000 (00:08 +0000)]
Release version 0.35.7
Changes:
- Fix crash issue of app-defined-loader
Change-Id: I1b2b0acd06011ae188517959ee60209c38b62943
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 26 Jun 2023 22:11:55 +0000 (22:11 +0000)]
Fix crash issue of app-defined-loader
The argument of Plugin::PrepareApp() should not be nullptr.
This patch modifies that the implementation of the Plugin::PrepareApp() allows
the empty string. If the argument is the empty string, the nullptr will be
passed to the plugin function.
Change-Id: I6bc62c496ab663965070af512b041928a98ec75e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 26 Jun 2023 06:31:43 +0000 (06:31 +0000)]
Release version 0.35.6
Changes:
- Add a new launch mode
Change-Id: I0918885124cb5dad524e807d71e636cd62eae8ad
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 26 Jun 2023 01:47:05 +0000 (01:47 +0000)]
Add a new launch mode
The "Always Loader With Low Priority" mode is added to the LaunchMode.
If it's set, an application will be executed using the loader process.
And, the loader process is executed with the low priority.
When getting the launch request, the launchpad-process-pool sets the high
priority to the process using the boosting API.
Change-Id: I46a6eef78c263c01f4a757717cbb069f4b8b28f5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 26 Jun 2023 04:47:40 +0000 (04:47 +0000)]
Release version 0.35.5
Changes:
- Revert "Add step that forces private connections in libsyscommon"
Change-Id: I7c162b0795fccafb794443ced903926ff90f8511
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 26 Jun 2023 04:46:25 +0000 (04:46 +0000)]
Revert "Add step that forces private connections in libsyscommon"
This reverts commit
563653568fd889ea2c12f786a34d18231c53901c.
Change-Id: Ib47f2747a6026337472a18aef61c8457a2747e0d
Hwankyu Jhun [Fri, 23 Jun 2023 02:17:31 +0000 (02:17 +0000)]
Release version 0.35.4
Changes:
- Add step that forces private connections in libsyscommon
Change-Id: I9703e0596a9af98f816e07b23bd17945d222a536
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Mateusz Moscicki [Fri, 16 Jun 2023 08:18:29 +0000 (10:18 +0200)]
Add step that forces private connections in libsyscommon
This is used to ensure that applications launched by launchpad get their
own connection with the appropriate label, rather than using the
connection that was established before the label change.
Change-Id: I1536904207b2b73a5478c6bde973c0e9296a8f87
Hwankyu Jhun [Thu, 22 Jun 2023 09:27:58 +0000 (09:27 +0000)]
Revert "Fix wrong sigchild handler"
This reverts commit
6c22de6fcbb73202fd9e040e641d40d04d708d7b.
Change-Id: Ib8b095cf2a3ed12bf4bc3f4e28a0456ab23160d1
Hwankyu Jhun [Thu, 22 Jun 2023 09:27:23 +0000 (09:27 +0000)]
Revert "Fix a bug about sigchld handler"
This reverts commit
62f6437b97d2b229d43bd0cc3d3c14ba6badc499.
Change-Id: I54b772c7c61c9c0954c85fc189456d68e09c2f4a
Hwankyu Jhun [Thu, 22 Jun 2023 05:55:21 +0000 (05:55 +0000)]
Release version 0.35.3
Changes:
- Fix a bug about sigchld handler
Change-Id: Idbb1a2b694d783e0a1133a1b24fb907321bd2552
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 22 Jun 2023 05:41:00 +0000 (05:41 +0000)]
Fix a bug about sigchld handler
When calling the OnSigchldReceived() of the EventListener, the pid and
the status should be set properly.
Change-Id: Icc5b1fd0875dc92c3bf513e0e3afe12d6b6e538a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 22 Jun 2023 02:09:12 +0000 (02:09 +0000)]
Release version 0.35.2
Changes:
- Remove exit() call
- Fix wrong sigchild handler
Change-Id: Ib5ce2d196cd7dbd1065da75f538bd7448963b088
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 22 Jun 2023 01:55:07 +0000 (01:55 +0000)]
Fix wrong sigchild handler
The event listener should be called when getting the sigchld signal.
Change-Id: I9dc085b04237c1df3df84f73b1345032c4fe9cc3
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 22 Jun 2023 00:50:55 +0000 (00:50 +0000)]
Remove exit() call
Even if execv() call is failed, the launchpad-loader must not call the exit().
It can cause the deadlock issue if the library does not consider caling
exit handlers immediately.
Change-Id: Ieae9da9c9a5162a4dc5da3d78460a8e02c7cdf5d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 21 Jun 2023 06:01:50 +0000 (06:01 +0000)]
Release version 0.35.1
Changes:
- Fix a bug related to the onboot timer setting
Change-Id: Ia658884279b791581148761501a8a03b00dd59c8
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 20 Jun 2023 22:42:59 +0000 (22:42 +0000)]
Fix a bug related to the onboot timer setting
Before setting the onboot timer, the launchpad checks whether the loader context
was prepared or not. Unfortunately, the touched flag was not set.
This patch add the flag set in the Prepare() method.
Change-Id: Id6be61426bb2d3d2a86f350a159900ae41e890a5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 20 Jun 2023 06:28:34 +0000 (06:28 +0000)]
Release version 0.35.0
Changes:
- Remove blocking and unblocking all sub threads
- Support Launch Mode
Change-Id: I1d1e2f56c1bf288817b98c21770feffcaf4f14d0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>