Skip to content

Conversation

@JosJuice
Copy link
Member

@JosJuice JosJuice commented Jan 5, 2026

By default, Docker limits containers to using 64 MiB of shared memory. This is a problem for dolphin-emu/dolphin#13768, which calls MemoryManager::Init as part of a unit test. Under Dolphin's default configuration (GameCube without accurate MMU emulation), MemoryManager::Init allocates 32 MiB of shared memory for main RAM, 32 MiB of shared memory for fake VMEM, and 256 KiB of shared memory for the locked L1 cache, which in total is just above Docker's limit.

To solve this, specify 256 MiB as the limit instead of using the default 64 MiB. This should be enough shared memory for MemoryManager even with the MEM1 and MEM2 size override settings maxed out.

This is untested!

By default, Docker limits containers to using 64 MiB of shared memory.
This is a problem for dolphin-emu/dolphin#13768,
which calls MemoryManager::Init as part of a unit test. Under Dolphin's
default configuration (GameCube without accurate MMU emulation),
MemoryManager::Init allocates 32 MiB of shared memory for main RAM,
32 MiB of shared memory for fake VMEM, and 256 KiB of shared memory for
the locked L1 cache, which in total is just above Docker's limit.

To solve this, specify 256 MiB as the limit instead of using the default
64 MiB. This should be enough shared memory for MemoryManager even with
the MEM1 and MEM2 size override settings maxed out.
Copy link
Member

@jordan-woyak jordan-woyak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds fine to me. Untested.

@OatmealDome OatmealDome merged commit 2b4ea38 into dolphin-emu:master Jan 6, 2026
@JosJuice JosJuice deleted the docker-256m branch January 6, 2026 11:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants