DynamoRIO / DynamoRIO/dynamorio

HANG: drcachesim config reader can infinite loop on some poorly-formed cache configurations

Open
#6,463 0 comments 0 reactions 0 assignees View on GitHub
Component-DrMemtrace
Dominant language
C
Stars
3.2k
Forks
629
Avg merge
2d 15h
Merged PRs (30d)
31

Description

drcachesim/reader/config_reader.cpp includes loop-detection code to make sure the cache hierarchy is a DAG.

This loop detection code can (ironically) get stuck in an infinite loop if either (a) a cache refers to a non-existent cache
as its parent, or (b) there is a loop on the path from a cache towards memory that does _not_ include the first cache checked.

None of the config_reader tests include configurations with these mistakes.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.