No need to artificially limit the amount of available memory.
Suggestion from Ilya, so please contact him if you need more details.
Here is a short description on what should be done in this task in
The task could be finished in 2 steps (2 patches):
1. Stop providing default socket-mem if not configured, because it's
not required by DPDK. Rationale for this is the fact that OVS does
that historically, because it was not possible to use DPDK without
configuring socket-mem and OVS wanted to provide some sensible
default value, so users will not be obligated to specify anything
for a simple setup.
Current DPDK uses dynamic memory allocation by default and doesn't
require socket-mem option, which also changed its meaning from the
"total amount of allocated memory" to "amount of pre-allocated memory".
2. Stop matching socket-mem with socket-limit if socket-limit is not set.
If user configures socket-mem and doesn't configure socket-limit, this
should mean that user doesn't want the memory to be limited. If user
wants memory to be limited, they should configure socket-limit.
In general EAL arguments should look like this:
- dpdk-socket-mem=<not set>, dpdk-socket-limit=<not set>
current: "--scket-mem=1024,1024 --socket-limit=1024,1024"
step 1 : ""
step 2 : ""
- dpdk-socket-mem=<MEM>, dpdk-socket-limit=<not set>
current: "--scket-mem=MEM --socket-limit=MEM"
step 1 : "--scket-mem=MEM --socket-limit=MEM"
step 2 : "--scket-mem=MEM"
- dpdk-socket-mem=<not set>, dpdk-socket-limit=<LIMIT>
current: "--scket-mem=1024,1024 --socket-limit=LIMIT"
step 1 : "--socket-limit=LIMIT"
step 2 : "--socket-limit=LIMIT"
- dpdk-socket-mem=<MEM>, dpdk-socket-limit=<LIMIT>
current: "--scket-mem=MEM --socket-limit=LIMIT"
step 1 : "--scket-mem=MEM --socket-limit=LIMIT"
step 2 : "--scket-mem=MEM --socket-limit=LIMIT"
Above cases could be extrapolated to cases where values passed
via dpdk-extra. Also we should assume that if someone uses
'--legacy-mem'. they should have socket-mem configured one way or
another and OVS should not care about this scenario or try to add
some default values.