Solved Network performance tuning question

Hello,

I see the following log messages related to network (hn- synthetic Hyper-V network interface):
Code:
% tail /var/log/messages
Aug 25 09:44:58 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 09:44:58 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 09:44:58 rgt011fw kernel: hn0: exceed max page buffers,35,32
Aug 25 09:44:58 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 09:44:58 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 09:54:18 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 09:54:18 rgt011fw kernel: hn0: exceed max page buffers,36,32
Aug 25 09:54:18 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 09:54:18 rgt011fw kernel: hn0: exceed max page buffers,37,32
Aug 25 10:15:38 rgt011fw kernel: hn0: exceed max page buffers,35,32
Which /boot/loader.conf params should be used tuned to fix this?
Code:
% freebsd-version
10.2-RELEASE-p1
 
Last edited by a moderator:
Hello Alexander237,

Today I installed FreeBSD 10.2 on a HyperV 2012 host and I noticed the same problem you're talking about.

I noticed that hn0 uses TSO by default:
Code:
# ifconfig hn0
hn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=31b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,TSO4,TSO6>
I tried to disable TSO with ifconfig hn0 -tso and the problem apparently disappeared.

After issuing the command ifconfig hn0 -tso you can check that TSO is disabled issuing again an ifconfig hn0, the interface now looks like:
Code:
# ifconfig hn0
hn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING>
To disable TSO at boot time edit /etc/rc.conf and add to ifconfig_hn0 the parameter "-tso", here is an example:
Code:
ifconfig_hn0="inet 192.168.0.254 netmask 255.255.255.0 -tso"
Hope this can help you.

Kind Regards,
Davide
 
Back
Top