Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Manual] Merge release/8.0-staging into release/8.0 #97065

Merged
merged 71 commits into from
Jan 17, 2024

Conversation

carlossanlop
Copy link
Member

Merge commit

carlossanlop and others added 30 commits November 27, 2023 14:57
…/8.0-to-release/8.0-staging

[automated] Merge branch 'release/8.0' => 'release/8.0-staging'
…ild 20231127.1 (dotnet#95279)

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 8.0.0-alpha.0.23570.2 -> To Version 8.0.0-alpha.0.23577.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Remove jit-format from outerloop pipeline in .NET 8 branch.

jit-format currently only works well in main. It is also not useful in servicing branches.
…y)Memory converters. (dotnet#95325)

* Add JSON null support for the built-in (ReadOnly)Memory converters.

* Address feedback

---------

Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
…lazily. (dotnet#95364)

Co-authored-by: Tarek Mahmoud Sayed <tarekms@microsoft.com>
…otnet#95410)

This reverts commit 46c8a66.

Co-authored-by: Natalia Kondratyeva <knatalia@microsoft.com>
…/8.0-to-release/8.0-staging

[automated] Merge branch 'release/8.0' => 'release/8.0-staging'
Co-authored-by: Thays Grazia <thaystg@gmail.com>
…95505)

* Fix missing symbols for mono-aot-cross

With dotnet#83903 the path to the .pdb symbol file changed to include a `PDB` subdirectory.
We didn't adjust the path in mono.proj and didn't notice it because of an `Exists()` check that made this a no-op.

While doing this I noticed we were also not including the .dwarf/.dbg symbols for non-Windows platforms.

Fix the path and added the missing non-Windows symbols

* Exclude .dwarf/.dbg when generating UnixFilePermissions.xml

These files are split out from the main .nupkg so they won't exist there which causes issues when nuget tries to apply the permissions during workload install.
Co-authored-by: Parker Bibus <parkerbibus@microsoft.com>
…05.4 (dotnet#95661)

Microsoft.SourceBuild.Intermediate.emsdk , Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100
 From Version 8.0.1-servicing.23571.1 -> To Version 8.0.1-servicing.23605.4

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Looking at the data for the last 30 days a successful or failed WasmBuildTests job took between 70-90 minutes.
When Helix queues are overloaded the 120min timeout can result in canceled builds which is especially true on servicing queues which first need to spin up VMs so bump the timeout to 180mins.

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Co-authored-by: Milos Kotlar <kotlarmilos@gmail.com>
…ge (dotnet#95123)

* Catch exception when subscribing to NetworkChange

* Code review feedback

---------

Co-authored-by: Radek Zikmund <r.zikmund.rz@gmail.com>
… on a dynamic method (dotnet#95271)

Co-authored-by: Ivan Povazan <ivan.povazan@gmail.com>
…otnet#95788)

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

* Update dependencies from https://github.com/dotnet/runtime-assets build 20231207.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23566.1 -> To Version 8.0.0-beta.23607.1

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
dotnet#95821)

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231208.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23608.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20231214.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23525.2 -> To Version 3.11.0-beta1.23614.1

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…ild 20231211.2 (dotnet#95858)

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 8.0.0-alpha.0.23577.1 -> To Version 8.0.0-alpha.0.23611.2

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…09.2 (dotnet#95825)

Microsoft.SourceBuild.Intermediate.emsdk , Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100
 From Version 8.0.1-servicing.23605.4 -> To Version 8.0.1-servicing.23609.2

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* fix dotnet#95491

* Remove change to sample

---------

Co-authored-by: pavelsavara <pavel.savara@gmail.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Parker Bibus <parkerbibus@microsoft.com>
…ild 20231218.2 (dotnet#96135)

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 8.0.0-alpha.0.23611.2 -> To Version 8.0.0-alpha.0.23618.2

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…5285)

Instead of using the TypeDef token of the MethodTable, use the TypeHandle pointer instead. This is both faster to compute, and is more unique, as the TypeDef token could be shared across multiple types in different assemblies, and if the type is generic itself, it could be shared across multiple different instantiations of the type.

Improves the benchmark mentioned in isseu dotnet#94936 such that the cost is about 24 seconds, and the time in spent is spent almost entirely in the JIT, as should be expected.

Fixes dotnet#94936

Co-authored-by: David Wrighton <davidwr@microsoft.com>
Fixes dotnet#93942. Works around dotnet#95223 (a better but more risky fix is in dotnet#95312, so I'm not going to resolve that with this PR).

The first issue is that we don't consider x64 Windows (or x64 Linux) to x64 Bionic build a crossbuild. The crossbuild detection only looks at architecture, not at the OS. The fix is very conservative so that we can backport to 8.0. Bionic is always a crossbuild.

The second part is a port of dotnet/corert#8323 to x64. It is a lot less work than on arm64 because x64 Linux already has to assume `INLINE_GETTHREAD` could be a call so everything is setup for it.

I tested this all on a x64 Bionic hello world. I also ran all of smoke tests on x64 Linux with `FEATURE_EMULATED_TLS` enabled. All of this looks very non-risky so I'm going to ask for a backport.

Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com>
…#95499)

RyuJIT depends on never seeing two different `CORINFO_MODULE_STRUCT` for the same thing.

Fixes dotnet#93843.

Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com>
…otnet#95587)

If we have a call that returns a struct that is immediately assigned
to some local, the call is a GDV inline candidate, and the call is
invoked with a copy of the same local on the evaluation stack, the
spill of that local into a temp will appear in the IR stream between
the call and the ret expr, instead of before the call.

As part of our IR resolution the store to the local gets "sunk" into
the call as the hidden return buffer, so the importer ordering is
manifestly incorrect:
```
call &retbuf, ...
tmp = retbuf
...ret-expr
...tmp
```

For normal inline candidates this mis-ordering gets fixed up either
by swapping the call back into the ret expr's position, or for successful
inlines by swapping the return value store into the ret expr's position.
The JIT has behaved this way for a very long time, and the transient
mis-ordering has not lead to any noticble problem.

For GDV calls the return value stores are done earlier, just after
the call, and so the spill picks up the wrong value. GDV calls normally
only happen with PGO data. This persistent mis-ordering has been
the behavior since at least 6.0, but now that PGO is enabled by default
a much wider set of programs are at risk of running into it.

The fix here is to reorder the IR in the importer at the point the
store to the local is appended to the IR stream, as we are processing
spills for the local. If the source of the store is a GT_RET_EXPR we
keep track of these spills, find the associated GT_CALL statement, and
move the spills before the call.

There was a similar fix made for boxes in dotnet#60335, where once again the
splitting of the inline candidate call and the subsequent modification of
the call to write directly to the return buffer local led to similar
problems with GDV calls.

Fixes dotnet#95394.

Co-authored-by: Andy Ayers <andya@microsoft.com>
* Add a CFG build for eventpipe-enabled library

* Add an EventPipe test with Control flow guard

* restrict control flow to windows

---------

Co-authored-by: Andy Gocke <andy@commentout.net>
Co-authored-by: Lakshan Fernando <lakshanf@hotmail.com>
dotnet-maestro bot and others added 7 commits January 16, 2024 10:14
…nals build 20240115.1 (dotnet#97032)

Microsoft.SourceBuild.Intermediate.source-build-externals
 From Version 8.0.0-alpha.1.24059.4 -> To Version 8.0.0-alpha.1.24065.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…ence-packages build 20240111.1 (dotnet#96990)

Microsoft.SourceBuild.Intermediate.source-build-reference-packages
 From Version 8.0.0-alpha.1.23565.1 -> To Version 8.0.0-alpha.1.24061.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Kevin Jones <kevin@vcsjones.com>
)

* Fix Crossgen2 PDB generation (again)

* Simplify the change per JanK's PR feedback

---------

Co-authored-by: Tomáš Rylek <trylek@microsoft.com>
…for DacHeapWalker (dotnet#96861)

* Gen0 segment should always be reported as Gen0 for DacHeapWalker

* Code review feedback

---------

Co-authored-by: Andrew Au <andrewau@microsoft.com>
* Add entire issuer chain to trusted X509_STORE when stapling OCSP_Response (dotnet#96792)

* Add entire issuer chain to trusted X509_STORE when validating OCSP_Response

* Code review feedback

* More code review feedback

* Update src/libraries/System.Net.Security/src/System/Net/Security/SslStreamCertificateContext.Linux.cs

Co-authored-by: Jeremy Barton <jbarton@microsoft.com>

* Fix compilation

* Always include root certificate

---------

Co-authored-by: Jeremy Barton <jbarton@microsoft.com>

* Recover from failed OCSP download. (dotnet#96448)

* Recover from failed OCSP check.

* Add 5s back-off after failed OCSP querry

* Don't shorten OCSP expriation on failed server OCSP fetch (dotnet#96972)

* Don't shorten OCSP expriation on failed server OCSP fetch

* Code review feedback

---------

Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
…te key handles (dotnet#96993)

* macOS: Set certificate as a dependency of private key handles

* [iOS] Skip PublicPrivateKey_IndependentLifetimes_DSA test (dotnet#96685)

DSA is not supported

---------

Co-authored-by: Steve Pfister <steveisok@users.noreply.github.com>
@carlossanlop carlossanlop added Servicing-approved Approved for servicing release area-codeflow for labeling automated codeflow labels Jan 17, 2024
@carlossanlop carlossanlop added this to the 8.0.2 milestone Jan 17, 2024
@carlossanlop carlossanlop self-assigned this Jan 17, 2024
github-actions bot and others added 2 commits January 16, 2024 17:14
…ad of saturates (dotnet#97047)

* UInt64.CreateSaturating<Int128> truncates instead of saturates

* Update src/libraries/System.Private.CoreLib/src/System/Int128.cs

---------

Co-authored-by: pedrobsaila <badrebsaila@outlook.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
@carlossanlop carlossanlop merged commit c93800e into dotnet:release/8.0 Jan 17, 2024
105 of 176 checks passed
@carlossanlop carlossanlop deleted the release/8.0-staging branch January 17, 2024 01:57
@github-actions github-actions bot locked and limited conversation to collaborators Feb 16, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-codeflow for labeling automated codeflow Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants