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

RDK-588: limit conservative scan range #1416

Open
wants to merge 1 commit into
base: wpe-2.38
Choose a base branch
from

Conversation

tomasz-karczewski-red
Copy link

Seems that conservative GC root scanning is going too deep into the stack and this may prevent the collection of objects - see:

#1363

The change introduces 'stack guards' that prevent this in particular cases, that is - if there is gloop main loop routine in the stack the GC root stack search will not go deeper that this frame. This avoids some 'false positives' conservative roots that can make the app hold a lot of memory - in the typical replication scenario around 200MB of memory was often left behind after exiting sky store/show apps (https://stv.prd.sky.ch/store/, https://stv.prd.sky.ch/show/), leading to oom's.

Turns out that conservative GC root scanning is going too deep into the stack
and this may prevent the collection of objects - see:

WebPlatformForEmbedded#1363

The change introduces 'stack guards' that prevent this in particular cases,
that is - if there is gloop main loop routine in the stack the GC root stack search
will not go deeper that this frame. This avoids some 'false positives' conservative roots
that can make the app hold a lot of memory.
@tomasz-karczewski-red tomasz-karczewski-red force-pushed the RDK-588_LimitConservativeScanStackRange branch from a301af9 to 1c94a4a Compare October 28, 2024 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

3 participants