j-h.choi [Mon, 30 Dec 2019 04:56:55 +0000 (13:56 +0900)]
Modified to skip the assemblies in the TPA list when applying TAC
j-h.choi [Mon, 16 Dec 2019 07:54:39 +0000 (16:54 +0900)]
Add '--ni-reset-dir' option of dotnettool
j-h.choi [Wed, 27 Nov 2019 07:35:20 +0000 (16:35 +0900)]
Code cleanup
Woongsuk Cho [Thu, 5 Dec 2019 07:06:38 +0000 (16:06 +0900)]
add requires jsoncpp to support iot profile
Revert "A workaround to pre-compile internal methods" (#143)
This reverts commit
3abbd74537fea55a1003be2ae0f7bd58ce345d63.
Woongsuk Cho [Thu, 28 Nov 2019 03:42:18 +0000 (12:42 +0900)]
apply -Wl,-z,relro option in build flag for library build
Woongsuk Cho [Thu, 28 Nov 2019 01:45:09 +0000 (10:45 +0900)]
upgrade openssl from 1.0 to 1.1
j-h.choi [Wed, 20 Nov 2019 01:30:58 +0000 (10:30 +0900)]
Fixed Svace(memory_leak)
j-h.choi [Tue, 19 Nov 2019 05:51:41 +0000 (14:51 +0900)]
Fixed Svace issue
j-h.choi [Thu, 14 Nov 2019 01:54:40 +0000 (10:54 +0900)]
Fixed bug for TAC when upgrading application
j-h.choi [Tue, 29 Oct 2019 07:58:56 +0000 (16:58 +0900)]
Modify to enable TAC when restoring a database of TAC
Woongsuk Cho [Fri, 8 Nov 2019 06:03:46 +0000 (15:03 +0900)]
change candidate process name to dotnet-launcher
Woongsuk Cho [Wed, 6 Nov 2019 06:16:59 +0000 (15:16 +0900)]
apply launchpad-hydra refactoring
Mikhail Aksenov [Mon, 21 Oct 2019 12:21:50 +0000 (15:21 +0300)]
Fix setEnvFromFile()
Woongsuk Cho [Thu, 17 Oct 2019 01:33:02 +0000 (10:33 +0900)]
to avoid gdbus blocking issue, call storage api after process forking
Hyungju Lee [Wed, 16 Oct 2019 22:43:01 +0000 (07:43 +0900)]
Skip prelading on standalone mode
Change-Id: If53e8063e1f84edfc360c1d395856bf65a223d37
Woongsuk Cho [Wed, 16 Oct 2019 01:41:15 +0000 (10:41 +0900)]
use absoulte path for preloading list on hydra launcher
Woongsuk Cho [Tue, 15 Oct 2019 03:45:26 +0000 (12:45 +0900)]
svace : initialize hydracallback
Hyungju Lee [Mon, 14 Oct 2019 22:08:27 +0000 (07:08 +0900)]
Revert "turn off hydra-mode temporally. After fixing launchpad issue, it should be turned on again"
This reverts commit
612b1cd945501d15663c5c83c20f8d5799ca6cfd.
Konstantin Baladurin [Fri, 5 Jul 2019 15:35:15 +0000 (18:35 +0300)]
Preload NI dlls in hydra
j-h.choi [Fri, 11 Oct 2019 02:17:14 +0000 (11:17 +0900)]
Modify regenerate all tac file in dotnettool
Hyungju Lee [Mon, 14 Oct 2019 05:59:40 +0000 (14:59 +0900)]
Add ecore_init() at hydra adopter.loop_brgin callback
Change-Id: I6baa51356d68ea7527e248776a74f4408d2a6489
Woongsuk Cho [Thu, 10 Oct 2019 23:37:35 +0000 (08:37 +0900)]
turn off hydra-mode temporally. After fixing launchpad issue, it should be turned on again
Sangwook Kim [Tue, 8 Oct 2019 04:10:48 +0000 (13:10 +0900)]
A workaround to pre-compile internal methods
This patch is to avoid JIT compilation of the following methods on
setEnvironmentVariable() at launch time. These methods are not
subject to AOT compilation even if the system assemblies are fully-
NGENed and IBC-optimized.
- System.SpanHelpers:IndexOf(byref,ubyte,int)
- System.SpanHelpers:Contains(byref,ushort,int)
j-h.choi [Thu, 10 Oct 2019 05:40:43 +0000 (14:40 +0900)]
Code cleanup
Sangwook Kim [Tue, 8 Oct 2019 07:51:10 +0000 (16:51 +0900)]
Remove unnecessary code
Sangwook Kim [Tue, 8 Oct 2019 00:27:31 +0000 (09:27 +0900)]
Create a common root directory for managed csprojs
j-h.choi [Tue, 8 Oct 2019 00:41:00 +0000 (09:41 +0900)]
Change ownership of TAC database file in dotnettool
j-h.choi [Thu, 26 Sep 2019 01:01:20 +0000 (10:01 +0900)]
Added logic to recover when db file is corrupted.
Sangwook Kim [Fri, 20 Sep 2019 05:20:48 +0000 (14:20 +0900)]
Early init ecore regardless of the current mode
Gleb Balykov [Thu, 2 Nov 2017 17:01:51 +0000 (20:01 +0300)]
Support hydra mode
Kirill Frolov [Mon, 23 Sep 2019 18:46:11 +0000 (21:46 +0300)]
More verbose errors logging for libcoreclr.so
See https://github.sec.samsung.net/dotnet/home/issues/328
In case of EPERM error write error reason to log.
Woongsuk Cho [Mon, 26 Aug 2019 09:57:31 +0000 (18:57 +0900)]
fix bugs which found by coverity
Woongsuk Cho [Tue, 3 Sep 2019 05:16:42 +0000 (14:16 +0900)]
skip AOT if skip optimization option is enabled
Woongsuk Cho [Fri, 20 Sep 2019 01:03:46 +0000 (10:03 +0900)]
to prevent crash while process terminate on profiling mode, kill process immedately without coreclr_shutdown
Hyungju Lee [Wed, 18 Sep 2019 11:54:34 +0000 (20:54 +0900)]
SMACK Label on NamedLock directories
Change-Id: I669703cb1ac8d47b242c7b537235693cbb074ca1
Hyungju Lee [Tue, 13 Aug 2019 04:44:47 +0000 (13:44 +0900)]
Build error fix
Change-Id: Ib9d113e2e14e1aafa7e407e633a6229ac3ad6504
김상욱/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 8 Aug 2019 01:55:24 +0000 (10:55 +0900)]
Add switches for crossgen (#91)
* Refactor to use NI_FLAGS_* flags
* Enable --legacy and --instrument switches
* Change switch name to --compatibility
* Add more description and fix conditions
* Add a verbose flag
* Update descriptions
Gleb Balykov [Wed, 7 Aug 2019 11:36:51 +0000 (14:36 +0300)]
Reenable default base address for system dlls support
Gleb Balykov [Wed, 7 Aug 2019 11:36:19 +0000 (14:36 +0300)]
Support 3.0-preview7
j-h.choi [Wed, 7 Aug 2019 06:28:11 +0000 (15:28 +0900)]
Bug fixed. Break out of nested loop.
j-h.choi [Tue, 6 Aug 2019 00:50:38 +0000 (09:50 +0900)]
Nuget with no dependency applies TAC
j-h.choi [Mon, 5 Aug 2019 06:09:15 +0000 (15:09 +0900)]
Fixed svace (376818, 386676, 386690)
j-h.choi [Tue, 23 Jul 2019 23:59:08 +0000 (08:59 +0900)]
Verify that the assembly is in the TPA list.
j-h.choi [Mon, 22 Jul 2019 04:20:13 +0000 (13:20 +0900)]
Code refactoring
Hyungju Lee [Thu, 18 Jul 2019 11:07:40 +0000 (20:07 +0900)]
Create .gitignore
Change-Id: I7ddaaa37de167f783dadb3eeecb1fa14adf72338
j-h.choi [Thu, 18 Jul 2019 00:23:11 +0000 (09:23 +0900)]
Remove the commented code
j-h.choi [Wed, 17 Jul 2019 05:55:57 +0000 (14:55 +0900)]
Code cleanup of TAC
remove unused service script file by system part request (#84)
Keep api for backward-compatibility and code clean-up (#82)
"ni-common.h" contains exposed API set. That APIs already used in VD tools
So, the interface should not be changed for compatibility.
And the parameter "doGenUniqueBaseSystem" can be removed.
We decided to apply the base address to the TPA dll only.
So, we can decied whether applying the base address or not with TPA list checking.
.NETCore 3.0.0 preview doesnot contains "/BaseAddress" option for crossgen. (#81)
So, disable base_addr_support related code with temporal flag.
This flag will be removed after merging .NETCore 3.0.0 Release Candidate.
And remove change smack command for SYSTEM_BASE_ADDR_FILE
The base_addr_file is generated after first ni file generation.
So, smack change command is not necessary.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Tue, 16 Jul 2019 05:38:38 +0000 (14:38 +0900)]
Modify the problem that the original assembly is deleted (#80)
Gleb Balykov [Wed, 10 Jul 2019 13:26:09 +0000 (16:26 +0300)]
Move base address file from /usr to /opt/usr
Gleb Balykov [Tue, 9 Jul 2019 13:56:24 +0000 (16:56 +0300)]
Move defines to spec and set smack label on file with default base addresses
Gleb Balykov [Mon, 8 Jul 2019 10:45:32 +0000 (13:45 +0300)]
Review and rebase changes
Gleb Balykov [Thu, 4 Jul 2019 10:37:10 +0000 (13:37 +0300)]
Enable nitool support of unique default base address generation by default
This behavior can be changed manually in spec file: -DUNIQUE_DEFAULT_BASE_ADDR_SUPPORT
Gleb Balykov [Thu, 4 Jul 2019 10:30:19 +0000 (13:30 +0300)]
Enable generation of unique default base address for system dlls by default
This behavior can be changed manually in source code: nitool.cc -> doGenUniqueBaseSystem
Gleb Balykov [Fri, 28 Jun 2019 12:55:38 +0000 (15:55 +0300)]
Add nitool option to compile system libs with unique default base address
Gleb Balykov [Tue, 25 Jun 2019 17:21:22 +0000 (20:21 +0300)]
Add setup of COMPlus_UseDefaultBaseAddr environment variable
Merge pull request #72 from j-h-choi/tac_env
Add define for TAC in launcher_env.h
Merge pull request #77 from y-yamshchiko/iss154
add getRuntimeDir() output to nativeLibPath
Yaroslav Yamshchikov [Tue, 2 Jul 2019 12:45:02 +0000 (15:45 +0300)]
add getRuntimeDir() output to nativeLibPath
This directory contains .so's coreCLR is looking for and can not find
elsewhere. We think there should be this path.
Merge pull request #67 from g-balykov/add-setenvvariable-wrapper
Add Dotnet.Launcher.Environment.SetEnvironmentVariable wrapper
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 4 Jul 2019 00:44:57 +0000 (09:44 +0900)]
Merge branch 'tizen' into tac_env
Merge pull request #74 from dotnet/bug_fix_ni_pkg_dll_option
bug-fix : support TAC and .native_image on --pkg-dll option
Merge pull request #73 from dotnet/use_concatPath_for_ni_sub_dir
Change APP_NI_SUB_DIR from "/.native_image" to ".native_image"
Gleb Balykov [Tue, 25 Jun 2019 09:56:38 +0000 (12:56 +0300)]
Add Dotnet.Launcher.Environment.SetEnvironmentVariable wrapper for System.Environment.SetEnvironmentVariable, delegate for which could be created in dotnet-launcher and used to setup app specific env variable after coreclr_initialize
j-h.choi [Thu, 27 Jun 2019 06:12:06 +0000 (15:12 +0900)]
Add define for TAC in launcher_env.h
Woongsuk Cho [Wed, 3 Jul 2019 03:59:23 +0000 (12:59 +0900)]
bug-fix : support TAC and NI_SUB_DIR for nitool --pkg-dll option
Woongsuk Cho [Wed, 3 Jul 2019 02:16:00 +0000 (11:16 +0900)]
Change APP_NI_SUB_DIR from "/.native_image" to ".native_image"
and use concatPath() function to combine path for APP_NI_SUB_DIR
Woongsuk Cho [Thu, 20 Jun 2019 05:17:19 +0000 (14:17 +0900)]
Use AssemblyLoadContext.LoadFromAssemblyName instead of AssemblyLoadContext.LoadFromAssmblyPath
There are some problems with loading assembly using actual file path.
- It is unnatural to load assembly which is included in TPA using path.
- TPA is set to the absolute path of the assembly files.
The current implementation preloads assembly files with the path including the symlink.
It makes assembly reloading in the coreclr because the path is not same.
So, I changed implementation to load assemblies with assembly name.
In addition, I changed implementation that the assembly name is not duplicated
Merge pull request #71 from j-h-choi/tac_dir
[Bug-fix] Create '/opt/usr/dotnet' directory
j-h.choi [Thu, 27 Jun 2019 05:36:00 +0000 (14:36 +0900)]
[Bug-fix] Create '/opt/usr/dotnet' directory
Merge pull request #64 from j-h-choi/tizen
Modify build error
j-h.choi [Tue, 11 Jun 2019 09:40:01 +0000 (18:40 +0900)]
Modify build error
j-h.choi [Tue, 11 Jun 2019 09:15:14 +0000 (18:15 +0900)]
Merge branch 'j-h-choi-tizen' into tizen
j-h.choi [Tue, 11 Jun 2019 09:14:14 +0000 (18:14 +0900)]
Merge branch 'tizen' of https://github.sec.samsung.net/j-h-choi/dotnet-launcher into j-h-choi-tizen
j-h.choi [Tue, 11 Jun 2019 06:26:37 +0000 (15:26 +0900)]
Add 'Tizen Assembly Cache' feature
Woongsuk Cho [Tue, 11 Jun 2019 08:05:57 +0000 (17:05 +0900)]
remove build warning message
Merge pull request #61 from dotnet/use_app_ni_path
generate native image files in the .native_image folder for the pkg aot.
Merge branch 'tizen' into use_app_ni_path
Merge pull request #62 from dotnet/generate_coreLib_ni_when_install
Generate native image for System.Private.CoreLib.dll when dotnet-launcher package installed
j-h.choi [Mon, 10 Jun 2019 06:04:05 +0000 (15:04 +0900)]
Add comments for added function in utils.h
Woongsuk Cho [Wed, 5 Jun 2019 01:58:03 +0000 (10:58 +0900)]
- generate NI for System.Private.CoreLib.dll
- add error code for ni_common
Generate native image for System.Private.CoreLib.dll when dotnet-launcher package installed.
System.Private.CoreLib.dll should be AOTed for other dll's AOTC.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Fri, 7 Jun 2019 00:30:27 +0000 (09:30 +0900)]
Merge branch 'tizen' into tizen
Mikhail Kurinnoi [Mon, 3 Jun 2019 12:18:47 +0000 (15:18 +0300)]
Hardcode injection lib path.
Fix https://github.sec.samsung.net/dotnet/dotnet-launcher/issues/59
C# .dll with code for type preloading (#57)
* Preload common managed code
* Tizen.Init.dll for type preloading and caller code
Woongsuk Cho [Tue, 4 Jun 2019 01:54:33 +0000 (10:54 +0900)]
generate native image files in the .native_image folder for the pkg aot.
j-h.choi [Fri, 17 May 2019 00:47:33 +0000 (09:47 +0900)]
TAC support for memory optimization
Merge pull request #56 from dotnet/donot_remove_standalone_option_from_cmdline
bug-fix: --standalone option should be remained after chanig cmdline
Woongsuk Cho [Sun, 12 May 2019 23:08:33 +0000 (08:08 +0900)]
bug-fix: --standalone option should be remained after chanig cmdline
Merge pull request #54 from dotnet/change_cmdline_standalone_mode
Set full appid string to cmdline at standalone mode
Woongsuk Cho [Tue, 23 Apr 2019 01:38:10 +0000 (10:38 +0900)]
To prevent appid from getting truncated to cmdline in standalone mode, add padding
Merge pull request #52 from dotnet/use_runtime_dir_for_crossgen
Use runtime directory to get crossgen path instead of device api directory.
Woongsuk Cho [Mon, 15 Apr 2019 02:01:40 +0000 (11:01 +0900)]
Use runtime directory to get crossgen path instead of device api directory
crossgen executable is included in the coreclr package. So, it is more natural to use the coreclr directory.
In addition, we have to eliminate unnecessary errors which occured while removing coreclr-extra packages from the image.
Woongsuk Cho [Fri, 12 Apr 2019 01:25:33 +0000 (10:25 +0900)]
Bug-fix : plugin extra directory should be added for TPA searching directory.
Woongsuk Cho [Wed, 30 Jan 2019 03:40:52 +0000 (12:40 +0900)]
Add RTLD_NODELETE option to open plugin library.
Woongsuk Cho [Wed, 13 Feb 2019 06:29:49 +0000 (15:29 +0900)]
Add TPA cache to reduce application startup time.
It takes a lot of time to configure the TPA through file I/O
in the case of an application launching as standalone while device booting (like VD CSFS application).
To avoid this kind of overhead, add tool to create TPA cache and modify path_manager to get TPA list.
Woongsuk Cho [Mon, 8 Apr 2019 04:37:49 +0000 (13:37 +0900)]
Create directories for coreclr / corefx
- /tmp/.dotnet : lockfiles for IPC is created under /tmp/.dotnet directory
- /home/owner/.dotnet : intermediate cert and temporal cert chain is stored under /home/owner/.dotnet
Merge pull request #48 from dotnet/remove_dependnecy_from_multiByteToWideChar
remove dependency from multiByteToWideChar