Adding up to MAX_VHOST vhost_user sockets breaks openvswitch-dpdk
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
dpdk (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
openvswitch-dpdk (Ubuntu) |
Invalid
|
High
|
Unassigned |
Bug Description
I'm still debugging this, but wanted to report it in the current state in case someone else encounters the same issue.
I was doing limits testing and among others I tried to add all possible vhost_user ports to a openvsiwtch-dpdk bridge.
Doing so always ends up in a crashing vswitch.
It pretends to have an out of memory issue (not the OS, but in the dpdk lib), but I'm not trusting that yet.
The reason is that upping the memory x5 doesn't change a thing.
Changing the number of used rxq per PMD seems to change the number (the less rxq the higher - from 722 to 831, but not 1024).
But the relation is not linear and even keeping the default of one rxq doesn't get me working 1024 ports.
This also kills the old ports
From ovs-vsctl show:
Port "vhost-user-1"
Also in the log is for each of them:
ovs-vsctl: Error detected while setting up 'vhost-user-826'. See ovs-vswitchd log for details.
The log in /var/log/
It seems to repeat existing things for every port added
823M logfile in just a few minutes.
I'll attach a snippets of various logfiles and a stack trace.
Next steps:
Keep GDB attached while running look at dpdk_rte_mzalloc -> rte_zmalloc
description: | updated |
Seems to be the same as a discussion already started
http:// article. gmane.org/ gmane.comp. networking. dpdk.devel/ 37025/match= patrik+ andersson dpdk.org/ dev/patchwork/ patch/11581/
http://
Joining the discussion there and trying to verify the accepted outcome vs our test.