On Wed, 2020-12-09 at 17:50 +0000, Richardson, Bruce wrote: > > -----Original Message----- > > From: Ilya Maximets <ilya.maxim...@gmail.com> > > Sent: Wednesday, December 9, 2020 4:29 PM > > To: Luca Boccassi <bl...@debian.org>; Ilya Maximets <i.maxim...@ovn.org>; > > Stokes, Ian <ian.sto...@intel.com>; d...@openvswitch.org; Richardson, Bruce > > <bruce.richard...@intel.com> > > Cc: ktray...@redhat.com; david.march...@redhat.com; Pai G, Sunil > > <sunil.pa...@intel.com>; el...@nvidia.com; > > christian.ehrha...@canonical.com > > Subject: Re: [PATCH v2 1/1] dpdk: Update to use DPDK v20.11. > > > > On 12/9/20 5:21 PM, Luca Boccassi wrote: > > > On Wed, 2020-12-09 at 16:53 +0100, Ilya Maximets wrote: > > > > On 12/2/20 2:01 PM, Ian Stokes wrote: > > > > > This commit adds support for DPDK v20.11, it includes the following > > > > > changes. > > > > > > .. > > > > > > > > CFLAGS="$ovs_save_CFLAGS" > > > > > LDFLAGS="$ovs_save_LDFLAGS" > > > > > - if test "$DPDK_AUTO_DISCOVER" = "false"; then > > > > > - OVS_LDFLAGS="$OVS_LDFLAGS -L$DPDK_LIB_DIR" > > > > > - fi > > > > > OVS_CFLAGS="$OVS_CFLAGS $DPDK_INCLUDE" > > > > > > > > I noticed that DPDK puts -march=something into clfags. That is not a > > good thing > > > > to have as this could mess up user-provided flags to build OVS. This > > 'march' was > > > > used to build DPDK and should not be passed to OVS. > > > > We should, probably, strip this thing out. > > > > > > We do that intentionally because it's a minimum requirement for all > > > applications linking to DPDK libraries. I do not recall exactly where > > > the requirement comes from, I think it was from some static inline > > > functions defined in some public headers and used by applications. > > > > > > > After a brief discussion with David it seems that this flag could be > > removed since RTE_MACHINE_CPUFLAG_XX removed in 20.11. > > David, Bruce, could you, please, comment on this. > > > > Anyway, this flag raises the minimal CPU requirement for those who > > doesn't want to use DPDK, but uses OVS that happened to be compiled > > with DPDK support. Maybe that is OK, I'm not sure. But this also > > suppresses compiler optimizations for those who building OVS with > > DPDK provided by some distribution. e.g. distributions will, probably, > > build DPDK with -Dmachine=default and that will force -march=corei7 > > for the OVS regardless of the current CPU the user wants to build on. > > > > Best regards, Ilya Maximets. > > I've run some tests using the DPDK examples and unfortunately there are still > some header files which will throw compiler errors if the -march flag is not > present, because they assume at minimum of SSE4.2. > > Question: how serious an issue is having an SSE4.2 minimum requirement? If > it's > not a big deal, I'd suggest we just update the .pc file from having an > "march=" > flag to having "-msse4.2" flag to avoid being too proscriptive. (i.e. avoid > the > second case mentioned where the -march=corei7 overrides the user's choice) > If it is a more serious issue, we'll have to check what can be done for the > individual headers that require SSE4.2 and see if we can remove that > requirement. > > Regards, > /Bruce
IIRC we had the same problems on ARM, but can't recall exactly. -- Kind regards, Luca Boccassi _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev