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 branch 'release/7.0-staging' => 'release/7.0' #84594

Merged
merged 32 commits into from
Apr 11, 2023

Conversation

carlossanlop
Copy link
Member

Important: Use Merge commit.

Snapped from my fork to prevent unexpected merges in staging branch to flow here.

carlossanlop and others added 30 commits March 28, 2023 10:35
* [7.0] Update backport template and servicing docs

* fix template spacing

---------

Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
Co-authored-by: Juan Hoyos <19413848+hoyosjs@users.noreply.github.com>
Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
* disable NTLM tests on RedHat.7

* Package_Unsupported_NTLM

---------

Co-authored-by: wfurt <tweinfurt@yahoo.com>
…ity (dotnet#83557)

* Add comment in csprojs of dependencies of M.W.Compat.

* Adjust readme.

* Turn off M.W.C. (reset it), it was built last month.

---------

Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
…es (dotnet#83302)

* [mono] Use `unsigned char` when computing UTF8 string hashes

The C standard does not specify whether `char` is signed or unsigned,
it is implementation defined.

Apparently Android aarch64 makes a different choice than other
platforms (at least macOS arm64 and Windows x64 give different
results).

Mono uses `mono_metadata_str_hash` in the AOT compiler and AOT runtime
to optimize class name lookup.  As a result, classes whose names
include UTF-8 continuation bytes (with the high bit = 1) will hash
differently in the AOT compiler and on the device.

Fixes dotnet#82187
Fixes dotnet#78638

* Add regression test
…ringContent dotnet#81506 (dotnet#83425)

Co-authored-by: Simon Lovely <s.lovely@gmail.com>
…et#67589) (dotnet#83966)

* Update dependencies from https://github.com/dotnet/emsdk build 20230323.1 (dotnet#83860)

Microsoft.NET.Workload.Emscripten.net6.Manifest-7.0.100 , Microsoft.NET.Workload.Emscripten.net7.Manifest-7.0.100
 From Version 7.0.4 -> To Version 7.0.5

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

* Use CLOCK_BOOTTIME to calculate BootTime on linux (dotnet#67589)

Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Co-authored-by: Simon Rozsival <simon@rozsival.com>

* Do no test StartTime in GetProcessesByName test (dotnet#75334)

* Revert "Update dependencies from https://github.com/dotnet/emsdk build 20230323.1 (dotnet#83860)"

This reverts commit 6a533c1.

---------

Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Adeel Mujahid <3840695+am11@users.noreply.github.com>
Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
…tnet#83414) (dotnet#83462)

Backport of dotnet#83414 to release/7.0, fixes dotnet#83242

When checking that an inner array access is in bounds, we must ensure any outer
access is fully in bounds too. We were checking that `idx < array.Len` but not
that `idx >= 0`.

Use an unsigned compare for this check so we can do both sides with a single
instruction.

Fixes dotnet#83242.
…net#83574)

* Ensure free buffer space when reading TLS messages

* Move buffer expansion outside of the loop to prevent unbounded grow

* Fix failing tests

The initial size is not enough to cover later TLS frames

* Remove unwanted changes

---------

Co-authored-by: Radek Zikmund <radekzikmund@microsoft.com>
Co-authored-by: Radek Zikmund <r.zikmund.rz@gmail.com>
Co-authored-by: Radek Zikmund <32671551+rzikm@users.noreply.github.com>
…x list containing many items (dotnet#83743)

Co-authored-by: Charles Stoner <10732005+cston@users.noreply.github.com>
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
dotnet#83341)

We are seeing a gen0 region that's almost fully occupied (< 24 bytes free) with one giant plug (ie, no free objects at all in the region).
This causes allocate_in_condemned_generations to go into an infinite loop because in ephemeral generations we expect short plugs,
ie, we should be able to allocate a min free object in front of each plug. And normally we can because when we allocate objects in gen0
we make sure to break up the allocation contexts with min free objects and when we compact into gen1 we form short plugs.

We are in this situation when all of the following conditions are true -

+ we did a gen2 compacting GC that generates a pinned plug in a gen2 region almost as big as the whole region. my guess for the reason why there's this giant pinned plug is because that gen2 region was already really compact so when we called allocate_in_condemned_generations on the non pinned plugs that are next to some pinned plugs in it we discovered we can't move the non pinned plugs anyway so we artificially pinned them and formed a giant pinned plug. and during this GC those objects were no longer pinned so we have one giant non pinned plug.
+ this gen2 region needs to be the last region with pinned plugs;
+ this gen2 region hasn't been consumed by allocate_in_condemned_generations yet so it was processed by process_remaining_regions;

Then in process_remaining_regions we'll set the plan_gen_num for that gen2 region to 0 because we are doing

set_region_plan_gen_num_sip (current_region, current_plan_gen_num);

instead of going through the demotion logic to decide whether we should demote this region or not.

Co-authored-by: Maoni0 <maoni@microsoft.com>
Co-authored-by: Andrew Au <andrewau@microsoft.com>
* Fix.

* Applied @pavelsavara's review.

* Update dependencies from https://github.com/dotnet/emsdk build 20230323.1 (dotnet#83860)

Microsoft.NET.Workload.Emscripten.net6.Manifest-7.0.100 , Microsoft.NET.Workload.Emscripten.net7.Manifest-7.0.100
 From Version 7.0.4 -> To Version 7.0.5

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

---------

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

* Use flag to initilize ilgen, instead of doing it lazily.

* Formatting.

* Improve variable naming.

* Fix condition.

* Updated name in .h file.

* Updated how wasm inits ilgen.

* Updated wasi driver.

---------

Co-authored-by: Nathan Ricci <naricc@microsoft.com>
…squic dotnet/runtime-assets dotnet/emsdk (dotnet#84145)

* Update dependencies from https://github.com/dotnet/emsdk build 20230323.1

Microsoft.NET.Workload.Emscripten.net6.Manifest-7.0.100 , Microsoft.NET.Workload.Emscripten.net7.Manifest-7.0.100
 From Version 7.0.4 -> To Version 7.0.5

* Update dependencies from https://github.com/dotnet/linker build 20230315.1

Microsoft.NET.ILLink.Tasks
 From Version 7.0.100-1.22423.4 -> To Version 7.0.100-1.23165.1

* Update dependencies from https://github.com/dotnet/msquic build 20220909.1

System.Net.MsQuic.Transport
 From Version 7.0.0-alpha.1.22406.1 -> To Version 7.0.0-alpha.1.22459.1

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

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 7.0.0-beta.23151.1 -> To Version 7.0.0-beta.23179.6

* Update dependencies from https://github.com/dotnet/emsdk build 20230405.1

Microsoft.NET.Workload.Emscripten.net6.Manifest-7.0.100 , Microsoft.NET.Workload.Emscripten.net7.Manifest-7.0.100
 From Version 7.0.5 -> To Version 7.0.6

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Carlos Sánchez López <1175054+carlossanlop@users.noreply.github.com>
* Eight packable projects pin their assembly version for .NET Framework compatibility. The incremental package servicing infrastructure didn't check if the assembly version is pinned and changed it during servicing.

As an example, System.Speech pins its assembly version to 4.0.0.0 but that version gets overwritten during servicing. I.e. for .NET 7 the version would then change to "7.0.0.$(ServicingVersion)" which is incorrect.

Please find the full list of impacted assemblies below:
- System.ComponentModel.Composition
- System.DirectoryServices
- System.DirectoryServices.AccountManagement
- System.DirectoryServices.Protocols
- System.Management
- System.Reflection.Context
- System.Runtime.Caching
- System.Speech

For System.DirectoryServices.Protocols and System.Management we'll only pin the version for the .NETStandard assembly since those previously shipped the newer versions in servicing.

* Enable System.Management and System.DirectoryServices.Protocols in servicing

* Address feedback
[manual] Merge branch 'release/7.0' => 'release/7.0-staging'
…in ClrVirtualAllocWithinRange() (dotnet#83958)

* Fix reserving executable memory as per allocation type in ClrVirtualAllocWithinRange()

Fixes dotnet#83818

---------

Co-authored-by: Ilia K <ki.stfu@gmail.com>
Co-authored-by: Carlos Sánchez López <1175054+carlossanlop@users.noreply.github.com>
…4567)

backport of dotnet#84354

The android builds are running out of disk space when building the library test apps. This change tries to recoup some of that space by deleting artifacts after each test was built.

Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
dotnet-maestro bot and others added 2 commits April 10, 2023 17:48
…407.1 (dotnet#84486)

Microsoft.NET.ILLink.Tasks
 From Version 7.0.100-1.23165.1 -> To Version 7.0.100-1.23207.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
@carlossanlop carlossanlop added Servicing-approved Approved for servicing release area-codeflow for labeling automated codeflow labels Apr 11, 2023
@carlossanlop carlossanlop added this to the 7.0.6 milestone Apr 11, 2023
@carlossanlop carlossanlop self-assigned this Apr 11, 2023
@carlossanlop carlossanlop merged commit a283bb9 into dotnet:release/7.0 Apr 11, 2023
@carlossanlop carlossanlop deleted the release/7.0-staging branch April 11, 2023 04:15
@ghost ghost locked as resolved and limited conversation to collaborators May 11, 2023
@rbhanda rbhanda modified the milestones: 7.0.6, 7.0.7 Jun 1, 2023
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.

10 participants