Hm, yeah this should maybe be configurable. Or, maybe oomd should
decrease the event interval when resource usage is well below the limit.

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

Title:
  systemd-oomd wakeups every second

Status in systemd package in Ubuntu:
  New

Bug description:
  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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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/user@1000.service/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)

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


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to