github-actions[bot] [Tue, 12 Jul 2022 17:55:23 +0000 (12:55 -0500)]
[mono] Avoid calling mono_metadata_type_hash () on the container class in mono_generic_class_hash (). (#71764)
If a class inherits from a generic instance instantiated with itself, then its possible
for mono_generic_class_hash () to be called while the container class is not fully
initialized yet, i.e. byval_arg.type is 0. This would cause the generic class to change
its hash.
Fixes https://github.com/dotnet/runtime/issues/71424.
Co-authored-by: Zoltan Varga <vargaz@gmail.com>
Thays Grazia [Tue, 12 Jul 2022 17:55:10 +0000 (14:55 -0300)]
Backport 71436 (#71731)
Miha Zupan [Tue, 12 Jul 2022 17:52:18 +0000 (10:52 -0700)]
format correctly chuncked response with Content-Length header (#69016) (#70744)
Co-authored-by: Badre BSAILA <54767641+pedrobsaila@users.noreply.github.com>
Carlos Sanchez [Thu, 7 Jul 2022 18:26:33 +0000 (11:26 -0700)]
Remove GeneratePackageOnBuild missed on branding PR (#71743)
Matt Mitchell [Wed, 6 Jul 2022 14:30:11 +0000 (07:30 -0700)]
Update branding to 6.0.8 (#71668)
William Godbe [Wed, 22 Jun 2022 09:50:04 +0000 (02:50 -0700)]
Revert Arcade update & Workload Manifest change (#71110)
* Revert "[release/6.0] Update dependencies from dotnet/arcade dotnet/llvm-project (#68871)"
This reverts commit
3e0c89b69f70690579d2f1c0a04577a674ef1cf6.
* Revert "Update workloads with Arcade improvements (#71046)"
This reverts commit
cd19e8bf35d18cef6f30d896313cbeb1be2a06dd.
* Update global.json
Jacques Eloff [Tue, 21 Jun 2022 17:56:18 +0000 (10:56 -0700)]
Update workloads with Arcade improvements (#71046)
Dan Moseley [Mon, 20 Jun 2022 15:52:06 +0000 (09:52 -0600)]
[tests] Extend partial disablement of SkippingHiddenFiles (#65280) (#70763)
Co-authored-by: Mitchell Hwang <16830051+mdh1418@users.noreply.github.com>
dotnet-maestro[bot] [Fri, 17 Jun 2022 01:11:42 +0000 (18:11 -0700)]
[release/6.0] Update dependencies from dotnet/arcade dotnet/llvm-project (#68871)
* Update dependencies from https://github.com/dotnet/arcade build
20220504.3
Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.GenAPI , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.GenFacades , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk
From Version 2.5.1-beta.22161.1 -> To Version 2.5.1-beta.22254.3
* Update dependencies from https://github.com/dotnet/arcade build
20220511.7
Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.GenAPI , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.GenFacades , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk
From Version 2.5.1-beta.22161.1 -> To Version 2.5.1-beta.22261.7
* Update dependencies from https://github.com/dotnet/llvm-project build
20220513.3
runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools
From Version 11.1.0-alpha.1.21416.1 -> To Version 11.1.0-alpha.1.22263.3
* Update dependencies from https://github.com/dotnet/arcade build
20220614.7
Microsoft.DotNet.ApiCompat , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
From Version 6.0.0-beta.22161.1 -> To Version 6.0.0-beta.22314.7
* Use VS preview pools for Windows build jobs, and remove Windows version number from queue name
* Revert "Use VS preview pools for Windows build jobs, and remove Windows version number from queue name"
This reverts commit
5478426a751b299afd19f81e15abf033f699d76c.
* Update dependencies from https://github.com/dotnet/llvm-project build
20220616.1
runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools
From Version 11.1.0-alpha.1.21416.1 -> To Version 11.1.0-alpha.1.22316.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: carlossanlop <1175054+carlossanlop@users.noreply.github.com>
github-actions[bot] [Wed, 15 Jun 2022 02:45:48 +0000 (20:45 -0600)]
Fix Assembly.LoadFrom resolver (#70537)
Path.GetFullPath fails on empty path. Check for empty requestor path earlier.
Fixes #67802
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Matt Mitchell [Tue, 14 Jun 2022 18:06:49 +0000 (11:06 -0700)]
Merge pull request #70741 from vseanreesermsft/internal-merge-6.0-2022-06-14-1031
Merging internal commits for release/6.0
Sean Reeser [Tue, 14 Jun 2022 17:31:57 +0000 (10:31 -0700)]
Merge commit '
7cca709db2944a09b4db6ca7b20c457ff260fb5a' into internal-merge-6.0-2022-06-14-1031
Omair Majid [Tue, 14 Jun 2022 04:18:36 +0000 (00:18 -0400)]
Add Fedora 37 RID (#65392)
Fedora 37 has now started development, and the distribution now
identifies itself as Fedora 37 instead of Fedora 36:
https://fedorapeople.org/groups/schedule/f-37/f-37-key-tasks.html
Co-authored-by: Carlos Sanchez <1175054+carlossanlop@users.noreply.github.com>
Stephen Toub [Tue, 14 Jun 2022 02:51:11 +0000 (22:51 -0400)]
Fix async handle leak when sync RandomAccess read/write on async handle fails (#69956) (#70591)
* Fix async handle leak when sync RandomAccess read/write on async handle fails
* Use UnsafeAllocateNativeOverlapped in GetNativeOverlappedForAsyncHandle
This isn't invoking user code and it's entirely for synchronous operations; there's no reason it needs to capture ExecutionContext.
github-actions[bot] [Mon, 13 Jun 2022 18:11:09 +0000 (11:11 -0700)]
Do not add x86 host to PATH on 64-bit machines (#70299)
Co-authored-by: Nikola Milosavljevic <nikolam@microsoft.com>
Koundinya Veluri [Sat, 11 Jun 2022 02:33:24 +0000 (19:33 -0700)]
[6.0] Modify thread pool thread counting to be a bit more defensive (#70479)
* [6.0] Modify thread pool thread counting to be a bit more defensive
- Port of https://github.com/dotnet/runtime/pull/70478 to 6.0
- An unexpected underflow in one or more thread counts can lead to a large number of threads to be created continually
- Prevented underflows in changes to thread counts, such that following an unexpected underflow, subsequent paired increments and decrements would avoid repeating the underflow
- Verified by creating an unexpected underflow in the debugger
* Address feedback
Steve Pfister [Fri, 10 Jun 2022 23:20:59 +0000 (19:20 -0400)]
[release/6.0][iOS] Grab the default timezone using native API (#70288)
Backport of https://github.com/dotnet/runtime/pull/70149
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
Manish Godse [Fri, 10 Jun 2022 21:11:49 +0000 (14:11 -0700)]
Switch the ClientPre Helix queues to Client (#70570)
github-actions[bot] [Thu, 9 Jun 2022 23:15:50 +0000 (16:15 -0700)]
JIT: Abandon loop search if we are about to walk off end of the bbNext chain (#69525)
In #69323 the 6.0.4 jit caused an AV because it walked off the end of the
bbNext chain during `optFindNaturalLoops`.
Analysis of a customer-provided dump showed that `MakeCompactAndFindExits`
might fail to find an expected loop block and so walk the entire bbNext chain
and then fall off the end. Details from the dump suggested that this happened
because a prior call to `MakeCompactAndFindExits` had moved most but not all of
a loop's blocks later in bbNext order, leaving that loop's bottom block earlier
in the bbNext chain then it's top. This ordering was unexpected.
I cannot repro this failure. The customer was using PGO and it's likely that
earlier PGO-driven block reordering contributed to this problem by interleaving
the blocks from two loops. We can recover the root method PGO schema from the
dump, but applying this is insufficient to cause the problem. This method does
quite a bit of inlining so it's likely that some inlinee PGO data must also be
a contributing factor.
At any rate, we can guard against this case easily enough, and simply abandon
recognition of any loop where we fail to find an expected loop block during
the bbNext chain walk.
Co-authored-by: Andy Ayers <andya@microsoft.com>
Andy Ayers [Thu, 9 Jun 2022 23:14:09 +0000 (16:14 -0700)]
[Release/6.0] JIT: fix interaction of GDV and boxing (#60355) (#69630)
* JIT: fix interaction of GDV and boxing (#60355)
In #56126 we disabled GDV if the object being boxed came from a call with a
hidden return buffer pointer.
Fix this and enable GDV for these cases by inserting the box allocation statements
before the call.
* add test case
github-actions[bot] [Thu, 9 Jun 2022 23:12:36 +0000 (16:12 -0700)]
Fix address adjustment in bundle unmap for macos universal binaries (#69689)
Co-authored-by: vsadov <8218165+VSadov@users.noreply.github.com>
Vladimir Sadov [Thu, 9 Jun 2022 23:11:03 +0000 (16:11 -0700)]
Fix singlefile on OSX ARM64 (#68845) (#69930)
* Same alignment in the bundle on OSX as on Linux
* Extra VA gap between section in casse we run from sf bundle
* Rename prevSectionEnd -> prevSectionEndAligned and make it aligned.
* Suppress assert for now on OSX
Elinor Fung [Thu, 9 Jun 2022 23:09:22 +0000 (16:09 -0700)]
[release/6.0] Host error message updates (#70059)
* Update error messages for framework and SDK resolution failure
Partial backport of #67022
* Update error message for runtime not found
Backport of #67564
Tom Deseyn [Thu, 9 Jun 2022 23:06:02 +0000 (01:06 +0200)]
OpenSslX509ChainProcessor: ignore NotSignatureValid on last element. (#70343)
vseanreesermsft [Wed, 8 Jun 2022 20:35:41 +0000 (13:35 -0700)]
Update branding to 6.0.7 (#70372)
* Update branding to 6.0.7
* Remove GeneratePackageOnBuild from all projects which added it in 6.0.6
Co-authored-by: Carlos Sanchez <1175054+carlossanlop@users.noreply.github.com>
dotnet-bot [Tue, 17 May 2022 16:50:32 +0000 (16:50 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Tue, 17 May 2022 16:33:54 +0000 (09:33 -0700)]
[release/6.0] add RID for Alpine 3.16 (#68925)
* add RID for Alpine 3.16
* fix packaging
Co-authored-by: wfurt <tweinfurt@yahoo.com>
dotnet-bot [Mon, 16 May 2022 22:22:20 +0000 (22:22 +0000)]
Merge in 'release/6.0' changes
Steve Pfister [Mon, 16 May 2022 22:11:47 +0000 (18:11 -0400)]
[release/6.0] Add windows runtime packs as a workload (#69393)
Backport of https://github.com/dotnet/runtime/pull/68981
At certain points in time internally, the sdk will rev its version and insert into VS. It's at this point the sdk version will be ahead of the runtime version as we have not published anything into nuget. In MAUI and WinUI scenarios, this creates a bit of a pickle as the sdk will try to download a new version of the windows runtime pack, but it will not be available.
To get around this limitation, we are introducing a workload that will be inserted into VS where you can optionally install Windows runtime packs.
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
Juan Hoyos [Mon, 16 May 2022 22:09:18 +0000 (15:09 -0700)]
[release/6.0] Restore FP pairs when unwinding in ARM64 (#69359)
* Add regression test
* Restore FP pairs when unwinding in ARM64
* Disable windows arm64 version of the test
dotnet-bot [Mon, 16 May 2022 19:46:44 +0000 (19:46 +0000)]
Merge in 'release/6.0' changes
Alexander Köplinger [Mon, 16 May 2022 19:35:56 +0000 (21:35 +0200)]
[release/6.0] Docker fixes for the enterprise linux testing pipeline (#68913)
* attempt to fix up EnterpriseTests (#65981)
* attemp to fix up EnterpriseTests
* fix text
* increase timoeout on build step
* fix temeout
* add jobs
* update job
* fix formating
* fix name
* update server check
* restore original resolver before tests
* fix path
* experiment
(cherry picked from commit
9174037cc6b58de847c9c88b7dcceef2b4fda440)
* upgrade docker to get clang9 to prevent coreclr crashes (#68311)
(cherry picked from commit
edb9c498889b85ba2be015afca2f2cc73c30355c)
* Use Docker images from mcr.microsoft.com in EnterpriseTests (#68875)
We started getting warnings in the build about using images from docker directly, see https://docs.opensource.microsoft.com/tools/nuget_security_analysis/container_registry_analysis/
The image from dotnet-buildtools-prereqs-docker can be used instead.
(cherry picked from commit
bafae1b8e6f1c6ce9798acf013b015a60def3381)
Co-authored-by: Tomas Weinfurt <tweinfurt@yahoo.com>
github-actions[bot] [Mon, 16 May 2022 19:32:52 +0000 (12:32 -0700)]
[release/6.0] Detect the default locale name during startup on Apple platforms (#68934)
* Detect the default locale name during startup on Apple platforms
This change adds a function to lookup the current NSLocale and extract the language + country code to load into ICU by default. Previously, we would defer to uloc_getDefault in ICU, which would return a value we would ignore (en_US_POSIX) and result in falling back to invariant mode.
Fixes https://github.com/dotnet/runtime/issues/68321
* Link in foundation and address feedback
* Link in foundation in coreclr
* Check LANG env variable first
* Defer to icu first, since it's looking for LANG and certain values.
* #ifdef not #if
* PR feedback
* Remove redundant string replace
* pal_locale.m needs to be in a different location than upstream
* cmake tweak to make sure foundation gets linked in
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
dotnet-bot [Mon, 16 May 2022 18:33:41 +0000 (18:33 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Mon, 16 May 2022 18:19:04 +0000 (11:19 -0700)]
Fix memory leak at AssemblyLoadContext unload (#69334)
I have found there was a small memory leak when unloading
AssemblyLoadContext. A customer had a quite extreme testing case that
ran millions of iterations of creating an AssemblyLoadContext, loading
some assemblies into it and then unloading it. After 80 million
iterations on their machine with 8GB memory, the testing app was getting
out of memory.
Using PerfView, I was able to locate the source of the leak. It was a
missing destruction of the Module::m_pJitInlinerTrackingMap.
Co-authored-by: Jan Vorlicek <janvorli@microsoft.com>
dotnet-bot [Mon, 16 May 2022 18:07:43 +0000 (18:07 +0000)]
Merge in 'release/6.0' changes
Juan Hoyos [Mon, 16 May 2022 17:51:43 +0000 (10:51 -0700)]
[release/6.0] Prevent debugger deadlock with code versioning logic (#68367)
* Release lock to prevent deadlock with code versioning logic when tracing a stub
* Update debugger.cpp
dotnet-bot [Sat, 14 May 2022 04:05:15 +0000 (04:05 +0000)]
Merge in 'release/6.0' changes
John Salem [Sat, 14 May 2022 03:52:35 +0000 (20:52 -0700)]
Minimal version of #67150 (#68876)
dotnet-bot [Sat, 14 May 2022 00:51:06 +0000 (00:51 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Sat, 14 May 2022 00:36:21 +0000 (17:36 -0700)]
JIT: fix scalability issue in redundant branch optimizer (#68972)
In methods with long skinny dominator trees and lots of redundant branches
the jit can spend too much time trying to optimize the branches.
Place a limit on the number of redundant branches with matching VNs that
the jit will consider for a given branch.
Fixes #66067.
Co-authored-by: Andy Ayers <andya@microsoft.com>
dotnet-bot [Fri, 13 May 2022 07:15:29 +0000 (07:15 +0000)]
Merge in 'release/6.0' changes
David Mason [Fri, 13 May 2022 07:01:13 +0000 (00:01 -0700)]
[release/6.0] Deadlock mitigation for debugging (#69121)
* WIP
* add logging
Update ceemain.cpp
dotnet-bot [Tue, 10 May 2022 22:41:52 +0000 (22:41 +0000)]
Merge in 'release/6.0' changes
Carlos Sanchez [Tue, 10 May 2022 22:27:55 +0000 (15:27 -0700)]
Merge pull request #69151 from vseanreesermsft/internal-merge-6.0-2022-05-10-1208
Merging internal commits for release/6.0
Sean Reeser [Tue, 10 May 2022 19:09:10 +0000 (12:09 -0700)]
Merge commit '
70ae3df4a6f3c92fb6b315afc405edd10ff38579' into internal-merge-6.0-2022-05-10-1208
dotnet-bot [Thu, 5 May 2022 22:08:25 +0000 (22:08 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Thu, 5 May 2022 21:57:05 +0000 (14:57 -0700)]
[release/6.0] [mono] Preserve FirstChanceExceptionEventArgs ctor (#68265)
* [mono] Preserve FirstChanceExceptionEventArgs ctor
The runtime is creating the exception so we need to preserve it.
See https://github.com/xamarin/xamarin-android/issues/6626
* PR feedback: use DynamicDependencyAttribute instead
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
dotnet-bot [Thu, 5 May 2022 17:51:45 +0000 (17:51 +0000)]
Merge in 'release/6.0' changes
Jakob Botsch Nielsen [Thu, 5 May 2022 17:44:03 +0000 (19:44 +0200)]
Fix passing too small args for PUTARG_STK on macOS arm64 ABI (#68113)
Backport of #68108
github-actions[bot] [Thu, 5 May 2022 17:41:33 +0000 (10:41 -0700)]
[release/6.0] Do not reset assigned interval twice (#68327)
* Do not reset the assignedInterval again
* Add test case
Co-authored-by: Kunal Pathak <Kunal.Pathak@microsoft.com>
github-actions[bot] [Thu, 5 May 2022 17:41:05 +0000 (10:41 -0700)]
[release/6.0] Fix JIT using too wide indirections when returning small structs (#68379)
* Fix JIT using too wide indirections when returning small structs
Fix #58874
Fix #64802
Fix #68157
* Add test
* Run jit-format
* Do not leak in case of merged tests
* Small test nit
* Another test nit
* Final test nit
* Make test compile
Co-authored-by: Jakob Botsch Nielsen <jakob.botsch.nielsen@gmail.com>
Jan Vorlicek [Thu, 5 May 2022 17:39:44 +0000 (19:39 +0200)]
[release/6.0] Unloadability bugs fixes (#68674)
* [Release/6.0] Port unloadability fixes
This change ports two unloadability fixes for issues found by a
customer.
* #68550 that adds reference between native
`LoaderAllocator`s of two collectible `AssemblyLoadContexts` when one of
them is used to resolve assembly using the other one. This reference
ensures that the one that provides the resolved `Assembly` isn't
collected before the one that uses it.
* #68336 that adds a missing lock around `m_LoaderAllocatorReferences`
iteration during assembly load context destruction.
* Remove breaking change part
The change in main has added an exception in case a collectible
`Assembly` is resolved into a non-collectible `AssemblyLoadContext`.
Although that is incorrect, there are cases when it would work. So the
added exception is a breaking change that I think we likely don't want
to get into 6.0
Mukund Raghav Sharma (Moko) [Thu, 5 May 2022 17:38:07 +0000 (10:38 -0700)]
[release/6.0] Fixed the yp_spin_count_unit to be a factor of the original_spin_count_unit rather than a continually increasing value (#68881)
* Fixed the yp_spin_count_unit to be a factor of the original_spin_count_unit rather than a continually increasing value
* Fixed type of the spin counts
dotnet-bot [Thu, 5 May 2022 00:56:40 +0000 (00:56 +0000)]
Merge in 'release/6.0' changes
Carlos Sanchez [Thu, 5 May 2022 00:44:25 +0000 (17:44 -0700)]
[release/6.0] Disable ZipFile_Unix.UnixCreateSetsPermissionsInExternalAttributes (#68867)
Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
dotnet-bot [Wed, 4 May 2022 20:25:23 +0000 (20:25 +0000)]
Merge in 'release/6.0' changes
Andy Ayers [Wed, 4 May 2022 20:12:23 +0000 (13:12 -0700)]
[release/6.0] JIT: fix bug where a gc struct is not zero initialized (#68050)
Port of #67825 to release/6.0.
dotnet-bot [Wed, 4 May 2022 19:51:10 +0000 (19:51 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Wed, 4 May 2022 19:37:54 +0000 (12:37 -0700)]
[release/6.0] Fix in-process decoding of DateTime in EventSource (#68352)
* Fix in-process decoding of DateTime in EventSource
* Update eventlistener test to validate DateTime is correctly decoded in-process
* Use UTC time everywhere
Co-authored-by: John Salem <josalem@microsoft.com>
dotnet-bot [Wed, 4 May 2022 17:56:59 +0000 (17:56 +0000)]
Merge in 'release/6.0' changes
Tomas Weinfurt [Wed, 4 May 2022 17:44:36 +0000 (10:44 -0700)]
[release/6.0] add support for parsing Unified TLS hello (#68425)
* add support for parsing Unified TLS hello
* feedback from review
* update comment
Egor Bogatov [Wed, 4 May 2022 17:43:47 +0000 (19:43 +0200)]
[release/6.0] Handle parameterless ctors in structs in STJ's ReflectionEmitMemberAccessor (#67901)
* [release/6.0] backport #62989 "Handle parameterless ctors in structs in STJ's ReflectionEmitMemberAccessor"
* Add explicit parameterless constructors in the tests
* Update ConstructorTests.ParameterMatching.cs
* address feedback
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
dotnet-bot [Wed, 4 May 2022 02:42:20 +0000 (02:42 +0000)]
Merge in 'release/6.0' changes
Elinor Fung [Wed, 4 May 2022 02:29:11 +0000 (19:29 -0700)]
[release/6.0] Use x64 directory if running x64 process on arm64 apphost (#68583)
* Use x64 directory if running x64 process on arm64 apphost
Backport of #59890
* Fix is_emulating_x64 on Windows (#68671)
Co-authored-by: Mateo Torres-Ruiz <mateoatr@users.noreply.github.com>
dotnet-bot [Wed, 4 May 2022 00:03:06 +0000 (00:03 +0000)]
Merge in 'release/6.0' changes
Tom McDonald [Tue, 3 May 2022 23:50:19 +0000 (19:50 -0400)]
Disable profiler multiple test against JIT and GC stress runs (#68501)
dotnet-bot [Tue, 3 May 2022 23:37:20 +0000 (23:37 +0000)]
Merge in 'release/6.0' changes
dotnet-bot [Tue, 3 May 2022 23:36:39 +0000 (23:36 +0000)]
Merge in 'release/6.0' changes
Radek Zikmund [Tue, 3 May 2022 23:34:22 +0000 (16:34 -0700)]
[Release/6.0] Backport test fixes (#68332)
* Resolve System.Net.Security.Tests.LoggingTest SkipTestException failure (#65322)
* improve Tls12 detection on Windows7 (#67935)
* disable Tls 1.0 and 1.1 tests on new Windows (#68083)
* Don't throw from RemoteExecutor on SkipTestExceptions (#65105)
* update SSL tests to deal better with disabled protocols (#65120)
* update SSL tests to deal better with disabled protocols
* Improve detection of Null encryption on Windows
* update expectation for Mismatched protocols
* update detection
* wrap win32 exception
* update ProtocolMismatchData sets
* remove debug print
* final cleanup
* generate mismatch data
* avoid SslProtocols.Default
Co-authored-by: Miha Zupan <mihazupan.zupan1@gmail.com>
Co-authored-by: Tomas Weinfurt <tweinfurt@yahoo.com>
github-actions[bot] [Tue, 3 May 2022 23:31:53 +0000 (16:31 -0700)]
[release/6.0] Fix the logic for regions detection (#67995)
* Fix the logic for regions detection
* Fix region check name on .NET 6
Co-authored-by: Andrew Au <andrewau@microsoft.com>
Co-authored-by: Juan Sebastian Hoyos Ayala <juan.hoyos@microsoft.com>
Mike McLaughlin [Tue, 3 May 2022 23:31:22 +0000 (18:31 -0500)]
Add single-file debugging to DBI (#67934)
Add new CoreCLRCreateCordbObjectEx2 API that takes the DAC module path instead of
assuming the DAC module is in the same directory as DBI.
github-actions[bot] [Tue, 3 May 2022 23:25:28 +0000 (16:25 -0700)]
[release/6.0] Don't cache commandline in coreclr diagnostics server (#63356)
* Don't cache commandline in coreclr diagnostics server
* Validate behavior of ProcessInfo command before and after suspension point (#63382)
This only applies to CoreCLR Unix processes.
* Apply feedback to prevent rare race
* Add InterlockedCompareExchange to ensure we only leak once if ever
Co-authored-by: John Salem <josalem@microsoft.com>
vseanreesermsft [Tue, 3 May 2022 23:24:53 +0000 (16:24 -0700)]
Update branding to 6.0.6 (#68825)
* Update branding to 6.0.6
* Reset GeneratePackageOnBuild in OOB packages.
Co-authored-by: Carlos Sanchez <1175054+carlossanlop@users.noreply.github.com>
dotnet-bot [Wed, 13 Apr 2022 16:47:07 +0000 (16:47 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Wed, 13 Apr 2022 16:36:31 +0000 (09:36 -0700)]
[release/6.0] Fix cancel in PipeReader.ReadAtLeastAsync (#66870)
* Fix cancel in PipeReader.ReadAtLeastAsync
* Add missing GeneratePackageOnBuild and bump version
Co-authored-by: Brennan <brecon@microsoft.com>
Co-authored-by: Carlos Sanchez <1175054+carlossanlop@users.noreply.github.com>
Eirik Tsarpalis [Wed, 13 Apr 2022 16:33:23 +0000 (17:33 +0100)]
Ensure serializer reflection-dependency sentinel is accurate (#67104)
* Ensure serializer reflection-dependency sentinel is accurate
* update servicing version
Co-authored-by: Carlos Sanchez <1175054+carlossanlop@users.noreply.github.com>
dotnet-bot [Wed, 13 Apr 2022 16:04:32 +0000 (16:04 +0000)]
Merge in 'release/6.0' changes
dotnet-bot [Wed, 13 Apr 2022 16:01:15 +0000 (16:01 +0000)]
Merge in 'release/6.0' changes
Bruce Forstall [Wed, 13 Apr 2022 16:00:10 +0000 (09:00 -0700)]
[release/6.0] Disable test Runtime_56953 (#67604)
This avoids a JIT assert in jitstress test runs.
We don't intend to fix the underlying issues in release/6.0 branch.
Tracking: https://github.com/dotnet/runtime/issues/67603
Jose Perez Rodriguez [Wed, 13 Apr 2022 15:57:39 +0000 (08:57 -0700)]
Upgrading the version of Package Validation used in the repo to reduce Build flakiness when loading Roslyn (#66635)
* Upgrading the version of Package Validation used in the repo to reduce Build flakiness when loading Roslyn
* remove workaround
Co-authored-by: Dan Moseley <danmose@microsoft.com>
dotnet-bot [Wed, 13 Apr 2022 15:55:32 +0000 (15:55 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Wed, 13 Apr 2022 15:55:05 +0000 (08:55 -0700)]
[release/6.0] [Mono] Fix uninitialized vtable bug (#67759)
* Add functional test
* Fix vtable setup
* Add suggested code changes
* Improve arguments ordering
Co-authored-by: Simon Rozsival <simon@rozsival.com>
github-actions[bot] [Wed, 13 Apr 2022 15:54:04 +0000 (08:54 -0700)]
[wasm] Bundle net472 dependencies for MonoAOTCompiler task (#67757)
.. same as what we do for WasmAppBuilder, and MonoTargets.
Without this, it would work if msbuild/VS happened to load the expected
System.Reflection.Metadata assembly before loading the task. But break
when it didn't. And that breakage happens with 7.0*p3 with VS 17.2 .
msbuild, and VS break with:
```
The "MonoAOTCompiler" task failed unexpectedly.System.IO.FileNotFoundException: Could not load file or assembly 'System.Reflection.Metadata, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a' or one of its dependencies.
The system cannot find the file specified.File name: 'System.Reflection.Metadata, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a'
at MonoAOTCompiler.FilterAssemblies(IEnumerable`1 assemblies)
at MonoAOTCompiler.ExecuteInternal()
at MonoAOTCompiler.Execute()
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()
WRN: Assembly binding logging is turned OFF.To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.Note: There is some performance penalty associ ated with assembly bind failure logging.To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
```
These are the files bundled for net472 now:
```
tasks/net472/Microsoft.Bcl.AsyncInterfaces.dll
tasks/net472/Microsoft.Build.dll
tasks/net472/Microsoft.Build.Framework.dll
tasks/net472/Microsoft.Build.Tasks.Core.dll
tasks/net472/Microsoft.Build.Utilities.Core.dll
tasks/net472/Microsoft.NET.StringTools.dll
tasks/net472/Microsoft.VisualStudio.Setup.Configuration.Interop.dll
tasks/net472/MonoAOTCompiler.dll
tasks/net472/MonoAOTCompiler.dll.config
tasks/net472/System.Buffers.dll
tasks/net472/System.Collections.Immutable.dll
tasks/net472/System.Configuration.ConfigurationManager.dll
tasks/net472/System.Memory.dll
tasks/net472/System.Numerics.Vectors.dll
tasks/net472/System.Reflection.Metadata.dll
tasks/net472/System.Resources.Extensions.dll
tasks/net472/System.Runtime.CompilerServices.Unsafe.dll
tasks/net472/System.Security.AccessControl.dll
tasks/net472/System.Security.Permissions.dll
tasks/net472/System.Security.Principal.Windows.dll
tasks/net472/System.Text.Encodings.Web.dll
tasks/net472/System.Text.Json.dll
tasks/net472/System.Threading.Tasks.Dataflow.dll
tasks/net472/System.Threading.Tasks.Extensions.dll
tasks/net472/System.ValueTuple.dll
```
Issue: https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1520454
Co-authored-by: Ankit Jain <radical@gmail.com>
github-actions[bot] [Wed, 13 Apr 2022 15:50:45 +0000 (08:50 -0700)]
Add arm64 cross-arch msi installers (#67265)
Expanding architecture support
Co-authored-by: Jeremy Koritzinsky <jekoritz@microsoft.com>
Aleksey Kliger (λgeek) [Wed, 13 Apr 2022 15:49:03 +0000 (11:49 -0400)]
Add a --aot-lazy-assembly-load command line option to load assemblies… (#67024) (#67103)
* Add a --aot-lazy-assembly-load command line option to load assemblies referenced by AOT images lazily.
Note that this requires the assemblies used at AOT time to exactly match
the assemblies loaded at runtime, otherwise the runtime will abort
when it loads the mismatching reference.
* Handle the options added by options.h in mono_jit_parse_options ().
Co-authored-by: Zoltan Varga <vargaz@gmail.com>
Natalia Kondratyeva [Wed, 13 Apr 2022 15:48:34 +0000 (17:48 +0200)]
Add additional trace to HttpConnectionPool (#66958)
dotnet-bot [Wed, 13 Apr 2022 15:47:56 +0000 (15:47 +0000)]
Merge in 'release/6.0' changes
Johan Lorensson [Wed, 13 Apr 2022 15:43:47 +0000 (17:43 +0200)]
Fix unaligned UTF16 string read in collect tracing EventPipe command. (#66828)
Collect tracing 2 EventPipe command triggers an unaligned UTF16 string
read that could cause a SIGBUS on platforms not supporting unalinged
reads of UTF16 strings (so far only seen on 32-bit ARM Linux CI machine).
On CoreCLR this could even cause a unalinged int read due to
optimizations used in UTF8Encoding::GetByteCount.
github-actions[bot] [Wed, 13 Apr 2022 15:43:18 +0000 (08:43 -0700)]
Fix macOS ARM64 stack overflow detection (#66612)
We were incorrectly using exception_data_type_t instead of mach_exception_data_type_t
in the PAL due to a missing change when we have added support for ARM64 macOS.
The wrong type was 32 bit and it caused the address of a hardware exception to have
the upper 32 bits cut off. That prevented us from detecting stack overflow correctly.
Co-authored-by: Jan Vorlicek <janvorli@microsoft.com>
Miha Zupan [Wed, 13 Apr 2022 15:36:55 +0000 (15:36 +0000)]
Merged PR 21350: [MSRC 69437] Apply MaxResponseHeadersLength limit for trailing headers
dotnet-bot [Wed, 13 Apr 2022 15:36:33 +0000 (15:36 +0000)]
Merge in 'release/6.0' changes
github-actions[bot] [Wed, 13 Apr 2022 15:35:53 +0000 (08:35 -0700)]
[release/6.0] Add dynamic shim for SSL_CTX_set_options and SSL_set_options (#67145)
* Add dynamic shim for SSL_CTX_set_options
This works around ABI breaking change made between OpenSSL 1.1 and 3.0 where argument type and return type was changed from unsigned long to uint64_t, which caused issues on arm32 architectures with OpenSSL 3.0 installed.
* Fix typo
* Update src/native/libs/System.Security.Cryptography.Native/pal_ssl.c
Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
* Update src/native/libs/System.Security.Cryptography.Native/pal_ssl.c
Co-authored-by: Tomas Weinfurt <tweinfurt@yahoo.com>
* Code review feedback
Co-authored-by: Radek Zikmund <r.zikmund.rz@gmail.com>
Co-authored-by: Radek Zikmund <32671551+rzikm@users.noreply.github.com>
Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
Co-authored-by: Tomas Weinfurt <tweinfurt@yahoo.com>
github-actions[bot] [Wed, 13 Apr 2022 15:34:50 +0000 (08:34 -0700)]
[release/6.0] Fix DNS cancellation deadlock (#67291)
* tests
* remove lock
* comments, outerloop
* use Volatile.Write
* test comments
* SafeHandle to avoid use-after-free race condition
* use NativeMemory APIs
* Disable DnsGetHostEntry_PostCancelledToken_Throws on Win7
* Fix compilation
Co-authored-by: Anton Firszov <antonfir@gmail.com>
Co-authored-by: Radek Zikmund <radekzikmund@microsoft.com>
Miha Zupan [Wed, 13 Apr 2022 15:31:54 +0000 (17:31 +0200)]
Avoid issuing connection attempts for already cancelled requests (#66992) (#67226)
* Avoid issuing connection attempts for already canceled requests
* Cancelled => Canceled
* Guard SocketsHttpHandler tests under SocketsHttpHandler.IsSupported
dotnet-bot [Wed, 13 Apr 2022 15:31:40 +0000 (15:31 +0000)]
Merge in 'release/6.0' changes
Jonathan Giannuzzi [Wed, 13 Apr 2022 15:24:01 +0000 (16:24 +0100)]
[release/6.0] Load R2R images on osx-arm64 according to Apple's guidelines (#67438)
* Fix Compiler::impImportNewObjArray on osx-arm64
* Reject R2R images containing calls to CORINFO_HELP_NEW_MDARR
* Load R2R images on osx-arm64 according to Apple's guidelines
Jeremy Barton [Wed, 13 Apr 2022 15:23:24 +0000 (08:23 -0700)]
[release/6.0] Ignore non-X509 certificates in SignedCms (#67462)
* Ignore non-X509 certificates in SignedCms
This allows for AttributeCertificateV1/AttributeCertificateV2/OtherCertificate
entries in the SignedCms without causing a decode error. That data is not presented
to callers via the SignedCms object, but the behavior is consistent with SignedCms on
.NET Framework and its underlying WinCryptMsg counterpart.
* Add packaging changes for servicing
Bruce Forstall [Wed, 13 Apr 2022 15:20:55 +0000 (08:20 -0700)]
[release/6.0] Fix loop cloning of array of struct with array field (#67496)
Loop cloning needs to parse what morph creates from GT_INDEX nodes
to determine if there are array accesses with bounds checks that
could potentially be optimized. For jagged array access, this can
be a "comma chain" of bounds checks and array element address expressions.
For a case where an array of structs had a struct field, such as
`ValueTuple<int[], int>[]`, cloning was confusing the expression
`a[i].Item1[j]` for the jagged array access `a[i][j]`.
The fix here is to keep track of the type of the `GT_INDEX` node that is
being morphed, in the `GT_BOUNDS_CHECK` node that is created for it.
(This is the only thing cloning parses, to avoid the need to parse
the very complex trees morph can create.) This type is then checked
when parsing the "comma chain" trees. If a non-`TYP_REF` is found (such
as a `TYP_STRUCT` in the above example), no more levels of array indexing
are considered. (`TYP_REF` is what an array object would have, for a jagged
array.)
Fixes #66254.
github-actions[bot] [Wed, 13 Apr 2022 15:19:31 +0000 (08:19 -0700)]
[release/6.0] [AOT] Don't set the 'CorrectedSynthesize' flag in the objc_imageinfo section. (#67534)
* [AOT] Don't set the 'CorrectedSynthesize' flag in the objc_imageinfo section.
According to Apple's headers, it's not used anymore, and ignored.
However, with Xcode 13.3, it seems Apple has re-used this value for something
else, and it's causing warnings in the linker:
> ld: warning: '[...]/arm64/Xamarin.iOS.dll.o' was built with class_ro_t pointer signing enabled, but previous .o files were not
Fixes https://github.com/mono/mono/issues/21450.
Ref: https://opensource.apple.com/source/objc4/objc4-818.2/runtime/objc-abi.h.auto.html
* Don't set the 'CorrectedSynthesize' flag when using LLVM either.
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>