Woongsuk Cho [Thu, 18 Jul 2024 06:14:25 +0000 (15:14 +0900)]
Skip AOT in plugin when pkg contains ni files
j-h.choi [Fri, 12 Jul 2024 06:53:01 +0000 (15:53 +0900)]
Remove unnecessary architecture library for lib folder of app
최종헌/MDE Lab(SR)/삼성전자 [Thu, 18 Jul 2024 01:15:28 +0000 (10:15 +0900)]
Update gbs-build.yml
조웅석/MDE Lab(SR)/삼성전자 [Wed, 17 Jul 2024 23:41:16 +0000 (08:41 +0900)]
Remove ni file before RO app AOTC (#570)
* Remove ni file before RO app AOTC
If AOTC is performed for a RO app, a native image file will be generated under /opt/usr/dotnet/apps.
During OTN, pkg_upgrade may trigger AOTC again for the RO application.
In this case, it is necessary to remove the previously created file and create a new one.
* Remove RO app ni files under /opt/usr/dotnet/apps
Recreated NI files of RO app, should be removed at FOTA/OTN
j-h.choi [Thu, 4 Jul 2024 08:01:56 +0000 (17:01 +0900)]
Fixed the arch bug that occurred in the MIC build
Bugfix: Do not perform heaptrack injection for coreprofiler start. (#567)
Jeonghoon Park [Fri, 26 Apr 2024 05:31:19 +0000 (14:31 +0900)]
add a new debugger section for memory profiler to the 'dotnet.debugger' file
j-h.choi [Wed, 19 Jun 2024 00:37:29 +0000 (09:37 +0900)]
Added the 'dude download' command to the action script
Change-Id: I59cf18ad150fb69be313aa9acfd307543309f1d1
최종헌/MDE Lab(SR)/삼성전자 [Tue, 2 Jul 2024 03:36:08 +0000 (12:36 +0900)]
Fix crossgen2 mic build (#557)
Change-Id: Ica3e5993716efb637e01a10030f22ce9596f389a
j-h.choi [Mon, 10 Jun 2024 02:40:34 +0000 (11:40 +0900)]
Chaanged the TC order of LAUNCH and EXCEPTION
Change-Id: I5f314b1891e29f74e754fdb214beec5326313337
최종헌/MDE Lab(SR)/삼성전자 [Mon, 1 Jul 2024 23:58:41 +0000 (08:58 +0900)]
Fixed build warning (#558)
* Fix build warning
Woongsuk Cho [Thu, 20 Jun 2024 07:09:37 +0000 (16:09 +0900)]
Use upstream config for debugger enable
see: https://github.com/dotnet/runtime/pull/90159
Woongsuk Cho [Thu, 20 Jun 2024 01:53:34 +0000 (10:53 +0900)]
Disable debugger for loader mode
To prevent smack issue related to clr-debug-pipe-xxx file,
disable debugging feature in the runtime side
최종헌/MDE Lab(SR)/삼성전자 [Thu, 30 May 2024 02:34:09 +0000 (11:34 +0900)]
Update action script (#556)
Change-Id: I08a862bc2d647945432e93610a5270788cf554e4
최종헌/MDE Lab(SR)/삼성전자 [Thu, 30 May 2024 00:25:54 +0000 (09:25 +0900)]
Fixed build error (#555)
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 08:18:59 +0000 (17:18 +0900)]
Add TizenDotnetBenchmark Test App (#554)
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 08:18:48 +0000 (17:18 +0900)]
Add launcher-action.yml (#550)
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 08:18:29 +0000 (17:18 +0900)]
Add gbs-build.yml (#548)
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 07:53:51 +0000 (16:53 +0900)]
The policy of NI file created in .NET8 is changed to use '.dll' extension (#535)
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 07:44:28 +0000 (16:44 +0900)]
[Refactoring] The main() method contains too many lines of code (#534)
Change-Id: Ie516bd6f22177c78eb99075d9082b209e3a82503
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 07:43:44 +0000 (16:43 +0900)]
Modify the injection function for the new memory profiler (#545)
Change-Id: I139b4564e176f16d98d69cb43fc5bdda67d37c76
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 07:43:20 +0000 (16:43 +0900)]
Added TC to check NullReferenceException (#537)
Change-Id: I98a7d6273f86a60f259299d291f497c58a2e0676
최종헌/MDE Lab(SR)/삼성전자 [Wed, 29 May 2024 07:37:42 +0000 (16:37 +0900)]
Separate the TAC into the RW area and the RO area (#521)
Change-Id: Iaf90d00dfd65c779ad941d154d733e8a04d278f4
최종헌/MDE Lab(SR)/삼성전자 [Mon, 27 May 2024 01:53:48 +0000 (10:53 +0900)]
Displays the result of launcher tc (#549)
Change-Id: I601d6f5dd9e198e0079aefec46e0cac64033ca73
Woongsuk Cho [Fri, 29 Mar 2024 02:03:33 +0000 (11:03 +0900)]
Add optionis to remove app NI file
In case of OS upgrade, there are cases where all app-related ni files must be removed.
For that case, add new options to dotnettool
- ni-reset-all-app
- tac-reset-all
j-h.choi [Wed, 8 May 2024 03:14:09 +0000 (12:14 +0900)]
Add gbs.conf
Change-Id: Iff0dd070177035db2a87de18d23845bda95bd2df
최종헌/MDE Lab(SR)/삼성전자 [Wed, 8 May 2024 02:21:57 +0000 (11:21 +0900)]
Add CODEOWNERS (#546)
Change-Id: Ib82f0a3ab61f4674781cce60e62378aca22fc494
Woongsuk Cho [Tue, 16 Apr 2024 07:21:19 +0000 (16:21 +0900)]
add .vs-code to gitignore
Woongsuk Cho [Tue, 16 Apr 2024 04:20:11 +0000 (13:20 +0900)]
Bug-fix: fix target dll searching logic
check the target dll is an R2R image or not
Woongsuk Cho [Tue, 9 Apr 2024 09:14:17 +0000 (18:14 +0900)]
Call DateTime.Now in the Candidate process
To reduce the delay that occurs when DateTime.Now is first called,
it is called in the candidate process.
Woongsuk Cho [Thu, 28 Mar 2024 21:58:08 +0000 (06:58 +0900)]
Fix incorrect TPA error
The isManagedAssembly() function receives a file name as an input and checks only the extension.
But, it calls isR2RImage(), which requires a full path to the file internally.
Upon checking the usage of the isManageAssembly() function,
it is confirmed that it is used only to check whether it is a dll file or not.
So, the isManagedAssembly() function has been modified to return true even in the case of including a native image,
and related codes have been reorganized.
Woongsuk Cho [Fri, 22 Mar 2024 08:21:48 +0000 (17:21 +0900)]
bug-fix : fix TAC malfunction for multi pkg scenario
clear vector before restart tac plugin
close tac_db and tlc_db for next package
Woongsuk Cho [Wed, 20 Mar 2024 23:44:12 +0000 (08:44 +0900)]
Support Multi-Package Install Scenario
Package manager supports scenario in which multiple packages are installed at once.
The previous implementation contains defence code for the case where there are multiple apps in one package.
With this implementation, the multi package installation scenario malfunctioned.
So, the implementation was modified.
Hyungju Lee [Fri, 15 Mar 2024 00:22:46 +0000 (09:22 +0900)]
boost::filesystem::coy_option is deprecated.
// Deprecated, use copy_options instead
enum class copy_option
{
none = copy_options::none,
fail_if_exists = none,
overwrite_if_exists = copy_options::overwrite_existing
};
이형주/MDE Lab(SR)/삼성전자 [Thu, 14 Mar 2024 11:15:11 +0000 (20:15 +0900)]
Quick fix for boost upgrade (#527)
[ 86s] /home/abuild/rpmbuild/BUILD/dotnet-launcher-6.0.9/NativeLauncher/tool/privilege_common.cc:52:36: error: variable 'std::ofstream output' has initializer but incomplete type
[ 86s] 52 | std::ofstream output(ipv6FilePath);
[ 86s] | ^
j-h.choi [Wed, 28 Feb 2024 02:02:16 +0000 (11:02 +0900)]
Change NI generation location to root for RPK type
Change-Id: Ic6696df36d3c3a9b2b15fe39e18eee8e13782c6e
Woongsuk Cho [Tue, 12 Mar 2024 01:47:36 +0000 (10:47 +0900)]
Register default signal handler
When the .NET Runtime receives SIGABRT and the previous handler is the default handler,
the .NET Runtime restores the default handler as the current handler and continues.
As a result, if a signal handler has not been registered before the .NET Runtime,
the application will be terminated only after calling SIGAGRT twice.
To avoid this situation, add signal handler before coreclr_initialize()
최종헌/MDE Lab(SR)/삼성전자 [Mon, 11 Mar 2024 02:17:24 +0000 (11:17 +0900)]
Add include fstream header for boost 1.83.0 (#525)
Change-Id: Ifeceb15d3b9eac98b749d4043e5e806a75c0e019
Hyungju Lee [Wed, 6 Mar 2024 03:19:16 +0000 (12:19 +0900)]
Remove a dependency of capi-appfw-app-common package
This patch uses aul_get_app_data_path() instead of app_get_data_path().
Change-Id: If417eb9733be76850eb22d39f7c48c3716379633
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
j-h.choi [Thu, 22 Feb 2024 01:00:32 +0000 (10:00 +0900)]
Fixed TAC related bugs caused by function integration patch
Change-Id: Ib274591f120e7d8ed89b568c67de042cba21e07a
j-h.choi [Wed, 21 Feb 2024 05:05:44 +0000 (14:05 +0900)]
Changed the creation location of the NI file to configure smack for RPK
When the RPK(resource package) is installed through pkgcmd, AOT is performed.
At this time, there was an issue that the smack label did not change for the NI created in the lib folder.
Because the installer does not have the capability of cap_mac_admin.
Change-Id: I74d47104d9edf07187fd1bd942a2993c280a7219
Woongsuk Cho [Tue, 20 Feb 2024 01:41:12 +0000 (10:41 +0900)]
remove unnecessary ecore dependency
j-h.choi [Mon, 19 Feb 2024 08:31:40 +0000 (17:31 +0900)]
Fixed bug that check the arch of device
Change-Id: Ia27f81678ad75cc5d5029a2d9288c27f8319f291
j-h.choi [Wed, 14 Feb 2024 07:09:54 +0000 (16:09 +0900)]
Refactoring to extract duplicate logic as a separate method
Change-Id: I765201c0249f6415b6c1e3654888ae0567af5889
Woongsuk Cho [Mon, 5 Feb 2024 01:08:27 +0000 (10:08 +0900)]
Change implementation of regeneratePkgNI
Woongsuk Cho [Wed, 31 Jan 2024 07:17:32 +0000 (16:17 +0900)]
AOT support for RPK
The RPK (Resource Package) can contain dlls for resources and NUIGadget.
For RPK, Dlls can be located under lib and res/allowed directory.
AOT for RPK is enabled by metadata "http://tizen.org/metadata/prefer_dotnet_aot".
It triggered by metadata installer plugin and dotnettool(--ni-pkg, --ni-regen-all-app).
j-h.choi [Thu, 18 Jan 2024 06:40:47 +0000 (15:40 +0900)]
[Refactoring] Code cleanup and remove duplicate methods
Change-Id: I6c65e5108b0110a51b5f9d60e34779d7d4f300ef
조웅석/MDE Lab(SR)/삼성전자 [Mon, 18 Dec 2023 07:21:04 +0000 (16:21 +0900)]
Update NativeLauncher/tool/ni_common.cc
Co-authored-by: 최종헌/MDE Lab(SR)/삼성전자 <j-h.choi@samsung.com>
Woongsuk Cho [Wed, 29 Nov 2023 04:16:49 +0000 (13:16 +0900)]
Remove duplicated ni regeneration
In case of --ni-regen-all-app option, AOTC was performed multiply for one package if multiple app is contained in it.
To avoid this situation, get unique candiate package list for --ni-regen-all-app.
최종헌/MDE Lab(SR)/삼성전자 [Mon, 18 Dec 2023 06:32:09 +0000 (15:32 +0900)]
Update ni_common.cc
j-h.choi [Tue, 21 Nov 2023 07:22:37 +0000 (16:22 +0900)]
Remove duplicate files from app assembly list
Gleb Balykov [Thu, 15 Feb 2024 07:43:30 +0000 (10:43 +0300)]
Remove ZapDisable=1 for Coreprofiler
Explicit disabling of ni.dll is not needed, because
- in case of enter/leave hooks usage (non-alternative sampling mode) ni.dll will be disabled automatically
- in case of DoStackSnapshot (alternative sampling mode) ni.dll can be freely used and this will improve performance
최종헌/MDE Lab(SR)/삼성전자 [Wed, 14 Feb 2024 03:07:12 +0000 (12:07 +0900)]
Revert PR #509, #510 (#513)
* Revert "Sets the ZapDisable env according to the Alternative Sampling value of the coreprofiler"
This reverts commit
2fa05eebf1a9a61018efefea5c5cfe42a9fd5b7f.
* Revert "[Refactoring] Improve SAM score through DC and GV improvement"
This reverts commit
04a885649ac58636a6b7da2c20449adceb84e40b.
j-h.choi [Thu, 4 Jan 2024 01:29:48 +0000 (10:29 +0900)]
[TC Fixed] Remove the TC for dotnet-nui-loader
j-h.choi [Mon, 22 Jan 2024 04:34:47 +0000 (13:34 +0900)]
[Refactoring] Improve SAM score through DC and GV improvement
j-h.choi [Wed, 24 Jan 2024 06:25:09 +0000 (15:25 +0900)]
Sets the ZapDisable env according to the Alternative Sampling value of the coreprofiler
Change-Id: Iba9dfd40023c15b0d59a9cc8032c0e9390d7278d
j-h.choi [Tue, 2 Jan 2024 07:52:01 +0000 (16:52 +0900)]
Add --set-priority option in dotnettool
Change-Id: I9d7c0291e24e6be28e6974be360e5c271f9c3c1e
최종헌/MDE Lab(SR)/삼성전자 [Sun, 28 Jan 2024 23:54:56 +0000 (08:54 +0900)]
TAC is applied to all dlls in the R2R mode (#502)
최종헌/MDE Lab(SR)/삼성전자 [Thu, 25 Jan 2024 04:51:14 +0000 (13:51 +0900)]
Fix build error in aarch64 (#511)
Change-Id: I9577aa8ea2813a0ac92c4acd6cb9a1241e450fcf
최종헌/MDE Lab(SR)/삼성전자 [Wed, 3 Jan 2024 08:43:52 +0000 (17:43 +0900)]
Code review feedback
j-h.choi [Tue, 2 Jan 2024 06:44:39 +0000 (15:44 +0900)]
Change to create a .native_image_tmp folder when creating NI
Woongsuk Cho [Fri, 22 Dec 2023 00:02:00 +0000 (09:02 +0900)]
Add define HOST_XXX to support pal.h
Processor-specifc glue code is removed from latest pal.h.
To avoid build failure, add HOST_XXX define for each architecture.
j-h.choi [Tue, 19 Dec 2023 01:28:49 +0000 (10:28 +0900)]
[RISCV64] Add definition for riscv64
Change-Id: Ibc4d4be09967bb1941e0b569b2044371d178f21c
Woongsuk Cho [Tue, 28 Nov 2023 11:42:47 +0000 (20:42 +0900)]
Check library extension more
To handle ".so.{number}" case, add more checking logic
Woongsuk Cho [Tue, 28 Nov 2023 08:28:33 +0000 (17:28 +0900)]
Bug-fix : native library resolving logic
최종헌/MDE Lab(SR)/삼성전자 [Mon, 13 Nov 2023 03:55:40 +0000 (12:55 +0900)]
Add error log when using --rm-all-app-profile option (#493)
최종헌/MDE Lab(SR)/삼성전자 [Mon, 13 Nov 2023 03:55:33 +0000 (12:55 +0900)]
Refactoring the fallback graph of RID/TFM (#488)
Woongsuk Cho [Thu, 9 Nov 2023 06:06:16 +0000 (15:06 +0900)]
Get user app root dir for remove profile data
To remove duplicated API call(changing user), get userAppRoot dir instead of uid.
Woongsuk Cho [Thu, 9 Nov 2023 01:58:58 +0000 (10:58 +0900)]
Set default value (NULL) for removeAllProfile
Woongsuk Cho [Thu, 9 Nov 2023 01:05:34 +0000 (10:05 +0900)]
Gets the user's uid related to installed app only.
if there are many installed apps, it takes a lot of time to delete profile data.
This is because it attempts to delete profile data for all uids.
To optimize this, only uids related to the installed app are obtained.
j-h.choi [Tue, 7 Nov 2023 06:22:48 +0000 (15:22 +0900)]
Revert "Add launchpad_loader_block/unblock_thread() method"
This reverts commit
c8b525e03ec5caf89e78ffa4a888aa57f2179540.
j-h.choi [Mon, 30 Oct 2023 22:11:43 +0000 (07:11 +0900)]
Create vconf related to .NET as a file in RO location
j-h.choi [Thu, 26 Oct 2023 00:01:26 +0000 (09:01 +0900)]
Add launchpad_loader_block/unblock_thread() method
조웅석/MDE Lab(SR)/삼성전자 [Wed, 11 Oct 2023 01:18:39 +0000 (10:18 +0900)]
Add DIAGNOSTIC to debugger script (#484)
To set DOTNET_DiagnosticPorts environment for app launching,
Add DIAGNOSTIC option to debugger script
Only environment key value is described in debugger script.
The environment value should be set when launching application like below.
owner:~> launch_app [APP_ID] __AUL_SDK__ DIAGNOSTIC DOTNET_DiagnosticPorts [PortName]
조웅석/MDE Lab(SR)/삼성전자 [Thu, 24 Aug 2023 06:58:23 +0000 (15:58 +0900)]
Call plugin has log control before preloading (#483)
* Call pluginHasLogControl in the initialize
VD create log thread in the pluginHasLogControl to redirect stdout,stderr to vlog.
To prevent log missing in the candidate process, call pluginHasLogControl in the initialize() function.
* call pluginHasLogControl before preloading
Woongsuk Cho [Thu, 24 Aug 2023 06:36:16 +0000 (15:36 +0900)]
Call pluginHasLogControl in the initialize
VD create log thread in the pluginHasLogControl to redirect stdout,stderr to vlog.
To prevent log missing in the candidate process, call pluginHasLogControl in the initialize() function.
j-h.choi [Thu, 24 Aug 2023 00:52:30 +0000 (09:52 +0900)]
Check library extensions more accurately
최종헌/MDE Lab(SR)/삼성전자 [Mon, 31 Jul 2023 04:17:47 +0000 (13:17 +0900)]
Update tfm to net6.0 (#479)
최종헌/MDE Lab(SR)/삼성전자 [Mon, 31 Jul 2023 04:15:17 +0000 (13:15 +0900)]
Change the location and value for generating vconf of runtime_version (#478)
조웅석/MDE Lab(SR)/삼성전자 [Mon, 24 Jul 2023 23:46:24 +0000 (08:46 +0900)]
Remove storage API dependency (#477)
Use tzplatform_config API to get special folder instead of storage API.
storage API makes thread and gdbus connection internally and it can make some error at the loader mode.
In this patch, we get special folders (music, image, video) from tzplatform data.
Additionally, to allow override speicial folder location with coreclr_env.list,
change the initEnvForSpecialFolder() call location.
최종헌/MDE Lab(SR)/삼성전자 [Mon, 24 Jul 2023 05:31:21 +0000 (14:31 +0900)]
Change the priority of the function to check (#476)
조웅석/MDE Lab(SR)/삼성전자 [Mon, 24 Jul 2023 04:34:59 +0000 (13:34 +0900)]
Use setEnvrionmentVariable() to set SpecialFolder (#475)
Storage API which is used to get SpecialFolder(Music, Picture, Video) makes threads internally,
and it makes crash when we call setenv() function in the launcher because setenv() is not thread-safe function.
So, use setEnvironmentVariable() function which set envrionment variable in the .NET runtime.
이형주/MDE Lab(SR)/삼성전자 [Mon, 24 Jul 2023 04:31:33 +0000 (13:31 +0900)]
Fix deprecated SHA* to EVP_MD* (#473)
* Fix deprecated SHA* to EVP_MD*
최종헌/MDE Lab(SR)/삼성전자 [Mon, 24 Jul 2023 04:28:12 +0000 (13:28 +0900)]
Copy only when there is .native_image folder (#474)
이형주/MDE Lab(SR)/삼성전자 [Thu, 20 Jul 2023 06:25:20 +0000 (15:25 +0900)]
Openssl 1.1 -> 3 (#472)
* Openssl 1.1 -> 3
* Fix libname
이형주/MDE Lab(SR)/삼성전자 [Wed, 19 Jul 2023 09:04:40 +0000 (18:04 +0900)]
Fix compile error for gcc13 (#471)
* Fix compile error for gcc13
* Filetype to unix
최종헌/MDE Lab(SR)/삼성전자 [Tue, 18 Jul 2023 00:37:26 +0000 (09:37 +0900)]
Remove the preload code related to TIZEN_UIFW. Only NUI is supported (#469)
최종헌/MDE Lab(SR)/삼성전자 [Mon, 10 Jul 2023 04:44:46 +0000 (13:44 +0900)]
Added the sdk_tool path to find diagnostics (#459)
Change-Id: Ic3bb7521e5fe8c2f8be39118ab06725e4f91a6e3
최종헌/MDE Lab(SR)/삼성전자 [Mon, 10 Jul 2023 04:44:31 +0000 (13:44 +0900)]
[Tizen S] Deleted unused scripts because wearable is not supported (#463)
최종헌/MDE Lab(SR)/삼성전자 [Mon, 10 Jul 2023 04:44:16 +0000 (13:44 +0900)]
[Bug fix] Added reboot to avoid mount issue for RO app (#467)
최종헌/MDE Lab(SR)/삼성전자 [Mon, 10 Jul 2023 00:55:24 +0000 (09:55 +0900)]
Fix bugs for apps that do not have AOT metadata when running the --tac-regen-all option (#466)
The default heaptrack configuration file path added. (#465)
Hyungju Lee [Wed, 5 Jul 2023 23:55:35 +0000 (08:55 +0900)]
Remove deadcode
조웅석/MDE Lab(SR)/삼성전자 [Mon, 26 Jun 2023 04:16:49 +0000 (13:16 +0900)]
Support UI Thread Separate (UTS) App Model (#464)
define new apptype dotnet-uts for UI Thread Separate App Model
In the UI Thread Separate App Model, the main thread operates with the gmainloop
and UI-related tasks operate with the ecoreloop in a separate thread.
Therefore, ecore_init() should not be called in the main thread of the candidate process
for the UI Thread Separate App Model.
Also, candidate process should run with the gmainloop.
To run by the UI Thread Separate App Model, the environment variable "TIZEN_UI_THREAD" should be set to "true".
If this environment variable is set, then NUI would work on UI Thread Separate Mode.
j-h.choi [Thu, 27 Apr 2023 04:46:45 +0000 (13:46 +0900)]
[Tizen S] Integrate app types(dotnet, dotnet-nui)
조웅석/MDE Lab(SR)/삼성전자 [Mon, 10 Apr 2023 01:00:41 +0000 (10:00 +0900)]
Add "User" execute labe to dotnet-hydra-loader (#461)
j-h.choi [Thu, 19 Jan 2023 01:23:55 +0000 (10:23 +0900)]
Create the /tmp/.dotnet/mcj dir to reduce the number of I/O of profile data
Change-Id: I19ecbbdb2d6603d6cdea1d3214ae79c638bc06e6
j-h.choi [Thu, 26 Jan 2023 07:32:39 +0000 (16:32 +0900)]
Changed the json exception
Change-Id: I87c0c32673b94e62682d13b69b62a29f847f1bfe
이형주/MDE Lab(SR)/삼성전자 [Wed, 18 Jan 2023 23:51:16 +0000 (08:51 +0900)]
Remove preload thread (#456)
최종헌/MDE Lab(SR)/삼성전자 [Thu, 29 Dec 2022 01:59:31 +0000 (10:59 +0900)]
Changed the path of diagnostics tool (#455)
Change-Id: I68c3697ad22d727ff6b4cbdfdc875a1378321f6c