On 22.09.2014 23:23, Jacob L. Leifman wrote:
Hi,

I think you are hitting the edge case discussed earlier this month (by
stu@ henning@ and others and it might have been on tech@) -- due to
fairly low OS interrupt rate (baked in default is 100Hz), low bandwidth
queue limits on high-bandwidth pipes mostly do not work. Currently the
only offered "solution" was to rebuild the kernel with increased tick
rate. I recommend searching the archives, the subject was something
about "the new queue system".

-Jacob.


Hi,
I made a new kernel on top of GENERIC.MP with HZ=1000. Same behavior.
Also qlimit(50) never get full and pkts/bytes never get dropped.

[ns]/sys/arch/amd64/conf$ more HZ
#       $OpenBSD: GENERIC.MP,v 1.11 2014/09/03 07:44:33 blambert Exp $

include "arch/amd64/conf/GENERIC"

option  MULTIPROCESSOR
#option MP_LOCKDEBUG
option  HZ=1000
cpu*            at mainbus?

------------
pf.conf
------------
 queue rootq on $ExtIf bandwidth 98M, max 99M
  queue inter parent rootq bandwidth 1M, max 2M default
  queue bg parent rootq bandwidth 10M, max 15M

[ns]~$ sysctl -a | grep kern.clo
kern.clockrate=tick = 1000, tickadj = 4, hz = 1000, profhz = 1000, stathz = 1000

pfctl -vvs queue
queue rootq on em0 bandwidth 98M, max 99M qlimit 50
[ pkts: 0 bytes: 0 dropped pkts: 0 bytes: 0 ]
  [ qlength:   0/ 50 ]
  [ measured:     0.0 packets/s, 0 b/s ]
queue inter parent rootq on em0 bandwidth 1M, max 2M default qlimit 50
[ pkts: 147059 bytes: 150743153 dropped pkts: 0 bytes: 0 ]
  [ qlength:   0/ 50 ]
  [ measured:  3751.0 packets/s, 30.76Mb/s ]
queue bg parent rootq on em0 bandwidth 10M, max 15M qlimit 50
[ pkts: 1015 bytes: 107200 dropped pkts: 0 bytes: 0 ]
  [ qlength:   0/ 50 ]
  [ measured:    27.2 packets/s, 23.16Kb/s ]

systat q

QUEUE BW SCH PRIO PKTS BYTES DROP_P DROP_B QLEN BORROW SUSPEN P/S B/S rootq on em0 98M 0 0 0 0 0 0 0 inter 1M 191868 194045K 0 0 0 3004 3455760 bg 10M 1297 135814 0 0 0 32 4608

dmesg
OpenBSD 5.6-current (HZ) #0: Tue Sep 23 11:26:16 EEST 2014
    [email protected]:/sys/arch/amd64/compile/HZ
real mem = 6416760832 (6119MB)
avail mem = 6237212672 (5948MB)
.....

Reply via email to