freebsd mbuf cluster leak with bird 2.14
Thomas Steen Rasmussen
thomas at gibfest.dk
Wed Feb 7 16:31:07 CET 2024
On 2/7/24 15:55, Jan Bramkamp wrote:
>
> On 11.01.24 21:34, Thomas Steen Rasmussen via Bird-users wrote:
>>
>> I have no idea if this is a bird or a freebsd problem but I have to
>> start somewhere :) I can to some extent test stuff, but the routers
>> are in production (BGP with 1 ebgp and 1 ibgp peer and no full table)
>> so nothing too wild.
> Can you please also open a FreeBSD PR for this. It looks like bird is
> only the reproducer for a kernel bug. Can you periodically record the
> `vmstat -m` and `netstat -m` output as the resources are leaked?
Hi,
Yes, sorry, I forgot all about it. I am not crazy about re-triggering
the issue, but I did make a rudimentary prometheus exporter for the
output of `netstat -m` when I was struggling with this so I have grafana
graphs of it.
I have attached a screenshot and it case it doesn't go through to the
list I have also uploaded it here https://imgur.com/a/NAZYoDO and here
https://hushfile.it/07ae3d87cc4c4#W0tXW2ZVtWkjDt9BuKrz9QVbcMfhd4BGriKBYfwb
What the screenshot shows is the per-second rate of increase of the
"total" number in the "mbuf clusters in use" line of the `netstat -m`
output for both routers. The green line is the active and the yellow
line is the passive router.
The drop in the green line and the following spike towards the end
(2000-2100ish) is me filtering the blackhole routes from the bird kernel
export, removing the filter to confirm, and re-adding it.
I have opened https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276870
in the FreeBSD end.
/Thomas
ps. The very rudimentary netstat -m exporter is here, needs jq and
sponge installed:
[tykling at dgncr2a ~]$ cat /etc/cron.d/netstat_mbuf_exporter
# Run netstat_mbuf_exporter.sh every minute and put the output in
prometheus textfile collector directory
* * * * * root /usr/local/bin/netstat_mbuf_exporter.sh |
/usr/local/bin/sponge /var/tmp/node_exporter/netstat-mbuf.prom
[tykling at dgncr2a ~]$ cat /usr/local/bin/netstat_mbuf_exporter.sh
#!/bin/sh
/usr/bin/netstat -m --libxo json | /usr/local/bin/jq -r
'."mbuf-statistics" | keys_unsorted[] as $k | "\($k) \(.[$k])"' |
/usr/bin/tr "-" "_" | /usr/bin/sed "s/^/freebsd_netstat_mbuf_/g"
[tykling at dgncr2a ~]$ head -5 /var/tmp/node_exporter/netstat-mbuf.prom
freebsd_netstat_mbuf_mbuf_current 1495568
freebsd_netstat_mbuf_mbuf_cache 3547
freebsd_netstat_mbuf_mbuf_total 1499115
freebsd_netstat_mbuf_cluster_current 749044
freebsd_netstat_mbuf_cluster_cache 3558
[tykling at dgncr2a ~]$
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Firefox_Screenshot_2024-02-07T15-06-31.373Z.png
Type: image/png
Size: 286724 bytes
Desc: not available
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20240207/79148ac5/attachment.png>
More information about the Bird-users
mailing list