On 2023/10/05 19:04, Mikhail wrote:
> I have also 7.3-release with syspatches - it prints
> pflogd(ok)
> on rcctl -f stop pflogd, and no pflogd processes around after that.
>
>
> $ sysctl kern.version
> kern.version=OpenBSD 7.4 (GENERIC.MP) #1394: Wed Oct 4 10:25:33 MDT 2023
> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>
> $ ps axu | grep pflog
> $
>
> $ doas rcctl -f start pflogd
> pflogd(ok)
>
> $ ps axu | grep pflog
> root 81507 0.0 0.0 656 1384 ?? SU 6:54PM 0:00.00 pflogd:
> [priv] (pflogd)
> _pflogd 65294 0.0 0.0 696 1564 ?? Spc 6:54PM 0:00.00 pflogd:
> [running] -s 160 -i pflog0 -f /var/log/pflog (pflogd)
>
> $ doas rcctl -f stop pflogd
> pflogd(killed)
>
> $ ps axu | grep pflog
> _pflogd 65294 0.0 0.0 696 1572 ?? Spc 6:54PM 0:00.00 pflogd:
> [running] -s 160 -i pflog0 -f /var/log/pflog (pflogd)
>
Seems pflogd sometimes (but possibly not always?) doesn't exit after
getting SIGTERM..
$ pgrep -lf pflog
62308 pflogd: [running] -s 160 -i pflog0 -f /var/log/pflog
58610 pflogd: [priv]
58610 pflogd PSIG SIGTERM caught handler=0x591da8a9ce0 mask=0<>
58610 pflogd RET read RESTART
58610 pflogd CALL kill(62308,SIGTERM)
58610 pflogd RET kill 0
58610 pflogd CALL sigreturn(0x7894e6a19590)
62308 pflogd PSIG SIGTERM caught handler=0x8e6b1e70cf0 mask=0<>
58610 pflogd RET sigreturn JUSTRETURN
62308 pflogd RET read RESTART
58610 pflogd CALL read(3,0x7894e6a19a98,0x4)
62308 pflogd CALL sigreturn(0x7ec0882c1910)
62308 pflogd RET sigreturn JUSTRETURN
62308 pflogd CALL read(4,0x8e912ad4000,0x8000)
No output shown if I run pflogd in the foreground (-D) and signal
it either.
Backing out the last pflogd commit ("switch pflogd from using a bpf
read timeout to a wait timeout") restores previous behaviour.