Jeff Handley [Mon, 17 Aug 2020 21:53:18 +0000 (14:53 -0700)]
Remove ObsoletedInOSPlatformAttribute (#40945)
Juan Hoyos [Mon, 17 Aug 2020 21:52:17 +0000 (14:52 -0700)]
Fix patch skip + emulation on ARM64 (#40941)
* Fix patch skip + emulation on ARM64
Tomas Weinfurt [Mon, 17 Aug 2020 21:43:26 +0000 (14:43 -0700)]
use port in SPN calculation if not default (#40860)
* use port in SPN calculation if not default
* remove extra line
* fix internal error test failure
monojenkins [Mon, 17 Aug 2020 21:15:40 +0000 (17:15 -0400)]
[aot] Avoid emitting generic instances with vtype arguments on wasm to save space. (#40854)
Co-authored-by: vargaz <vargaz@users.noreply.github.com>
Adeel Mujahid [Mon, 17 Aug 2020 21:10:39 +0000 (00:10 +0300)]
Pass length to PathCharString.Append on SunOS (#40928)
Nikola Milosavljevic [Mon, 17 Aug 2020 20:33:33 +0000 (13:33 -0700)]
Do not build Targeting pack in source-build (#40870)
* Do not build Targeting pack in source-build
* Update src/installer/pkg/projects/Directory.Build.targets
Co-authored-by: Davis Goodin <dagood@users.noreply.github.com>
Co-authored-by: Davis Goodin <dagood@users.noreply.github.com>
Charles Stoner [Mon, 17 Aug 2020 19:59:34 +0000 (12:59 -0700)]
Test concurrent calls to CallSite.AddRule() and MoveRule() (#40858)
devsko [Mon, 17 Aug 2020 19:46:24 +0000 (21:46 +0200)]
Not all object converters return a JsonElement (#40921)
Co-authored-by: devsko <stefan.kohlmeister@outlook.de>
Mike McLaughlin [Mon, 17 Aug 2020 18:59:06 +0000 (11:59 -0700)]
Create dump in utility thread after m_LastThrownObjectHandle has been set (#40915)
The previous Windows stack overflow createdump trigger fix generated the dump before the m_LastThrownObjectHandle in the thread was set. This breaks SOS's !pe command.
Mateo Torres-Ruiz [Mon, 17 Aug 2020 18:53:38 +0000 (11:53 -0700)]
Normalize directory separator of paths in FileSpec (#40699)
Ben Adams [Mon, 17 Aug 2020 18:24:15 +0000 (19:24 +0100)]
Intrinsicify SpanHelpers.IndexOfAny(char,...) (#40729)
* Intrinsicify IndexOfAny(char,char)
* Intrinsicify IndexOfAny(char,char,char)
* Intrinsicify IndexOfAny(char,char,char,char)
* Intrinsicify IndexOfAny(char,char,char,char,char)
* Avoid movsx
* Feedback
* Super nit
Tomáš Rylek [Mon, 17 Aug 2020 18:23:38 +0000 (20:23 +0200)]
Reenable crossgen2smoke under GC stress (#40849)
This change removes the open-coded Crossgen2 execution
from the crossgen2smoke test project and switches it over
to use the normal CLRTest.Crossgen.targets logic for Crossgen2
invocation.
As the CLRTest.Crossgen.targets script already contains my fix
for the underlying issue - we were inadvertently running the
Crossgen2 compiler itself in GC stress mode and timing out
due to the long compilation times - we can now reenable
this test in GC stress mode.
Thanks
Tomas
Carol Eidt [Mon, 17 Aug 2020 18:12:26 +0000 (11:12 -0700)]
Fix GC liveness check in ByRefLocals test (#40857)
Fix #40751
Andrew Au [Mon, 17 Aug 2020 18:08:35 +0000 (11:08 -0700)]
Make the buffer size configurable for generational aware analysis (#40918)
Tomáš Rylek [Mon, 17 Aug 2020 17:55:22 +0000 (19:55 +0200)]
Block out the Runtime_40444 test failing in PR's + alpha-ordering (#40907)
asmichi [Mon, 17 Aug 2020 17:12:08 +0000 (02:12 +0900)]
Fix IndexOutOfRangeException in CallSite.MoveRule. (#39159)
Because synchronization of AddRule is omitted for performance,
concurrent invocations of AddRule may cause Rules to revert back to
an older (smaller) version, making i out of bounds.
Add a guard against that.
The reasoning behind no synchronization is that Rules is just a cache
after all. As long as the cache is in a consistent state, wrong updates
will only cause more cache misses or longer lookup time.
This performance loss is fine if we get more performance gain by
omitting synchronization.
Fix #36983
Sven Boemer [Mon, 17 Aug 2020 16:50:31 +0000 (09:50 -0700)]
Update linker warning numbers (#40865)
* Update linker warning numbers
In response to https://github.com/mono/linker/pull/1385.
This replaces the global suppressions for IL2006 with the warnings that it was split into.
* Add suppressions for linker tests
Eirik Tsarpalis [Mon, 17 Aug 2020 15:48:40 +0000 (16:48 +0100)]
Make Enumerable.Cast<T> and friends return IEnumerable<T?> (#40929)
* Make IEnumerable.Cast<TResult>() annotation admit nullable elements
* Make ImmutableArray cast method annotations report nullable elements
* fix System.Data nullability warnings
Adeel Mujahid [Mon, 17 Aug 2020 13:14:39 +0000 (16:14 +0300)]
Include <sys/sysctl.h> only for FreeBSD in pal.cpp (#40923)
Marco Rossignoli [Mon, 17 Aug 2020 12:51:16 +0000 (14:51 +0200)]
Implement ReadOnlySequence<T>.GetPosition(SequencePosition) (#771), fixes #27158
Anton Firszov [Mon, 17 Aug 2020 11:12:05 +0000 (13:12 +0200)]
Add NetworkError.TimedOut, rename Unknown to Other (#40841)
Adds NetworkError.TimedOut,
Renames Unknown to Other assuming my proposal gets accepted, will revert if not,
Improves exception message
Marie Píchová [Mon, 17 Aug 2020 11:10:32 +0000 (13:10 +0200)]
Renamed EventSources "Microsoft-"->"Private.InternalDiagnostics.".
David Wrighton [Mon, 17 Aug 2020 09:22:05 +0000 (02:22 -0700)]
Implement concept of unstable ABI into crossgen2 (#40820)
* Implement concept of unstable ABI into crossgen2
- Use for the Vector types based on current defined stability rules
- Will prevent compilation of methods with not yet stable abis, or calls to methods with said unstable apis
* Bugs
Layomi Akinrinade [Mon, 17 Aug 2020 01:38:51 +0000 (18:38 -0700)]
Ensure value-type handling converter created by factory can be used to (#40879)
handle corresponding nullable value types
Miha Zupan [Sun, 16 Aug 2020 23:49:59 +0000 (01:49 +0200)]
Add remaining System.Net.Http Telemetry (#40838)
* Add remaining System.Net.Http Telemetry
* Remove http20-streams-current-total
* Use consts instead of magic values
* Move ResponseHeadersBegin event closer to actual timestamp for HTTP2
Miha Zupan [Sun, 16 Aug 2020 23:14:51 +0000 (01:14 +0200)]
Disable HttpTelemetry for HTTP 3 requests (#40839)
* Disable HttpTelemetry for HTTP 3 requests
* Link to tracking issue for HTTP/3 Telemetry
Anton Lapounov [Sun, 16 Aug 2020 22:26:27 +0000 (15:26 -0700)]
Fix runtime crash on Linux ARM64 running in WSL (#40597)
getauxval(AT_HWCAP) returns zero on Linux ARM64 running in WSL1. Fall back to reading capabilities from /proc/cpuinfo in that case.
Geoff Kizer [Sun, 16 Aug 2020 22:21:34 +0000 (15:21 -0700)]
implement ConnectAsync overloads with CancellationToken on Socket and TcpClient (#40750)
* implement ConnectAsync overloads with CancellationToken on Socket and TcpClient
Tomáš Rylek [Sun, 16 Aug 2020 21:00:29 +0000 (23:00 +0200)]
Remove the coreClrRepoRoot YAML variable (#40893)
This variable was useful for a transitional period during the
consolidation of dotnet runtime repos; it has no value anymore
after the consolidation and its presence makes the YAML scripts
more complex and harder to reason about.
I propose removing it and replacing its uses with the open-coded
relative path to the coreclr repo which also makes parts of the
script logic more obvious. This was motivated by some of Nathan's
struggles when standing up WebAssembly tests in the runtime repo.
Thanks
Tomas
John Salem [Sun, 16 Aug 2020 19:29:15 +0000 (12:29 -0700)]
Make suspend the default port configuration (#40888)
* Make suspend the default port configuration
* ignore empty port addresses
* Appease MSVC
Eirik Tsarpalis [Sun, 16 Aug 2020 14:57:58 +0000 (15:57 +0100)]
Workaround for WSL1 process IO redirection bug (#40851)
* Workaround for WSL1 process IO redirection bug
* Update src/libraries/System.Diagnostics.Process/src/System/Diagnostics/Process.Unix.cs
Co-authored-by: Adeel Mujahid <adeelbm@outlook.com>
Co-authored-by: Adeel Mujahid <adeelbm@outlook.com>
Noah Falk [Sun, 16 Aug 2020 06:29:08 +0000 (23:29 -0700)]
Limit Debugger.Log() calls in EventSource (#40823)
* Limit Debugger.Log() calls in EventSource
Fixing #40799
Previously we would send a message via Debugger.Log() for event call to ReportOutOfBandMessage().
Now we only do it the first 16 times, then all errors after that are silent. This should alleviate performance
overhead from a scenarios with a large number of errors.
I made this change quickly via github to help out Bing. I have never compiled or tested it prior to the PR
but fingers crossed it appears simple enough that it has a decent chance to work : )
* Remove trailing whitespace
Co-authored-by: David Mason <davmason@microsoft.com>
Jan Kotas [Sat, 15 Aug 2020 21:19:32 +0000 (14:19 -0700)]
Delete unused files (#40889)
Brian Robbins [Sat, 15 Aug 2020 19:28:24 +0000 (12:28 -0700)]
Update PGO/IBC Data. (#40850)
Tammy Qiu [Sat, 15 Aug 2020 17:47:47 +0000 (13:47 -0400)]
[wasm] Add Timezone data generator as build task (#39913)
Add two build tasks:
1. DownloadTimeZoneData
2. CreateWasmBundle (given directory bundle files into a data archive)
Andy Gocke [Sat, 15 Aug 2020 15:52:41 +0000 (08:52 -0700)]
Change Assembly.GetFile(s) to throw when in-memory (#40593)
* Change Assembly.GetFile(s) to throw when in-memory
This is technically a breaking change, although a minor one, as the
previous behavior also threw an exception. The previous exception was
an IOException and this is an InvalidOperationException, so if users
were catching the previous exception they would not succeed now.
Fixes #40154
* Don't specify exception for GetFile when passed null
* Skip ImplementedInterfaces test on Mono
* Fix tests for running in memory
Co-authored-by: Dan Moseley <danmose@microsoft.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Marie Píchová [Sat, 15 Aug 2020 12:30:38 +0000 (14:30 +0200)]
Fix sync ConnectHelper.Connect (#40880)
David Cantú [Sat, 15 Aug 2020 10:10:31 +0000 (03:10 -0700)]
Reverts https://github.com/dotnet/corefx/pull/37583 ("Use clonefile for CopyFile, if available #37583") (#40753)
* Revert " Use clonefile for CopyFile, if available (dotnet/corefx#37583)"
This reverts commit
02ba75ad0fdda2e5f5c93a8e4e3ab6600d87fb99.
* Add unit test
* Disable tests failing in browser-wasm
Jared Parsons [Sat, 15 Aug 2020 09:44:43 +0000 (02:44 -0700)]
Fix annotation in DataTableReaderListnener (#40855)
When running the new nullable constructor analysis on runtime we
discovered what appears to be a missing annotation in
`DataTableReaderListener`.
Note: the second `if` check in the constructor seems like dead code.
It's checking for the field to be non-null before ever setting the field
to a value. Probably could be deleted.
Krzysztof Wicher [Sat, 15 Aug 2020 08:44:47 +0000 (10:44 +0200)]
Nullable: System.Xml, part 6 (XSLT minus XSLT.Runtime) (#40368)
* Nullable: System.Xml, part 6 (XSLT minus XSLT.Runtime)
* change Evaluate to take non-nullable
* apply pr feedback
* fix nullability merge conflicts
* apply feedback
Andrew Au [Sat, 15 Aug 2020 06:52:14 +0000 (23:52 -0700)]
Generational aware analysis based on environment variable. (#40332)
Ryan Lucia [Sat, 15 Aug 2020 04:18:38 +0000 (00:18 -0400)]
[mono] Make bundle filename changes netcore-only (#40845)
Santiago Fernandez Madero [Sat, 15 Aug 2020 03:58:30 +0000 (20:58 -0700)]
Move Font*, Image* and Margins converters to System.Drawing.Common and apply Unit and Name converter (#40825)
* Move Font, Image, and Margins converters to System.Drawing.Common
* Add FontUnit converter and FontName converter to Font properties
* Fix Unix tests
* Sort Compile items
Mike McLaughlin [Sat, 15 Aug 2020 03:45:52 +0000 (20:45 -0700)]
Fix stack overflow createdump triggering on Windows (#40869)
lindexi [Sat, 15 Aug 2020 03:37:53 +0000 (11:37 +0800)]
Ignore the executable file be deleted in Process Start (#40748)
Eugene Rozenfeld [Sat, 15 Aug 2020 02:33:05 +0000 (19:33 -0700)]
Fix TailCallStress mode. (#40698)
Improve validation of tail calls that are not tail-prefixed in the IL
but are marked as such because of TailCallStress. We now do the same
correctness validation in morph for such tail calls as we do for
implicit tail calls. That blocks tail calls when we have address-taken
locals, struct promoted params, and pinned vars.
Fixes #39398.
Fixes #39309.
Fixes #38892.
Fixes #38889.
Fixes #38887.
Fixes #37117.
Fixes #8017.
Steve Harter [Sat, 15 Aug 2020 02:28:40 +0000 (21:28 -0500)]
Change null handling in custom converters for backwards compat (#40859)
Layomi Akinrinade [Sat, 15 Aug 2020 02:24:36 +0000 (19:24 -0700)]
Throw when non-nullable struct converters indicate that they handle nullable structs (#40824)
* Wrap non-nullable struct converters in NullableOfT converter when
they explicitly handle nullable structs
* Throw exception instead of being nice
* Improve exception message
Jimmy Bogard [Sat, 15 Aug 2020 02:19:55 +0000 (21:19 -0500)]
Adding support for constrained open generics to DI (#39540)
* Porting changes from https://github.com/dotnet/extensions/pull/536
* Correcting reference
* Avoiding wrapping exception as there may be other reasons why closing the generic type fails other than constraint failure
Anirudh Agnihotry [Sat, 15 Aug 2020 01:28:46 +0000 (18:28 -0700)]
Fixing the allconfig build. (#40812)
* fixing all config build
* address feedback
Sung Yoon Whang [Sat, 15 Aug 2020 00:27:34 +0000 (17:27 -0700)]
Fix a deadlock in EventSource and CounterGroup (#40259)
* Fix a deadlock in CounterGroup and EventSource
* add more comments
* Add some more comments
* PR feedback
* Add comments
Jan Vorlicek [Sat, 15 Aug 2020 00:17:14 +0000 (02:17 +0200)]
Fix ilasm, ildasm, crossgen and others launch from PATH (#40791)
* Fix ilasm, ildasm and crossgen launch from PATH
When trying to launch ilasm, ildasm, crossgen or any tool using
PAL_Initialize that are on the current PATH just by their file names,
they were crashing with SIGSEGV.
The problem was that the current exe path was extracted incorrectly
in that case.
This change fixes the problem using the same methods that corerun
uses to figure out the current exe path.
* Add missing FreeBSD headers
* Reflect PR feedback
* Update src/coreclr/src/pal/src/init/pal.cpp
* Fix typo in Solaris version of the code
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Santiago Fernandez Madero [Sat, 15 Aug 2020 00:13:44 +0000 (17:13 -0700)]
Update analyzers and various fixes to be able to build with latest RC1 SDK (#40796)
* Disable net analyzers from the SDK and use them from package reference instead
* Fix build with new SDK and bump net analyzer version
* PR Feedback
Alexander Nikolaev [Sat, 15 Aug 2020 00:09:06 +0000 (02:09 +0200)]
Set MaxConcurrentStreams = 100 on new Http2Connection until first SETTINGS frame (#40779)
* Set MaxConcurrentStreams = 100 on new Http2Connection until first SETTINGS frame
* Update src/libraries/System.Net.Http/src/System/Net/Http/SocketsHttpHandler/Http2Connection.cs
Co-authored-by: Chris Ross <Tratcher@Outlook.com>
* - Setting infinite MaxConcurrentStreams fixed
- Test verifying new connection request queueing added
* More tests
* - const case fixed
- Outerloop attributed added
* ExtraStreams case fixed
Co-authored-by: Chris Ross <Tratcher@Outlook.com>
Sergey Aseev [Fri, 14 Aug 2020 22:07:24 +0000 (01:07 +0300)]
Move content type verification to a later stage (#40594)
* Move content type verification to a later stage
Fix #38713
* Rename ValidateContent to ValidateContentType
Fix #38713
* Get rid of content type check
* Add newline at end of the file
* Rename TestValidMediaTypes to TestVariousMediaTypes
Carlos Sanchez [Fri, 14 Aug 2020 20:04:28 +0000 (13:04 -0700)]
Ensure FileStatus and FileSystemEntry Hidden and ReadOnly attributes are retrieved the same way (#40641)
* Ensure FileStatus and FileSystemEntry IsHidden attribute is retrieved the same way
* Add missing check in public property FileSystemEntry.IsHidden. Address PR suggestions.
* Add tests for Hidden and ReadOnly attribute check for each platform. Split existing Skip attribute test into different platforms.
* Use _initialAttributes instead of Attributes for IsHidden. Add comment on top.
Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
Marie Píchová [Fri, 14 Aug 2020 19:14:56 +0000 (21:14 +0200)]
Fix timing issues with Http2_PingKeepAlive test. (#40788)
Alexander Nikolaev [Fri, 14 Aug 2020 19:13:41 +0000 (21:13 +0200)]
Flaky multiple HTTP/2 connection tests read full request body (#40844)
There are 2 flaky HTTP/2 tests verifying multiple connections feature which are randomly failing on CI, but not locally.
- Http2_MultipleConnectionsEnabled_ConnectionLimitNotReached_ConcurrentRequestsSuccessfullyHandled
- Http2_MultipleConnectionsEnabled_IdleConnectionTimeoutExpired_ConnectionRemovedAndNewCreated
It seems the failure is caused by not reading the request body. In current implementation, `Http2LoopbackServer` read only HEADERS frame via `ReadRequestHeaderAsync` and then immediately sends response. However, the client firstly completely sends headers and body and only then starting reading a response. Thus, it seems to get blocked sometimes if the server didn't read the full body. This PR fixes this by calling `ReadAndParseRequestHeaderAsync` instead of `ReadRequestHeaderAsync`.
Fixes #40436
Fixes #40115
Benjamin Bartels [Fri, 14 Aug 2020 18:53:59 +0000 (19:53 +0100)]
Applied BinaryPrimitives throughout CoreLib (#37582)
Ryan Lucia [Fri, 14 Aug 2020 18:50:16 +0000 (14:50 -0400)]
Handle potential null in ALC.ResolveSatelliteAssembly (#40817)
This was found on wasm, where assemblies are primarily loaded from a bundle rather than on the filesystem itself and return "" for Assembly.Location. This bug should affect desktop too if you have System.Private.CoreLib in the root of the file system (for whatever reason).
Vitek Karas [Fri, 14 Aug 2020 18:45:19 +0000 (11:45 -0700)]
Fix resolve_component_dependencies in single-file bundles (#40780)
`hostpolicy_resolve_component_dependencies` uses the same infrastructure in the host as when an application is started. Changes made to the host to support .NET 5 single-file modifies some of the code paths shared with the component dependency resolution and broke it.
When doing component dependency resolution the host must not consider the bundle in any way - all lookups have to go directly against the file system. This change modifies the initialization path to obey this rule.
Steve Harter [Fri, 14 Aug 2020 18:39:41 +0000 (13:39 -0500)]
Improve JSON serialization perf of longer strings on mono (#39733)
Steve Harter [Fri, 14 Aug 2020 18:35:26 +0000 (13:35 -0500)]
Increase method resolution test coverage for generics (#40657)
Steve Harter [Fri, 14 Aug 2020 18:33:23 +0000 (13:33 -0500)]
Remove unused method (#40658)
Ben Adams [Fri, 14 Aug 2020 17:41:13 +0000 (18:41 +0100)]
Improve SpanHelpers.IndexOfAny(byte,byte) (#40747)
* Improve SpanHelpers.IndexOfAny(byte,byte)
* Update src/libraries/System.Private.CoreLib/src/System/SpanHelpers.Byte.cs
Co-authored-by: Günther Foidl <gue@korporal.at>
* Update src/libraries/System.Private.CoreLib/src/System/SpanHelpers.Byte.cs
Co-authored-by: Dan Moseley <danmose@microsoft.com>
Co-authored-by: Günther Foidl <gue@korporal.at>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
Charles Stoner [Fri, 14 Aug 2020 17:30:59 +0000 (10:30 -0700)]
Fix EmitLoadValueIndirect() for SByte and Byte (#40741)
Brian Sullivan [Fri, 14 Aug 2020 17:22:26 +0000 (10:22 -0700)]
Add the GT_MEMORYBARRIER operator to the set of instructions that need to record a ByrefExposed memory havoc impact in loops (#40821)
This prevents the hoisting of memory loads out of such a loop
Anton Firszov [Fri, 14 Aug 2020 17:08:47 +0000 (19:08 +0200)]
Replace SocketsHttpConnectionFactory with SocketsConnectionFactory (#40506)
Introduces SocketsConnectionFactory from #40044 without the factory methods for NetworkStream and IDuplexPipe
Drew Scoggins [Fri, 14 Aug 2020 16:54:16 +0000 (09:54 -0700)]
Increase timeout (#40808)
* Update timeout for workitems to 15 hours for internal wasm run
* Add NoInterpreter and NoWASM to exlusion for WASM runs
Santiago Fernandez Madero [Fri, 14 Aug 2020 16:48:43 +0000 (09:48 -0700)]
Publish transport packages that are not runtime packages (#40801)
Maryam Ariyan [Fri, 14 Aug 2020 16:12:43 +0000 (09:12 -0700)]
Remove obsoleted InplaceStringBuilder (#40743)
Tom Deseyn [Fri, 14 Aug 2020 15:24:32 +0000 (17:24 +0200)]
Console.Unix: make Console.OpenStandardInput Stream aware of terminal (#39192)
* Console.Unix: make Console.OpenStandardInput Stream aware of terminal
When performing OpenStandardInput against a terminal, perform Reads on a
line-by-line basis and perform appropriate processing and echoing.
* Add test
* fix manual tests for Windows
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
Adam Sitnik [Fri, 14 Aug 2020 15:15:04 +0000 (17:15 +0200)]
Dispose Process.Threads and Process.Modules when disposing and refreshing Process (#40681), fixes #40281
* Dispose Process.Threads when disposing and refreshing Process
* Dispose Process.Modules when disposing and refreshing Process
Carol Eidt [Fri, 14 Aug 2020 15:10:34 +0000 (08:10 -0700)]
Fix ValidateResult for StoreSelectedScalar tests (#40800)
Fix #40542
Maxim Lipnin [Fri, 14 Aug 2020 15:07:25 +0000 (18:07 +0300)]
Small library test clean up (#40833)
Adam Sitnik [Fri, 14 Aug 2020 15:03:40 +0000 (17:03 +0200)]
skip the hanging System.Diagnostics.Tests.ProcessWaitingTests.SingleProcess_WaitAfterExited test on Mono (#40837)
Jan Kotas [Fri, 14 Aug 2020 14:56:52 +0000 (07:56 -0700)]
Remove unnecessary SwitchToThread on resume from suspend (#40790)
Resuming from suspend often calls SwitchToThread at this callstack:
KERNELBASE!SwitchToThread [minkernel\kernelbase\thread.c @ 3599]
CoreCLR!__SwitchToThread+0x214 [D:\runtime\src\coreclr\src\vm\hosting.cpp @ 313]
CoreCLR!Thread::RareDisablePreemptiveGC+0x35b [D:\runtime\src\coreclr\src\vm\threadsuspend.cpp @ 2359]
CoreCLR!JIT_RareDisableHelperWorker+0xc8 [D:\runtime\src\coreclr\src\vm\jithelpers.cpp @ 4895]
CoreCLR!JIT_RareDisableHelper+0x14 [D:\runtime\src\coreclr\src\vm\amd64\AsmHelpers.asm @ 233]
test!ILStubClass.IL_STUB_PInvoke()+0xac
This leads to odd effect where GC finishes, threads that are waiting for GC to finish will start running and immediately give up the scheduling quantum to each other. Once everybody gives up the quantum to each other, the regular execution resumes.
This change moves the SwitchToThread call to be called only when RareDisablePreemptiveGC needs to reloop to do more work.
Zoltan Varga [Fri, 14 Aug 2020 14:56:22 +0000 (10:56 -0400)]
[runtime] Update cmake build. (#40811)
* Update cmake build.
* .
* Auto detect ENABLE_NETCORE.
Ryan Lucia [Fri, 14 Aug 2020 13:42:29 +0000 (09:42 -0400)]
[mono] Improve MonoImage filename handling for bundled images (#40818)
Maxim Lipnin [Fri, 14 Aug 2020 06:36:12 +0000 (09:36 +0300)]
Clean up the System.Net.Requests library tests because the respective library is PNSE on browser wasm (#40766)
Maxim Lipnin [Fri, 14 Aug 2020 06:35:47 +0000 (09:35 +0300)]
Re-enable one HttpContentTest library test on browser wasm (#40762)
Levi Broderick [Fri, 14 Aug 2020 06:07:42 +0000 (23:07 -0700)]
Forbid AllocateValueType from allocating byref like types on the heap (#40632)
David Cantú [Fri, 14 Aug 2020 05:19:23 +0000 (22:19 -0700)]
/p:Configuration must use "Release" instead of "release" (#40816)
I am not very familiar with Unix so I was not aware why I was having below error:
```
/home/jozky/runtime/.dotnet/sdk/5.0.100-preview.8.20362.3/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(379,5): error NETSDK1112: The runtime pack for Microsoft.NETCore.App.Runtime.browser-wasm was not downloaded. Try running a NuGet restore with the RuntimeIdentifier 'browser-wasm'. [/home/jozky/runtime/src/libraries/System.IO.FileSystem/tests/System.IO.FileSystem.Tests.csproj]
```
I tried running `dotnet restore --runtime browser-wasm` as suggested by the error but that didn't help.
The correct thing to do was to pass `Release` (with upper case R) to `Configuration` parameter.
cc @safern
Jeff Handley [Fri, 14 Aug 2020 03:21:13 +0000 (20:21 -0700)]
Mark DirectoryServices CAS APIs as Obsolete (#40756)
* Mark DirectoryServices CAS APIs as Obsolete (using an internal attribute)
* Refactor how the internal ObsoleteAttribute is pulled in and applied
* Include internal ObsoleteAttribute for all netcoreapp (not just netcoreapp2)
* Simplify netstandard check for the internal ObsoleteAttribute
* Remove IncludeInternalObsoleteAttribute from Directory.Build.props
Miha Zupan [Fri, 14 Aug 2020 03:05:27 +0000 (05:05 +0200)]
Add telemetry to System.Net.Security (#40108)
* Add telemetry to System.Net.Security
* Remove leftover test code
* Add Assert to ensure new counters are added with new TLS versions
* Add Telemetry.IsEnabled() check
* Rename opened connections to opened sessions
* Add all-sessions-open and all-handshake-duration counters
* Rename all- counters to all-tls-
Jan Kotas [Fri, 14 Aug 2020 02:41:56 +0000 (19:41 -0700)]
Make sure Debug.Fail and other similar methods have frame on the stack (#40807)
Debugger treats them in a special way
Partial fix for #40793
Thays Grazia [Fri, 14 Aug 2020 01:43:30 +0000 (22:43 -0300)]
[wasm] Changing debugger wasm test (#40792)
* Change test to run the same test on mono/mono and on dotnet/runtime.
* Update src/mono/wasm/debugger/DebuggerTestSuite/Tests.cs
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
John Salem [Fri, 14 Aug 2020 01:11:50 +0000 (18:11 -0700)]
Rebrand Diagnostics Server to DiagnosticPort (#40499)
* renames customer facing portions of the diagnostics server to diagnostic ports
* adds the DOTNET_DiagnosticPorts and DOTNET_DefaultDiagnosticPortSuspen environment variables for configuring diagnostic ports
* fixes some pre-existing issues:
* corrects the scope of the runtime identifier guid so it is the same variable across translation units
* protects the window of time between startup resuming and EventPipe::FinishInitialization for doing EventPipe::Disable.
Ryan Lucia [Fri, 14 Aug 2020 00:55:44 +0000 (20:55 -0400)]
[mono] Adjust wasm gitignore and Makefile (#40797)
John Salem [Fri, 14 Aug 2020 00:52:34 +0000 (17:52 -0700)]
Add GetProcessEnvironment command to diagnostics server (#40556)
Levi Broderick [Fri, 14 Aug 2020 00:35:16 +0000 (17:35 -0700)]
Add matchLength-returning APIs to CompareInfo (#40752)
Jose Perez Rodriguez [Thu, 13 Aug 2020 23:54:32 +0000 (16:54 -0700)]
Supressing NETStandard.Library package dependency for NET461 dependency groups (#40733)
Egor Bogatov [Thu, 13 Aug 2020 22:23:07 +0000 (01:23 +0300)]
[Browser] fallback to Invariant mode if mono_wasm_load_icu_data wasn't called (#40765)
* don't try to locate icudt.dat automatically if mono_wasm_load_icu_data wasn't called
Key Kim [Thu, 13 Aug 2020 21:58:13 +0000 (06:58 +0900)]
Refactor redundant validating datetime length logic in System.Text.Json (#40759)
* Remove redundant datetime length check
TryParseDateTimeOffset always called after calling
IsValidDateTimeOffsetParseLength function that checks datetime length is
more than 10. (yyyy-mm-dd)
* Resolve review that adding Assert
* Remove duplicated assert from JsonHelpers
* Add too short datetime invalid test cases
Santiago Fernandez Madero [Thu, 13 Aug 2020 21:55:47 +0000 (14:55 -0700)]
Baseline API Compat errors due to attributes mismatch (#40787)
Prashanth Govindarajan [Thu, 13 Aug 2020 21:17:00 +0000 (14:17 -0700)]
Get index of first non ascii byte (#39506)
* Arm64 intrinsics for GetIndexOfFirstNonAsciiByte
* sq
* sq
* sq
* sq
* Last bit of formatting
* Fix bug
* Better naming
* Compiler complains
* Fix compile error
* Address nit
* Different variables
* sq
* Nits
Alexander Köplinger [Thu, 13 Aug 2020 21:13:51 +0000 (23:13 +0200)]
Cleanup old corefx/coreclr GitHub issue links (#40286)
Replace them with the current URL after the redirect.
Similar to https://github.com/dotnet/runtime/pull/2063.
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
Egor Chesakov [Thu, 13 Aug 2020 21:09:33 +0000 (14:09 -0700)]
Unconditionally expand some of the Vector128 methods on x86/x64 in zapinfo.cpp (#40688)
Steve Harter [Thu, 13 Aug 2020 21:06:53 +0000 (16:06 -0500)]
Remove disabled test since original issue will not be fixed (#40795)
Mikel Blanchard [Thu, 13 Aug 2020 20:28:28 +0000 (13:28 -0700)]
System.Diagnostics.Activity Perf Improvement Part 2 (#40544)