Hwankyu Jhun [Tue, 23 Jan 2024 23:12:24 +0000 (08:12 +0900)]
Release version 0.39.1
Changes:
- Fix invalid access
Change-Id: I9a8fb4ab6e48a615d3be0e6fe04ef82142be5e85
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 23 Jan 2024 22:59:51 +0000 (07:59 +0900)]
Fix invalid access
The array size is 2.
Change-Id: If65b54963abee9d06ca7926aedd30be698371ca9
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 23 Jan 2024 03:52:04 +0000 (12:52 +0900)]
Release version 0.39.0
Changes:
- Mount gadget resource paths for NUIGadget
Change-Id: Ief01323a30bfdf0a4e10e35ac68248e8f9b2425e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 19 Jan 2024 09:52:37 +0000 (18:52 +0900)]
Mount gadget resource paths for NUIGadget
After this patch is applied, the launchpad tries to mount the gadget
resource package separately. And, the gadget packages will be mounted to
the bin directory of the application.
The 'loader-mount' process is added for mounting gadget packages.
Change-Id: Id6c4e6b5a3525eb5cc8687fbb28b6292e895ff3e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 8 Jan 2024 04:31:35 +0000 (13:31 +0900)]
Release version 0.38.27
Changes:
- Remove MCJ file for dotnet apps
Change-Id: I0004127a33fba04212db4c6aa39149c73e1a02bc
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 8 Jan 2024 04:21:11 +0000 (13:21 +0900)]
Remove MCJ file for dotnet apps
The pal layer of coreclr creates the temporary file. If the process is
terminated by SIGKILL, the file is not deleted normally.
To prevent SMACK issue, the launchpad-process-pool removes the MCJ file.
Change-Id: I63eac7ee30008195ff9dcd5572b7c3222d83501b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 2 Jan 2024 10:22:56 +0000 (19:22 +0900)]
Release version 0.38.26
Changes:
- Register application info when ping delivered
Change-Id: I35a390f1a43b48c8f678dfc3d7d52f25174933e5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 2 Jan 2024 08:08:52 +0000 (17:08 +0900)]
Register application info when ping delivered
If the application is executed using fast launch option of the
app_launcher tool, there is a timing issue.
When the app process is slow to enter the main function, amd does not
know the process existence. To prevent the timing issue, launchpad sends
the launches process list to amd when ping request is received.
Change-Id: If7dea099493e0442b2a09137467238682c63d66e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Thu, 21 Dec 2023 02:22:48 +0000 (11:22 +0900)]
Release version 0.38.25
Changes:
- Fix build fail issue for gcc13
Change-Id: Iab3fbd4642e46425840d94cc8620a919136cd05e
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Thu, 21 Dec 2023 01:15:51 +0000 (10:15 +0900)]
Fix build fail issue for gcc13
Change-Id: If85456e7b588255c95b0d3315859bef0be9b1487
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Wed, 20 Dec 2023 03:43:30 +0000 (12:43 +0900)]
Release version 0.38.24
Changes:
- Except file descriptors from closing list
- Handle SIGCHLD event for process-pool
Change-Id: I7fa11a06f4c2cc08c928d78d6b56f41209c2783e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 20 Dec 2023 02:23:18 +0000 (11:23 +0900)]
Handle SIGCHLD event for process-pool
If the process pool is terminated, the launchpad should remove
the process information. And, if sending the request to the process pool
is failed, the launchpad must create a new process to execute an application.
Change-Id: I1d5096394593fe3db92fbd125f468bd9b73c498f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 20 Dec 2023 01:27:20 +0000 (10:27 +0900)]
Except file descriptors from closing list
There is a smack issue by closing fds in the process-pool.
In launchpad-process-pool, when using dlog, create a file descriptor
with vlog_init().
- When creating a process-pool, close all file descriptors except for
the dlog fd (at this time, the vlog fd is closed).
- When using the security-manager, attempt to output dlog. Attempt to write
using the vlog fd by calling vlog_write(), but at this time, actually use
the fd created by the security-manager.
- This fd points to /sys/fs/smackfs.
- SMACK error occurred.
Change-Id: I50b3f4860454f002dd550311bf48e7ef5a2916dc
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 15 Dec 2023 04:28:00 +0000 (13:28 +0900)]
Release version 0.38.23
Changes:
- Use access() instead of std::filesystem::exists
Change-Id: I4c3090d72ccb6b4d62888d9c462bd9d565cbd97e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 15 Dec 2023 03:34:17 +0000 (12:34 +0900)]
Use access() instead of std::filesystem::exists
The std::filesystem::exists uses stat() internally. The read permission
is needed to use stat(). It can cause the smack issues.
This patch changes the implementation to using access() with F_OK option.
Change-Id: I367487b010c7abf50015004e86c3bb6ad88aa0e6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Wed, 13 Dec 2023 01:36:00 +0000 (10:36 +0900)]
Release version 0.38.22
Changes:
- Revert "Increase cpu boosting interval"
Change-Id: Ie1393f64a97b77babbdca5755cc75aeaf18acdf9
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Wed, 13 Dec 2023 01:10:53 +0000 (10:10 +0900)]
Revert "Increase cpu boosting interval"
This reverts commit
e6d5bee452cc2548fecc48dc6ddd6dc8a64a2c9e.
Change-Id: Ifb5a779f45e05ed0b78de47efd9fcb2e3daa7b79
Changgyu Choi [Thu, 30 Nov 2023 00:11:40 +0000 (09:11 +0900)]
Release version 0.38.21
Changes:
- Increase cpu boosting interval
Change-Id: I7aad16d41b598ae11e59a3ef9a09ee64d603097d
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Wed, 29 Nov 2023 07:36:17 +0000 (16:36 +0900)]
Increase cpu boosting interval
Some low-end devices have a problem of delaying app execution at boot time.
This patch improves this problem by increasing cpu boosting interval.
Change-Id: Ic4c22e5a23c45a8fa31b61f0d2a460a4cf8f6dbf
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Tue, 21 Nov 2023 03:47:54 +0000 (12:47 +0900)]
Release version 0.38.20
Changes:
- Add restart loader condition
Change-Id: Id4daf7244fe76857b60b5c76c52a8af5bb21b43b
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 20 Nov 2023 08:36:26 +0000 (17:36 +0900)]
Add restart loader condition
When handling the RESTART_LOADER command, it is necessary to check whether the
loader_context is launchable.
In some cases, a problem occurred by launching a loader in a non-executable state.
This patch fixes this case.
Change-Id: I835799364d4dcd4e0d8c30e0d60a52f5ec08ff10
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 20 Nov 2023 03:52:03 +0000 (12:52 +0900)]
Release version 0.38.19
Changes:
- Rollback SendStartupSignal()
Change-Id: I519e95eb83dd0d85d2fdf59247ebd57bbf1605d8
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Mon, 20 Nov 2023 02:23:49 +0000 (11:23 +0900)]
Rollback SendStartupSignal()
For apps that do not use some aul api, roll back previous patch.
Rollback:
- https://review.tizen.org/gerrit/c/platform/core/appfw/launchpad/+/301173
Change-Id: I6383e998cdaa55e790b7d5bf0c8031c7cbc4d40c
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Wed, 15 Nov 2023 08:52:16 +0000 (17:52 +0900)]
Release version 0.38.18
Changes:
- Send Startup signal
Change-Id: I0d6944fc2c6618db0e08e46223926bc6807216a8
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 15 Nov 2023 08:48:34 +0000 (17:48 +0900)]
Send Startup signal
In the loader case, the process already loaded the aul library.
AppStartupSignal is sent while loading the aul library.
Sending AppStartupSignal is needed in the loader case.
Change-Id: I4968fe72992f24d6bf19c957f43967080602f5f0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 15 Nov 2023 01:41:14 +0000 (10:41 +0900)]
Release version 0.38.17
Changes:
- Remove SendStartupSignal step
- Set a new environment variable for fast launch
Change-Id: I5276287cccabcbff3bf3006cdee4d6246974461b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 14 Nov 2023 05:47:47 +0000 (14:47 +0900)]
Set a new environment variable for fast launch
If an application is executed by the fast launch option,
the launchpad adds the "AUL_FAST_LAUNCH" variable to the environment.
Change-Id: Ia43ce56a34dc103b1ae1b8ff740f90b2e861e8c6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Fri, 10 Nov 2023 04:23:38 +0000 (13:23 +0900)]
Remove SendStartupSignal step
This step is moved to aul lib constuctor.
Change-Id: I35b7f791c3c5c9ed8e33233c7ef88506d10c3cfc
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Tue, 7 Nov 2023 08:11:30 +0000 (17:11 +0900)]
Release version 0.38.16
Changes:
- Change launch mode to previous operation
Change-Id: Ie7dff13b165d80ae8c7cc127c719cbe991c31f01
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Tue, 7 Nov 2023 06:19:04 +0000 (15:19 +0900)]
Change launch mode to previous operation
This patch changes the launch mode of loader management to
the previous operation.
Change-Id: I426a16dc1c2f58eb46132d8a789c73a6199aaa9a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 6 Nov 2023 07:39:46 +0000 (16:39 +0900)]
Release version 0.38.15
Changes:
- Modify thread control
Change-Id: I94a8a7e1b27a922714a51154817e19fcd8593047
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Mon, 6 Nov 2023 07:18:15 +0000 (16:18 +0900)]
Modify thread control
This patch uses std::condition_variable::wait_for() instead of
std::condition_variable::wait(). The timeout is 5 seconds.
Change-Id: I6a5f89bbf4450679c8527121f76966c6451eab52
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Sun, 5 Nov 2023 23:37:18 +0000 (08:37 +0900)]
Release version 0.38.14
Changes:
- Remove CPU boosting of loader process
Change-Id: Ib17f02eeed22cd740047589f1f8061b55f747e4f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Fri, 3 Nov 2023 08:15:11 +0000 (17:15 +0900)]
Remove CPU boosting of loader process
Recently, the launchpad-process-pool sends a boosting request when
the loader process is not prepared. This patch removes that.
In the product model, the module of amd sends a boosting request for
executing the process.
Change-Id: Iebf96954919be250447f19ee0d37f4274db39bf2
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Changgyu Choi [Tue, 31 Oct 2023 07:51:06 +0000 (16:51 +0900)]
Release version 0.38.13
Changes:
- Fix typo
Change-Id: I6966a0e3f7b48269aed5ffd6c21c3ba8f77259e9
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Changgyu Choi [Tue, 31 Oct 2023 07:42:20 +0000 (16:42 +0900)]
Fix typo
Change-Id: I4c17ea4c8253e46b26237c63326bf8ded5f136f6
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
Hwankyu Jhun [Thu, 19 Oct 2023 04:32:26 +0000 (13:32 +0900)]
Release version 0.38.12
Changes:
- Change log messages of executing echo
Change-Id: I0df749a6230971b88dead3c2ada3aec14bdeaa77
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Thu, 19 Oct 2023 04:08:55 +0000 (13:08 +0900)]
Change log messages of executing echo
The error message is added.
Change-Id: I18518c4806e2de0bdd9d6515940798fda8b7849a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 18 Oct 2023 00:51:49 +0000 (09:51 +0900)]
Release version 0.38.11
Changes:
- Add SIGUSR1 signal handler
- Fix double close
Change-Id: I539d5645dcbeb9ae00474fcbbd5a15ac0fce10a3
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 18 Oct 2023 00:46:47 +0000 (09:46 +0900)]
Fix double close
This patch removes input_file.close() call from debugger info parser.
Change-Id: Ib430ee0f6f715f55aa6f23a28b65634700e98ade
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
Hwankyu Jhun [Wed, 18 Oct 2023 00:03:48 +0000 (09:03 +0900)]
Add SIGUSR1 signal handler
Currently, the launchpad-process-pool suddenly gets the SIGUSR1 signal.
To debug the reason, the SIGUSR1 signal handler is added.
While getting the signal, the launchpad-process-pool prints the sender
pid and the backtrace.
Change-Id: I842e374b836b83a635722baafa628bea10f072d0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
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>