> -----Original Message-----
> From: oulijun <ouli...@huawei.com>
> Sent: Wednesday, March 24, 2021 21:40
> To: linux...@openeuler.org; Li, Xiaoyun <xiaoyun...@intel.com>; dev
> <dev@dpdk.org>
> Subject: Re: [Linuxarm] Re: [PATCH 1/3] app/testpmd: fix forwarding
> configuration when DCB test
> 
> 
> 
> 在 2021/3/24 10:03, Li, Xiaoyun 写道:
> >
> >
> >> -----Original Message-----
> >> From: oulijun <ouli...@huawei.com>
> >> Sent: Tuesday, March 23, 2021 22:19
> >> To: Li, Xiaoyun <xiaoyun...@intel.com>; Yigit, Ferruh
> >> <ferruh.yi...@intel.com>
> >> Cc: dev@dpdk.org; linux...@openeuler.org
> >> Subject: Re: [PATCH 1/3] app/testpmd: fix forwarding configuration
> >> when DCB test
> >>
> > <snip>
> >>>> @@ -2707,14 +2707,16 @@ stop_port(portid_t pid)
> >>>>          portid_t peer_pl[RTE_MAX_ETHPORTS];
> >>>>          int peer_pi;
> >>>>
> >>>> -        if (dcb_test) {
> >>>> -                dcb_test = 0;
> >>>> -                dcb_config = 0;
> >>>> -        }
> >>>> -
> >>>>          if (port_id_is_invalid(pid, ENABLED_WARN))
> >>>>                  return;
> >>>>
> >>>> +        /*
> >>>> +         * In "start_port" function, dcb_test is set to 1 based on 
> >>>> dcb_config.
> >>>> +         * So it should be cleared when dcb_config is 0.
> >>>> +         */
> >>>> +        if (dcb_config == 0)
> >>>> +                dcb_test = 0;
> >>>> +
> >>>
> >>> I don't understand why are you changing this.
> >>> dcb_test will only be set when dcb_config is 1 when starting ports.
> >>> And both
> >> dcb_test and dcb_config will be cleared when stopping ports.
> >>> So dcb will only affect when you set port dcb and then start port
> >>> and when
> >> stop port dcb will be cleared.
> >>>
> >> Yes, I think. The forwarding streams should not be changed from
> >> "dcb_fwd_config_setup" to "rss_fwd_config_setup" after dcb info is
> configured.
> >> But, now, the logical codes do it when stopping ports and then starting 
> >> ports.
> >>> So what's the problem of original codes?
> >>>
> >>> Your change will cause issues that there's no place to set
> >>> dcb_config as 0. If
> >> you config dcb, then it'll be always dcb mode unless restart the whole
> testpmd.
> >>>
> >> As far as I know, the current testpmd only supports switching from
> >> the normal mode to the dcb mode, but does not support the reverse
> operation.
> >> And " dcb_config" is set to 1, and then "dcb_test" is set to 1 after
> >> config.
> >
> > You're not answering my questions. Why are you changing the behavior of
> testpmd?
> > Your change will make testpmd stay dcb mode once set dcb mode and can't go
> back to normal mode. If users want to go back to normal mode, he/she has to
> restart the whole testpmd.
> >
> Yes. Testpmd and PMD driver are both in dcb mode after dcb info is configured.
> In my opinion, the 'dcb_test' flag can't be clear to go back to normal mode 
> after
> stopping port and then starting port. Because PMD driver is still dcb mode. If
> users want to go back it, users should disable dcb mode and enable RSS or 
> other
> mode.
> 
> > It worked as you can set dcb mode and start port. After stopping port, if 
> > you
> still want dcb mode, you need to set dcb mode command again. But at least the
> old way won't break anything.
> > @Yigit, Ferruh Not sure which behavior is better, what do you think?
> >
> > And @oulijun can you just answer all comments in one thread?
> >
> After stopping port, the 'dcb_test' flag is clear. At this moment, the dcb
> configuration in testpmd has not be changed.  users may not understand why
> the DCB mode needs to be reconfigured.

OK. You're right. There's no place writing port->dcb_flag back to 0.

> >>>>          printf("Stopping ports...\n");
> >>>>
> >>>>          RTE_ETH_FOREACH_DEV(pi) {
> >>>> --
> >>>> 2.7.4
> >>>
> >>> .
> >>>
> > _______________________________________________
> > Linuxarm mailing list -- linux...@openeuler.org To unsubscribe send an
> > email to linuxarm-le...@openeuler.org
> >

Reply via email to