Skip to content

Commit 337a6e7

Browse files
vasildhebasto
andcommitted
system: improve handling around GetTotalRAM()
This patch achieves two things: 1. Fix unused variable warning (bitcoin/bitcoin#33333 (comment)) 2. Enable GetTotalRAM() on other platforms where it was tested to work. Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
1 parent edb871c commit 337a6e7

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

src/common/system.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,10 +113,15 @@ int GetNumCores()
113113

114114
std::optional<size_t> GetTotalRAM()
115115
{
116-
auto clamp{[](uint64_t v) { return size_t(std::min(v, uint64_t{std::numeric_limits<size_t>::max()})); }};
116+
[[maybe_unused]] auto clamp{[](uint64_t v) { return size_t(std::min(v, uint64_t{std::numeric_limits<size_t>::max()})); }};
117117
#ifdef WIN32
118118
if (MEMORYSTATUSEX m{}; (m.dwLength = sizeof(m), GlobalMemoryStatusEx(&m))) return clamp(m.ullTotalPhys);
119-
#elif defined(__linux__) || defined(__APPLE__)
119+
#elif defined(__APPLE__) || \
120+
defined(__FreeBSD__) || \
121+
defined(__NetBSD__) || \
122+
defined(__OpenBSD__) || \
123+
defined(__illumos__) || \
124+
defined(__linux__)
120125
if (long p{sysconf(_SC_PHYS_PAGES)}, s{sysconf(_SC_PAGESIZE)}; p > 0 && s > 0) return clamp(1ULL * p * s);
121126
#endif
122127
return std::nullopt;

0 commit comments

Comments
 (0)