FEX-Emu / FEX-Emu/FEX

`FEXLinuxTests_32/cpu_count.32` sometimes returns incorrect CPU count

Open
#5,247 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
8k
Forks
351
Avg merge
12h 31m
Merged PRs (30d)
102

Description

```
/home/buildbot/actions-runner/_work/FEX/FEX/unittests/FEXLinuxTests/tests/cpu/cpu_count.cpp:98: FAILED:
CHECK( core_info->max_addressible_ids >= hw_concurrency )
with expansion:
14 >= 139
```
Seems to always be the 32-bit test?

`hw_concurrency` is calculated with `std::thread::hardware_concurrency()` so it's entirely within libstdc++/glibc with the implementation.
I thought initially that this was from memory corruption, because it seemed to occur more frequently on the solidrun runners.

But it also happened on mac-mini-3 which I wouldn't have expected memory corruption on. So maybe some syscall is getting interrupted and we aren't doing EINTR or something correctly?

Super inconsistent so it would be hard to nail down.

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.