Public bug reported:

Hello, I noticed via opensnoop-bpfcc that systemd-oomd was opening a set
of files every single second. We're trying to reduce the overall power
use of our systems and this feels like a lot of overhead.

A bit of the strace from it:

gettid()                                = 2140
timerfd_settime(9, TFD_TIMER_ABSTIME, {it_interval={tv_sec=0, tv_nsec=0}, 
it_value={tv_sec=1282676, tv_nsec=647711000}}, NULL) = 0
epoll_wait(5, [{events=EPOLLIN, data={u32=2450295072, u64=106375905315104}}], 
24, -1) = 1
read(9, "\1\0\0\0\0\0\0\0", 8)          = 8
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.pressure", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "some avg10=0.00 avg60=0.00 avg30"..., 4096) = 94
ioctl(8, TCGETS, 0x7ffceadb5880)        = -1 ENOTTY (Inappropriate ioctl for 
device)
ioctl(8, TCGETS, 0x7ffceadb5880)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.current", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "851992576\n", 4096)            = 10
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.min", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.low", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.swap.current",
 O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.stat", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "anon 502538240\nfile 268328960\nke"..., 4096) = 955
read(8, "", 4096)                       = 0
close(8)                                = 0
gettid()                                = 2140
timerfd_settime(9, TFD_TIMER_ABSTIME, {it_interval={tv_sec=0, tv_nsec=0}, 
it_value={tv_sec=1282677, tv_nsec=897711000}}, NULL) = 0
epoll_wait(5, [{events=EPOLLIN, data={u32=2450295072, u64=106375905315104}}], 
24, -1) = 1
read(9, "\1\0\0\0\0\0\0\0", 8)          = 8
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.pressure", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "some avg10=0.00 avg60=0.00 avg30"..., 4096) = 94
ioctl(8, TCGETS, 0x7ffceadb5880)        = -1 ENOTTY (Inappropriate ioctl for 
device)
ioctl(8, TCGETS, 0x7ffceadb5880)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.current", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "851472384\n", 4096)            = 10
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.min", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.low", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.swap.current",
 O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.stat", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "anon 502542336\nfile 268328960\nke"..., 4096) = 955
read(8, "", 4096)                       = 0
close(8)                                = 0
gettid()                                = 2140
timerfd_settime(9, TFD_TIMER_ABSTIME, {it_interval={tv_sec=0, tv_nsec=0}, 
it_value={tv_sec=1282679, tv_nsec=147711000}}, NULL) = 0
epoll_wait(5, [{events=EPOLLIN, data={u32=2450295072, u64=106375905315104}}], 
24, -1) = 1
read(9, "\1\0\0\0\0\0\0\0", 8)          = 8
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.pressure", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "some avg10=0.00 avg60=0.00 avg30"..., 4096) = 94
ioctl(8, TCGETS, 0x7ffceadb5880)        = -1 ENOTTY (Inappropriate ioctl for 
device)
ioctl(8, TCGETS, 0x7ffceadb5880)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.current", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "851906560\n", 4096)            = 10
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.min", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.low", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.swap.current",
 O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "0\n", 4096)                    = 2
ioctl(8, TCGETS, 0x7ffceadb5870)        = -1 ENOTTY (Inappropriate ioctl for 
device)
read(8, "", 4096)                       = 0
close(8)                                = 0
openat(AT_FDCWD, 
"/sys/fs/cgroup/user.slice/user-1000.slice/[email protected]/memory.stat", 
O_RDONLY|O_CLOEXEC) = 8
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
fstat(8, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(8, "anon 502542336\nfile 268328960\nke"..., 4096) = 955
read(8, "", 4096)                       = 0
close(8)                                = 0
gettid()                                = 2140
timerfd_settime(9, TFD_TIMER_ABSTIME, {it_interval={tv_sec=0, tv_nsec=0}, 
it_value={tv_sec=1282680, tv_nsec=397711000}}, NULL) = 0
epoll_wait(5, ^Cstrace: Process 2140 detached
 <detached ...>

Thanks

ProblemType: Bug
DistroRelease: Ubuntu 24.04
Package: systemd-oomd 255.4-1ubuntu8.4
ProcVersionSignature: Ubuntu 6.8.0-44.44-generic 6.8.12
Uname: Linux 6.8.0-44-generic x86_64
NonfreeKernelModules: zfs
ApportVersion: 2.28.1-0ubuntu3.1
Architecture: amd64
CasperMD5CheckResult: pass
Date: Wed Oct  9 13:30:34 2024
InstallationDate: Installed on 2023-01-05 (644 days ago)
InstallationMedia: Ubuntu 22.04.1 LTS "Jammy Jellyfish" - Release amd64 
(20220809.1)
ProcEnviron:
 LANG=en_US.UTF-8
 LC_TIME=C
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=rxvt-unicode-256color
RebootRequiredPkgs: Error: path contained symlinks.
SourcePackage: systemd
UpgradeStatus: Upgraded to noble on 2024-07-31 (71 days ago)

** Affects: systemd (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug noble

** Summary changed:

- wakeups every second
+ systemd-oomd wakeups every second

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2084100

Title:
  systemd-oomd wakeups every second

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/2084100/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to