> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Tuesday, March 7, 2017 7:14 PM
> To: Zhang, Qi Z <qi.z.zh...@intel.com>; Wu, Jingjing <jingjing...@intel.com>;
> Zhang, Helin <helin.zh...@intel.com>
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 2/2] app/testpmd: enable VF untag drop in
> testpmd
>
> On 3/3/2017 1:59 AM, Qi Zhang wrote:
> > Add command line to support untag drop to specific VF in testpmd.
> >
> > Signed-off-by: Qi Zhang <qi.z.zh...@intel.com>
> > ---
> > app/test-pmd/cmdline.c | 104
> > +++++++++++++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 104 insertions(+)
> >
> > diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c index
> > 43fc636..4ddc2c9 100644
> > --- a/app/test-pmd/cmdline.c
> > +++ b/app/test-pmd/cmdline.c
> > @@ -311,6 +311,10 @@ static void cmd_help_long_parsed(void
> > *parsed_result,
> >
> > "set vf vlan antispoof (port_id) (vf_id) (on|off)\n"
> > " Set VLAN antispoof for a VF from the PF.\n\n"
> > +#ifdef RTE_LIBRTE_I40E_PMD
> > + "set vf vlan untagdrop (port_id) (vf_id) (on|off)\n"
> > + " Set VLAN untag drop for a VF from the PF.\n\n"
> > +#endif
>
> We should decide how to implement PMD specific APIs in testpmd, and be
> consistent about it.
>
> Currently there are two approaches:
>
> 1- Wrap PMD specific feature and API with and PMD #ifdef, as done here.
>
> 2- Enable feature by default, return -ENOTSUP for port_id that does not
> support
> it. Ex: cmd_vf_rxvlan_filter.
>
> I am for second option. And explicitly not disabling I40E driver does not mean
> you should have those NICs in your runtime environment, so the effect will be
> same as always enabling it.
>
Yes, I notice this problem, during implementation, I saw both patterns exist,
so I have to choose one of them
We'd better align this.
Both option ok for me, but a little bit prefer option 1 , since it's not
necessary to explore a command if no backend device, that make the hint more
clean.
>
> And since number of PMD specific APIs are increasing, perhaps we should find a
> better approach for testpmd to prevent them corrupting testpmd.
Will think about this, also like to know if you or anyone have any good
suggestion.
>
> Also it may worth to discuss why number of PMD specific APIs are increasing.
>
> >
> > "set vf vlan tag (port_id) (vf_id) (on|off)\n"
> > " Set VLAN tag for a VF from the PF.\n\n"
> > @@ -10995,6 +10999,103 @@ cmdline_parse_inst_t
> cmd_set_vf_vlan_anti_spoof = {
> > },
> > };
> >
> <...>