irqbalance: Fix log spam and correct meson version
authorHannu Nyman <hannu.nyman@iki.fi>
Sat, 9 Dec 2023 10:13:27 +0000 (12:13 +0200)
committerHannu Nyman <hannu.nyman@iki.fi>
Sat, 9 Dec 2023 10:13:27 +0000 (12:13 +0200)
commit78c4791f4248a3a65da6dce07cc528889080a3ef
tree344ba2cdb1fa36a47cbc5ed849082a1f837a06bd
parenta6089c1fe7d8a11f32807382b133d471273bf7cc
irqbalance: Fix log spam and correct meson version

Irqbalance 1.9.3 changed the handling of certain errors.
Specifically EINVAL, trying to set an invalid CPU core,
was changed to be a temporary error, causing log spam from
repeated balancing runs in some devices. See log and strace below.
Mark EINVAL as permanent.

Also correct the version in our own meson.build patch.

Log and strace:

Sat Dec  9 10:17:27 2023 daemon.warn irqbalance: Cannot change IRQ 48 affinity: Invalid argument

open("/proc/irq/48/smp_affinity", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 6
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6ed9000
ioctl(6, TIOCGWINSZ, 0xbeb134e8)        = -1 ENOTTY (Not a tty)
writev(6, [{iov_base="00000001", iov_len=8}, {iov_base=NULL, iov_len=0}], 2) = -1 EINVAL (Invalid argument)
close(6)                                = 0
munmap(0xb6ed9000, 4096)                = 0
clock_gettime64(CLOCK_REALTIME, {tv_sec=1702109847, tv_nsec=340549081}) = 0
sendto(5, "<28>Dec  9 08:17:27 irqbalance: "..., 80, 0, NULL, 0) = 80
writev(1, [{iov_base="Cannot change IRQ 48 affinity: I"..., iov_len=47}, {iov_base="\n", iov_len=1}], 2Cannot change IRQ 48 affinity: Invalid argument
) = 48

Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
utils/irqbalance/Makefile
utils/irqbalance/patches/010-meson.patch
utils/irqbalance/patches/020-mark-EINVAL-error-permanent.patch [new file with mode: 0644]