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
>     dera...@amd64.openbsd.org:/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.

Reply via email to