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

Avoid duplicated read #77577

Merged
merged 1 commit into from
Oct 31, 2022
Merged

Conversation

cshung
Copy link
Member

@cshung cshung commented Oct 28, 2022

This commit fixed the issue that we have a duplicate read found in #77087.

@ghost
Copy link

ghost commented Oct 28, 2022

Tagging subscribers to this area: @dotnet/gc
See info in area-owners.md if you want to be subscribed.

Issue Details

null

Author: cshung
Assignees: -
Labels:

area-GC-coreclr

Milestone: -

@cshung cshung merged commit a124c14 into dotnet:main Oct 31, 2022
@cshung cshung deleted the public/avoid-duplicated-read branch October 31, 2022 18:57
@Maoni0
Copy link
Member

Maoni0 commented Oct 31, 2022

I verified that the after disssambly is not doing the double loading. it gets the address in edx and use that to compare with BGC high/lowest addresses

0:023> u 5f1dbb7c
coreclr!WKS::gc_heap::revisit_written_page+0x20c [C:\runtime-segments\src\coreclr\gc\gc.cpp @ 35620]:
5f1dbb7c 8b12            mov     edx,dword ptr [edx]
5f1dbb7e 8975fc          mov     dword ptr [ebp-4],esi
5f1dbb81 ff00            inc     dword ptr [eax]
5f1dbb83 3b1554a74f5f    cmp     edx,dword ptr [coreclr!WKS::gc_heap::background_saved_lowest_address (5f4fa754)]
5f1dbb89 0f82be000000    jb      coreclr!WKS::gc_heap::revisit_written_page+0x2dd (5f1dbc4d)
5f1dbb8f 8975fc          mov     dword ptr [ebp-4],esi
5f1dbb92 3b1550a74f5f    cmp     edx,dword ptr [coreclr!WKS::gc_heap::background_saved_highest_address (5f4fa750)]
5f1dbb98 0f83af000000    jae     coreclr!WKS::gc_heap::revisit_written_page+0x2dd (5f1dbc4d)
0:023> u
coreclr!WKS::gc_heap::mark_array_marked [C:\runtime-segments\src\coreclr\gc\gc.cpp @ 35620] [inlined in coreclr!WKS::gc_heap::revisit_written_page+0x22e [C:\runtime-segments\src\coreclr\gc\gc.cpp @ 35620]]:
5f1dbb9e a12ca74f5f      mov     eax,dword ptr [coreclr!WKS::gc_heap::mark_array (5f4fa72c)]
5f1dbba3 8bca            mov     ecx,edx
5f1dbba5 c1e908          shr     ecx,8

@ghost ghost locked as resolved and limited conversation to collaborators Dec 1, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

ComInterfaceGenerator.Unit.Tests.WorkItemExecution failing with Internal CLR error on Win x86
3 participants