On 11/30/21 22:31, Mike Pattrick wrote: > If anonymous memory mapping is supported by the kernel, it's better > to run OVS entirely in memory rather than creating shared data > structures. OVS doesn't work in multi-process mode, so there is no need > to litter a filesystem and experience random crashes due to old memory > chunks stored in re-opened files. > > When OVS is not running in memory and crashes, it never reaches the > clean up scripts that delete the new files it has created, resulting in > "dirty" memory. OVS will partially overwrite this memory on the next > start-up, but will fail to run again because its filesystem is full of > old memory. > > Here is an example of these crashes: > https://inbox.dpdk.org/dev/20200910162407.12669-1-david.march...@redhat.com/ > > Reported-at: https://bugzilla.redhat.com/show_bug.cgi?id=1949849 > Signed-off-by: Rosemarie O'Riorden <rorio...@redhat.com> > Signed-off-by: Mike Pattrick <m...@redhat.com>
Hi, Mike. I'm not sure why did you re-send this patch. The original one was fine. It only needed a minor NEWS rebase. And you didn't address David's concerns about the commit message anyway. The main problem I see here is that you actually hijacked the authorship of the change. You need to preserve the original 'From' when you're re-posting someone else's patches. Git will add a correct 'From' header automatically during the 'git format-patch' if the authorship of the patch is correct in your git tree. Not a big problem. But sending this reply as a note for myself and other maintainers, that the original authorship has to be restored before applying. And there is no need to add your sign-off if you didn't actually made any code changes. And since we're here, it should have been v2. Just "PATCH" without a version is equal to "PATCH v1". Best regards, Ilya Maximets. > --- > NEWS | 1 + > acinclude.m4 | 6 ++++++ > lib/dpdk.c | 7 +++++++ > 3 files changed, 14 insertions(+) > > diff --git a/NEWS b/NEWS > index dce1aeb2b..f3015c664 100644 > --- a/NEWS > +++ b/NEWS > @@ -10,6 +10,7 @@ Post-v2.16.0 > limiting behavior. > * Add hardware offload support for matching IPv4/IPv6 frag types > (experimental). > + * EAL argument --in-memory is applied by default if supported. > - Python: > * For SSL support, the use of the pyOpenSSL library has been replaced > with the native 'ssl' module. > diff --git a/acinclude.m4 b/acinclude.m4 > index 8ab690f47..700a0ce15 100644 > --- a/acinclude.m4 > +++ b/acinclude.m4 > @@ -472,6 +472,12 @@ AC_DEFUN([OVS_CHECK_DPDK], [ > ], [[#include <rte_config.h>]]) > ], [], [[#include <rte_config.h>]]) > > + AC_CHECK_DECL([MAP_HUGE_SHIFT], [ > + AC_DEFINE([DPDK_IN_MEMORY_SUPPORTED], [1], [If MAP_HUGE_SHIFT is > + defined, anonomous memory mapping is supported by the s/anonomous/anonymous/ Just noticed. Can be fixed on commit. > + kernel, and --in-memory can be used.]) > + ], [], [[#include <sys/mman.h>]]) > + > # DPDK uses dlopen to load plugins. > OVS_FIND_DEPENDENCY([dlopen], [dl], [libdl]) > > diff --git a/lib/dpdk.c b/lib/dpdk.c > index b2ef31cd2..6cdd69bd2 100644 > --- a/lib/dpdk.c > +++ b/lib/dpdk.c > @@ -405,6 +405,13 @@ dpdk_init__(const struct smap *ovs_other_config) > svec_add(&args, ovs_get_program_name()); > construct_dpdk_args(ovs_other_config, &args); > > +#ifdef DPDK_IN_MEMORY_SUPPORTED > + if (!args_contains(&args, "--in-memory") && > + !args_contains(&args, "--legacy-mem")) { > + svec_add(&args, "--in-memory"); > + } > +#endif > + > if (args_contains(&args, "-c") || args_contains(&args, "-l")) { > auto_determine = false; > } > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev