Skip to content

Commit

Permalink
dpdk: Stop configuring socket-limit with the value of socket-mem.
Browse files Browse the repository at this point in the history
This change removes the automatic memory limit on start-up of OVS with
DPDK. As DPDK supports dynamic memory allocation, there is no
need to limit the amount of memory available, if not requested.

Currently, if socket-limit is not configured, it is set to the value of
socket-mem. With this change, the user can decide to set it or have no
memory limit.

Removed logs that announce this change and fixed documentation.

Reported at: https://bugzilla.redhat.com/show_bug.cgi?id=1949850
Signed-off-by: Rosemarie O'Riorden <[email protected]>
Signed-off-by: Ilya Maximets <[email protected]>
  • Loading branch information
roseoriorden authored and igsilya committed Jul 26, 2021
1 parent a8621f4 commit de15afa
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 27 deletions.
4 changes: 4 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ Post-v2.16.0
* EAL argument --socket-mem is no longer configured by default upon
start-up. If dpdk-socket-mem and dpdk-alloc-mem are not specified,
DPDK defaults will be used.
* EAL argument --socket-limit no longer takes on the value of --socket-mem
by default. 'other_config:dpdk-socket-limit' can be set equal to
the 'other_config:dpdk-socket-mem' to preserve the legacy memory
limiting behavior.


v2.16.0 - xx xxx xxxx
Expand Down
20 changes: 0 additions & 20 deletions lib/dpdk.c
Original file line number Diff line number Diff line change
Expand Up @@ -405,26 +405,6 @@ dpdk_init__(const struct smap *ovs_other_config)
svec_add(&args, ovs_get_program_name());
construct_dpdk_args(ovs_other_config, &args);

if (!args_contains(&args, "--legacy-mem")
&& !args_contains(&args, "--socket-limit")) {
const char *arg;
size_t i;

SVEC_FOR_EACH (i, arg, &args) {
if (!strcmp(arg, "--socket-mem")) {
break;
}
}
if (i < args.n - 1) {
svec_add(&args, "--socket-limit");
svec_add(&args, args.names[i + 1]);
VLOG_INFO("Using default value for '--socket-limit'. OVS will no "
"longer provide a default for this argument starting "
"from 2.17 release. DPDK defaults will be used "
"instead.");
}
}

if (args_contains(&args, "-c") || args_contains(&args, "-l")) {
auto_determine = false;
}
Expand Down
8 changes: 1 addition & 7 deletions vswitchd/vswitch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -385,13 +385,7 @@
<code>0</code> will disable the limit for a particular socket.
</p>
<p>
If not specified, OVS will configure limits equal to the amount of
preallocated memory specified by <ref column="other_config"
key="dpdk-socket-mem"/> or <code>--socket-mem</code> in
<ref column="other_config" key="dpdk-extra"/>. If none of the above
options specified or <code>--legacy-mem</code> provided in
<ref column="other_config" key="dpdk-extra"/>, limits will not be
applied. There is no default value from OVS.
If not specified, OVS will not configure limits by default.
Changing this value requires restarting the daemon.
</p>
</column>
Expand Down

0 comments on commit de15afa

Please sign in to comment.