-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Comparing changes
Open a pull request
base repository: dotnet/runtime
base: 7b0227d5
head repository: dotnet/runtime
compare: 8755447e
- 17 commits
- 101 files changed
- 16 contributors
Commits on Aug 25, 2022
-
Fix building CLR test tree (#74547)
* If we're only building Pri-0 tests, don't try to AOT compile Pri-1 tests. `_WillCLRTestProjectBuild` is the property that checks for that. * Targeting pack references get injected in a way that the compiler targets don't see. The compiler targets are written for publish scenarios but we're not doing a publish. Fixes #68394
Configuration menu - View commit details
-
Copy full SHA for 3eccadf - Browse repository at this point
Copy the full SHA 3eccadfView commit details -
Working with StressLogAnalyzer I found yet another issue where we are…
… missing an initialization when re-running the analysis - when you add a format string to look for via the -f option, and then later remove it, it's not actually removed, but is still found. (#74491) missing an initialization when re-running the analysis - when you add a format string to look for via the -f option, and then later remove it, it's not actually removed, but is still found. The fix is simply to clear the s_interestingStringTable above the fixed entries.
Configuration menu - View commit details
-
Copy full SHA for 79e3cd0 - Browse repository at this point
Copy the full SHA 79e3cd0View commit details -
[Android] gRPC client tests (#73060)
* WIP: add gRPC tests * Fix AOT and trimming * WIP * Implement IncludeNetworkSecurityConfig * Use IncludeNetworkSecurityConfig * Fix gRPC test * Avoid git checkout * Remove unnecessary code * WIP: start working on CI configuration * Remove WinHttpHandler * Fix problem with SSL * Change server host * Setup CI (#1) * Get Docker container building & exported via test build * Changes * Add missing pfx certificate * changes * cleanup Co-authored-by: Simon Rozsival <[email protected]> * Use tls * Update yml * Revert changes to the mono Android sample app * Bump android image version * Bump image version * Enable TLS * Remove hardcoded package versions * Update package versions * Update package versions * Rename pipeline * Move interop tests website dependencies versions to Versions.props * Add cred scan supression for the interop test server private key * Fix licenses * Remove dependencies * Fix path to Versions.props * Remove unnecessary dependency version * Fix building docker image * Change pfx password Co-authored-by: Jo Shields <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7a4b0af - Browse repository at this point
Copy the full SHA 7a4b0afView commit details -
Enable caching of writeable W^X mappings (#74526)
This change enables caching of the last used writeable mapping for W^X. It was originally disabled by an ifdef, but after we've turned W^X on by default, performance tests have shown a regression in some regex tests. I have investigated those and found that they do excessive amount of jitting (around 50000 methods). Enabling the caching of the last used writeable mapping fixes the regression completely. The caching implementation was present in the sources ever since I've implemented the W^X stuff, but if was disabled by an ifdef. So this change just defines the related symbol and enables the code. The caching basically just keeps a writeable mapping after unmapping until the next mapping request arrives, so it gives an opportunity to reuse it in case of series of mappings of sequential range of executable memory, which happens e.g. in the case mentioned.
Configuration menu - View commit details
-
Copy full SHA for 16414dd - Browse repository at this point
Copy the full SHA 16414ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5764faf - Browse repository at this point
Copy the full SHA 5764fafView commit details -
Only stack allocate when marshalling Utf8 arguments (#74478)
* Only stack allocate when marshalling Utf8 arguments Fixes #74394. * Review feedback
Configuration menu - View commit details
-
Copy full SHA for 442c137 - Browse repository at this point
Copy the full SHA 442c137View commit details -
Configuration menu - View commit details
-
Copy full SHA for ebdb045 - Browse repository at this point
Copy the full SHA ebdb045View commit details -
Switch to unified fully managed Overlapped implementation (#74532)
This change was attempted before in dotnet/coreclr#23029 and rejected due to performance impact. Things have changed since then that makes it feasible now. Sockets and file I/O do not use pinning feature of Overlapped anymore. They pin memory on their own using `{ReadOnly}Memory<T>.Pin` instead. It means that the async pinned handles are typically not pinning anything. The async pinned handles come with some extra overhead in this common use case. Also, they cause confusion during GC behavior drill downs. This change removes the support for async pinned handles from the GC: - It makes the current most common Overlapped use cheaper. It is hard to measure the impact of eliminating async pinned handles exactly since they are just a small part of the total GC costs. The unified fully managed implementation enabled simplificication of the implementation and reduced allocations. - It gets rid of confusing async pinned handles behavior. The change was actually motivated by a recent discussion with a customer who was surprised by the async pinned handles not pinning anything. They were not sure whether it is expected behavior or whether it is a bug in the diagnostic tools. Micro-benchmarks for pinning feature of Overlapped are going to regress with this change. The regression in a micro-benchmark that runs Overlapped.Pack/Unpack in a tight loop is about 20% for each pinned object. If there is 3rd party code still using the pinning feature of Overlapped, Overlapped.Pack/Unpack is expected to be a tiny part of the end-to-end async flow and the regression for end-to-end scenarios is expected to be in noise range.
1Configuration menu - View commit details
-
Copy full SHA for 4cf2e3b - Browse repository at this point
Copy the full SHA 4cf2e3bView commit details -
Add NuGet package for System.Runtime.Serialization.Schema (#74533)
System.Runtime.Serialization.Schema isn't getting a NuGet package created for it because it doesn't set IsPackable=true.
Configuration menu - View commit details
-
Copy full SHA for 3e7d596 - Browse repository at this point
Copy the full SHA 3e7d596View commit details -
Add server1.pfx to CredScanSuppressions.json (#74559)
**BYPASS_SECRET_SCANNING**
Configuration menu - View commit details
-
Copy full SHA for 0e13ffa - Browse repository at this point
Copy the full SHA 0e13ffaView commit details -
[wasm] Move all the wasm jobs from runtime-staging to runtime (#73596)
* [wasm] Move stable jobs from runtime-staging to runtime - library tests: windows - AOT tests: windows - Debugger tests (chrome): windows, and linux - Wasm.Build.Tests: windows * Move last remaining wasm-firefox tests to runtime too * Move firefox debugger tests to runtime-extra-platforms * Fix browser-eventpipe build ``` src/mono/sample/wasm/browser-eventpipe/Program.cs(80,13): error IDE0074: (NETCORE_ENGINEERING_TELEMETRY=Build) Use compound assignment ```
Configuration menu - View commit details
-
Copy full SHA for e130a89 - Browse repository at this point
Copy the full SHA e130a89View commit details -
Configuration menu - View commit details
-
Copy full SHA for f26c91b - Browse repository at this point
Copy the full SHA f26c91bView commit details -
Disable distributed transaction tests on ARM (#74572)
To unblock CI build failures, works around #74170
Configuration menu - View commit details
-
Copy full SHA for 7a8af49 - Browse repository at this point
Copy the full SHA 7a8af49View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8ba720c - Browse repository at this point
Copy the full SHA 8ba720cView commit details -
Bump Kerberos.NET version in tests (#74554)
Fixes tests on big endian platforms.
Configuration menu - View commit details
-
Copy full SHA for 4871358 - Browse repository at this point
Copy the full SHA 4871358View commit details -
Attempt to reduce test build cost (#74471)
An evaluation of the cost of "Copy native test components to test output folder" indicates that there are 2 major performance bottlenecks in that routine. There are the findings I had 1. The routine spends significant time loading every test project into msbuild to determine what to do. This processing takes as much as 400ms per test on hardware which has slow IO performance. 2. On Unix platforms, when producing the test script binaries, we make the scripts executable by using chmod. This ALSO takes as long as 400ms on the slowest platforms. 3. Actually copying the native binaries around is extremely cheap and fast, and the cost to generate the test scripts is also fairly low. This change addresses both of these issues. 1. For the issue that we look into each test project to determine what to do, I observed that for tests which are pri1 tests, when running a pri0 only job, we don't need to even examine any of the tests marked as exclusively pri1. This is a bit of a hack, but it does seem to work quite well. 2. For the chmod issue, since we don't actually maintain the executable bit when sent to helix, I set an msbuild property when generating the scripts during the "Copy native test components to test output folder" to just not set that flag. Results: Mac OSX test run jobs take ~8 minutes to run this portion of the build, down from ~27 minutes. Performance improvements are visible on all architectures/OS pairings, but they aren't as dramatic.
Configuration menu - View commit details
-
Copy full SHA for 8d4364c - Browse repository at this point
Copy the full SHA 8d4364cView commit details -
Disable ConnectWithRevocation_ServerCertWithoutContext_NoStapledOcsp …
Configuration menu - View commit details
-
Copy full SHA for 8755447 - Browse repository at this point
Copy the full SHA 8755447View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 7b0227d5...8755447e