[ovs-dev] [PATCH v4 4/7] dpdk: enable cpu feature detection.

William Tu u9012063 at gmail.com
Sat Jun 27 18:27:00 UTC 2020


On Thu, Jun 18, 2020 at 9:53 AM Harry van Haaren
<harry.van.haaren at intel.com> wrote:
>
> This commit implements a method to retrieve the CPU ISA capabilities.
> These ISA capabilities can be used in OVS to at runtime select a function
> implementation to make the best use of the available ISA on the CPU.
>
> Signed-off-by: Harry van Haaren <harry.van.haaren at intel.com>
>
> ---
>
> v4:
> - Improve commit title and message
> ---
>  lib/dpdk-stub.c | 13 +++++++++++++
>  lib/dpdk.c      | 27 +++++++++++++++++++++++++++
>  lib/dpdk.h      |  2 ++
>  3 files changed, 42 insertions(+)
>
> diff --git a/lib/dpdk-stub.c b/lib/dpdk-stub.c
> index c332c217c..9935f3d2b 100644
> --- a/lib/dpdk-stub.c
> +++ b/lib/dpdk-stub.c
> @@ -79,6 +79,19 @@ print_dpdk_version(void)
>  {
>  }
>
> +int
> +dpdk_get_cpu_has_isa(const char *arch OVS_UNUSED,
> +                     const char *feature OVS_UNUSED)

should we just have bool as a return type?

> +{
> +    static struct ovsthread_once once = OVSTHREAD_ONCE_INITIALIZER;
> +    if (ovsthread_once_start(&once)) {
> +        VLOG_ERR("DPDK not supported in this version of Open vSwitch, "
> +                 "cannot use CPU flag based optimizations");
> +        ovsthread_once_done(&once);

How about using VLOG_ERR_ONCE()?

> +    }
> +    return 0;
and just return false here.

The rest looks good to me, thanks

William


More information about the dev mailing list