Skip to content

Instantly share code, notes, and snippets.

@dhasial
Created July 8, 2024 17:51
Show Gist options
  • Save dhasial/ba0747b370ed14f15426a38775d4cc5c to your computer and use it in GitHub Desktop.
Save dhasial/ba0747b370ed14f15426a38775d4cc5c to your computer and use it in GitHub Desktop.
oomd (commit 4ca0347) build error terminal output
❯ meson build && ninja -C build
The Meson build system
Version: 1.4.1
Source dir: /home/$user/src/oomd
Build dir: /home/$user/src/oomd/build
Build type: native build
Project name: oomd
Project version: v0.5.0
C++ compiler for the host machine: c++ (gcc 14.1.1 "c++ (GCC) 14.1.1 20240522")
C++ linker for the host machine: c++ ld.bfd 2.42.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: YES (/usr/bin/pkg-config) 2.1.1
Run-time dependency jsoncpp found: YES 1.9.4
Run-time dependency threads found: YES
Run-time dependency libsystemd found: YES 256
Configuring oomd.service using configuration
Configuring oomd.json using configuration
Run-time dependency GTest found: YES 1.14.0
Run-time dependency GMock found: YES 1.14.0
Build targets in project: 16
NOTICE: Future-deprecated features used:
* 0.56.0: {'meson.source_root'}
Found ninja-1.12.1 at /usr/bin/ninja
WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated.
ninja: Entering directory `build'
[31/79] Compiling C++ object liboomd.a.p/src_oomd_plugins_Senpai.cpp.o
FAILED: liboomd.a.p/src_oomd_plugins_Senpai.cpp.o
c++ -Iliboomd.a.p -I. -I.. -I../src -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++17 -O0 -g -fPIC -pthread -DMESON_BUILD -MD -MQ liboomd.a.p/src_oomd_plugins_Senpai.cpp.o -MF liboomd.a.p/src_oomd_plugins_Senpai.cpp.o.d -o liboomd.a.p/src_oomd_plugins_Senpai.cpp.o -c ../src/oomd/plugins/Senpai.cpp
../src/oomd/plugins/Senpai.cpp: In member function ‘bool Oomd::Senpai::reclaim(const Oomd::CgroupContext&, int64_t)’:
../src/oomd/plugins/Senpai.cpp:323:39: error: no matching function for call to ‘Oomd::Fs::writeMemReclaimAt(const Oomd::Fs::DirFd&, int64_t&)’
323 | return (bool)Fs::writeMemReclaimAt(cgroup_ctx.fd(), size);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/oomd/CgroupContext.h:27,
from ../src/oomd/OomdContext.h:30,
from ../src/oomd/engine/BasePlugin.h:24,
from ../src/oomd/plugins/Senpai.h:20,
from ../src/oomd/plugins/Senpai.cpp:18:
../src/oomd/util/Fs.h:234:28: note: candidate: ‘static Oomd::SystemMaybe<Oomd::Unit> Oomd::Fs::writeMemReclaimAt(const DirFd&, int64_t, std::optional<long int>)’
234 | static SystemMaybe<Unit> writeMemReclaimAt(
| ^~~~~~~~~~~~~~~~~
../src/oomd/util/Fs.h:234:28: note: candidate expects 3 arguments, 2 provided
[35/79] Compiling C++ object liboomd.a.p/src_oomd_util_Util.cpp.o
../src/oomd/util/Util.cpp: In lambda function:
../src/oomd/util/Util.cpp:172:16: warning: unused variable ‘len’ [-Wunused-variable]
172 | if (size_t len = end - beg) {
| ^~~
[40/79] Compiling C++ object liboomd.a.p/src_oomd_util_Fs.cpp.o
ninja: build stopped: subcommand failed.
@cstaylor
Copy link

cstaylor commented Oct 3, 2024

It looks like Senpai.cpp wasn't updated. This patch let me finish compiling:

diff --git a/src/oomd/plugins/Senpai.cpp b/src/oomd/plugins/Senpai.cpp
index aac06f3..ac68020 100644
--- a/src/oomd/plugins/Senpai.cpp
+++ b/src/oomd/plugins/Senpai.cpp
@@ -320,7 +320,7 @@ bool Senpai::resetMemhigh(const CgroupContext& cgroup_ctx) {
 bool Senpai::reclaim(const CgroupContext& cgroup_ctx, int64_t size) {
   auto has_memory_reclaim_opt = hasMemoryReclaim(cgroup_ctx);
   if (has_memory_reclaim_opt && *has_memory_reclaim_opt) {
-    return (bool)Fs::writeMemReclaimAt(cgroup_ctx.fd(), size);
+    return (bool)Fs::writeMemReclaimAt(cgroup_ctx.fd(), size, std::nullopt);
   }

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment