You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It does a double reference assign + write barrier CORINFO_HELP_ASSIGN_BYREF.
Also it means data structures like FrameRequestHeaders.HeaderReferences is 688 bytes and FrameResponseHeaders.HeaderReferences is 592 bytes; so clearing needs to Memset quite a large amount of data; and Kestrel has a "faster" path where under 12 headers it does a bit count; then steps though all the headers checking if they are set and clearing them (with early bail)
The double ptr struct field also causes knock on issues like "FrameRequestHeaders:AppendNonPrimaryHeaders uses (and zeros) 888 bytes of stack" aspnet/KestrelHttpServer#1317 (issue in coreclr dotnet/coreclr#9041)
An example of how this could be done is: benaadams/extensions@0b567e9; however there are knock on issues around foreach vs for patterns and I haven't confirmed it would be a net win, so am not making a PR for this at this time.
Uh oh!
There was an error while loading. Please reload this page.
Saw this while doing some disassembling dotnet/coreclr#9039 where assigning to
StringValues
It does a double reference assign + write barrier
CORINFO_HELP_ASSIGN_BYREF
.Also it means data structures like
FrameRequestHeaders.HeaderReferences
is 688 bytes andFrameResponseHeaders.HeaderReferences
is 592 bytes; so clearing needs to Memset quite a large amount of data; and Kestrel has a "faster" path where under 12 headers it does a bit count; then steps though all the headers checking if they are set and clearing them (with early bail)The double ptr struct field also causes knock on issues like "FrameRequestHeaders:AppendNonPrimaryHeaders uses (and zeros) 888 bytes of stack" aspnet/KestrelHttpServer#1317 (issue in coreclr dotnet/coreclr#9041)
An example of how this could be done is: benaadams/extensions@0b567e9; however there are knock on issues around foreach vs for patterns and I haven't confirmed it would be a net win, so am not making a PR for this at this time.
Previous issues: #185, dotnet/aspnetcore#2367
The text was updated successfully, but these errors were encountered: