Skip to content

Invalid page size assumptions in GC #133743

Description

@jkotas

At very least, there seem to be an issue in GC as well:

Default 4MiB regions have 32KiB mark bitmaps, so adjacent regions share an OS page. 
Commit accounting double-counts that page, while decommit accounting fails to subtract it, causing the assertion.

With temporary  DOTNET_GCRegionSize=800000  (hexadecimal 8MiB), the full normal Checked CoreCLR suite completed

propsed fix:

size_t min_gc_region_size =
    OS_PAGE_SIZE * (mark_word_size / sizeof(uint32_t));

Originally posted by @EgorBo in #133675

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

  • Status
    No status

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions