Due to a regression, `killall` truncates command names to 7 characters on 64-bit arches and 3 (!) on 32-bit arches. $ ln -s /bin/sleep /tmp/sleep12345678 $ /tmp/sleep12345678 1000& [1] 24449 $ killall sleep12345678 sleep12345678: no process found $ killall sleep12 [1] + 24449 terminated /tmp/sleep12345678 1000 Obvious bug is here: https://gitlab.com/psmisc/psmisc/blob/1e2f38a202798a78554ae5f5d12f697f3607f89f/src/killall.c#L353 `comm` is a pointer, not an array. sizeof is getting the size of the pointer. So the maximum command length, which used to be 15, and was intended to be increased to 64, actually got reduced to 7 on 64-bit arches and 3 on 32-bit ones. Ouch. sev major because, seriously, this is killall. It seems there's at least one other bug (#664066). I'd mask 23.2 until it's better tested and these issues fixed; psmisc is pretty basic functionality and even ~arch users probably don't expect killall to stop working.
Upstream issue: https://gitlab.com/psmisc/psmisc/issues/14
*** This bug has been marked as a duplicate of bug 664066 ***
Um, it's not a dupe. These are two different bugs in sys-process/psmisc-23.2.
This was fixed with the 23.2 upstream re-release together with 664066, in this commit: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c1e6dc1b44372a36852071f5f35b22e686d6cea