On Tue, Mar 1, 2022 at 12:25 PM Kevin Traynor <ktray...@redhat.com> wrote:
>
> There are currently some checks for cross-numa polling cases to
> ensure that they won't effect the accuracy of the PMD ALB.
>
> If an rxq is pinned to a pmd core by the user it will not be
> reassigned by OVS, so even if it is non-local numa polled it
> will not impact PMD ALB accuracy.
>
> To establish this, a check was made on whether the pmd core was
> isolated or not. However, since other_config:pmd-rxq-isolate was
> introduced, rxqs may be pinned but the pmd core not isolated.
>
> It means that by setting pmd-rxq-isolate=false and doing non-local
> numa pinning, PMD ALB may not run where it should.
>
> If the core is isolated we can skip individual rxq checks but if not,
> we should check the individual rxqs for pinning before we disallow
> PMD ALB.
>
> Fixes: 6193e03267c1 ("dpif-netdev: Allow pin rxq and non-isolate PMD.")
>
> Signed-off-by: Kevin Traynor <ktray...@redhat.com>
> ---
>  lib/dpif-netdev.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c
> index 9ae488d6e..9df41e0b6 100644
> --- a/lib/dpif-netdev.c
> +++ b/lib/dpif-netdev.c
> @@ -5697,9 +5697,12 @@ sched_numa_list_cross_numa_polling(struct 
> sched_numa_list *numa_list)
>
>              sched_pmd = &numa->pmds[i];
> +            if (sched_pmd->isolated) {
> +                continue;
> +            }
>              /* For each rxq. */
>              for (unsigned k = 0; k < sched_pmd->n_rxq; k++) {
>                  struct dp_netdev_rxq *rxq = sched_pmd->rxqs[k];
>
> -                if (!sched_pmd->isolated &&
> +                if (rxq->core_id == OVS_CORE_UNSPEC &&

Should this be an ||? Is there a case where core_id is set but cross numa?

>                      rxq->pmd->numa_id !=
>                          netdev_get_numa_id(rxq->port->netdev)) {
> --
> 2.34.1
>
> _______________________________________________
> dev mailing list
> d...@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>

Cheers,
M

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to