mbox series

[v1,00/20] net/txgbe: add VF driver support

Message ID 20210122094800.197748-1-jiawenwu@trustnetic.com (mailing list archive)
Headers show
Series net/txgbe: add VF driver support | expand

Message

Jiawen Wu Jan. 22, 2021, 9:47 a.m. UTC
This patch adds txgbevf PMD as a part of txgbe PMD.

Jiawen Wu (20):
  net/txgbe: add ethdev probe and remove for VF device
  net/txgbe: add base code for VF driver
  net/txgbe: support add and remove VF device MAC address
  net/txgbe: get VF device information
  net/txgbe: add interrupt operation for VF device
  net/txgbe: get link status of VF device
  net/txgbe: add Rx and Tx unit init for VF device
  net/txgbe: add VF device stats and xstats get operation
  net/txgbe: add VLAN handle support to VF driver
  net/txgbe: add RSS support for VF device
  net/txgbe: add VF device promiscuous and allmulticast mode
  net/txgbe: support multicast MAC filter for VF driver
  net/txgbe: support to update MTU on VF device
  net/txgbe: support register dump on VF device
  net/txgbe: start and stop VF device
  net/txgbe: add some supports as PF driver implemented
  net/txgbe: support VF representor
  net/txgbe: hardware support for VF representor
  net/txgbe: support VLAN filter for VF representor
  doc: update release note for txgbe

 doc/guides/nics/features/txgbe_vf.ini    |   40 +
 doc/guides/rel_notes/release_21_02.rst   |    1 +
 drivers/net/txgbe/base/meson.build       |    1 +
 drivers/net/txgbe/base/txgbe.h           |    1 +
 drivers/net/txgbe/base/txgbe_hw.c        |    5 +
 drivers/net/txgbe/base/txgbe_mbx.c       |  354 ++++++
 drivers/net/txgbe/base/txgbe_mbx.h       |   18 +
 drivers/net/txgbe/base/txgbe_regs.h      |   49 +
 drivers/net/txgbe/base/txgbe_type.h      |    7 +
 drivers/net/txgbe/base/txgbe_vf.c        |  662 +++++++++++
 drivers/net/txgbe/base/txgbe_vf.h        |   61 +
 drivers/net/txgbe/meson.build            |    3 +
 drivers/net/txgbe/rte_pmd_txgbe.c        |  123 ++
 drivers/net/txgbe/rte_pmd_txgbe.h        |   60 +
 drivers/net/txgbe/txgbe_ethdev.c         |   71 +-
 drivers/net/txgbe/txgbe_ethdev.h         |   21 +
 drivers/net/txgbe/txgbe_ethdev_vf.c      | 1388 ++++++++++++++++++++++
 drivers/net/txgbe/txgbe_rxtx.c           |  367 +++++-
 drivers/net/txgbe/txgbe_vf_representor.c |  195 +++
 19 files changed, 3374 insertions(+), 53 deletions(-)
 create mode 100644 doc/guides/nics/features/txgbe_vf.ini
 create mode 100644 drivers/net/txgbe/base/txgbe_vf.c
 create mode 100644 drivers/net/txgbe/base/txgbe_vf.h
 create mode 100644 drivers/net/txgbe/rte_pmd_txgbe.c
 create mode 100644 drivers/net/txgbe/txgbe_ethdev_vf.c
 create mode 100644 drivers/net/txgbe/txgbe_vf_representor.c

Comments

Ferruh Yigit Feb. 2, 2021, 6:07 p.m. UTC | #1
On 1/22/2021 9:47 AM, Jiawen Wu wrote:
> This patch adds txgbevf PMD as a part of txgbe PMD.
> 
> Jiawen Wu (20):
>    net/txgbe: add ethdev probe and remove for VF device
>    net/txgbe: add base code for VF driver
>    net/txgbe: support add and remove VF device MAC address
>    net/txgbe: get VF device information
>    net/txgbe: add interrupt operation for VF device
>    net/txgbe: get link status of VF device
>    net/txgbe: add Rx and Tx unit init for VF device
>    net/txgbe: add VF device stats and xstats get operation
>    net/txgbe: add VLAN handle support to VF driver
>    net/txgbe: add RSS support for VF device
>    net/txgbe: add VF device promiscuous and allmulticast mode
>    net/txgbe: support multicast MAC filter for VF driver
>    net/txgbe: support to update MTU on VF device
>    net/txgbe: support register dump on VF device
>    net/txgbe: start and stop VF device
>    net/txgbe: add some supports as PF driver implemented
>    net/txgbe: support VF representor
>    net/txgbe: hardware support for VF representor
>    net/txgbe: support VLAN filter for VF representor
>    doc: update release note for txgbe
> 

Hi Jiawen,

I put some comments on some patches, can you please send a new version with updates?

And I want to note that it is specially hard to review this PMD because it is 
clone of complete and complex ixgbe driver.
So most of the code is already ready, we are tying to structure it logically for 
upstreaming it but it is not possible to review the details of this much feature 
in this short time.

For those feature we are relying on the Wangxun to test all these features, and 
to confirm this, can it be possible for Wangxun to send some test results for 
this release?

Similar to those reports:
https://patches.dpdk.org/patch/84436/
https://patches.dpdk.org/patch/84500/
https://patches.dpdk.org/patch/84517/


Also quick test results for the -rc2 & -rc3 can be very helpful, if you can 
provide, like:
http://inbox.dpdk.org/dev/c2bd98a6da8d4955b19b8838c9bf60b7@intel.com/#t
http://inbox.dpdk.org/dev/92ce632a-dc21-f50c-d4d6-85e7961b6e3b@linux.vnet.ibm.com/#t

Thanks,
ferruh
Jiawen Wu Feb. 3, 2021, 7:48 a.m. UTC | #2
On February 3, 2021 2:08 AM, Ferruh Yigit wrote:
> On 1/22/2021 9:47 AM, Jiawen Wu wrote:
> > This patch adds txgbevf PMD as a part of txgbe PMD.
> >
> > Jiawen Wu (20):
> >    net/txgbe: add ethdev probe and remove for VF device
> >    net/txgbe: add base code for VF driver
> >    net/txgbe: support add and remove VF device MAC address
> >    net/txgbe: get VF device information
> >    net/txgbe: add interrupt operation for VF device
> >    net/txgbe: get link status of VF device
> >    net/txgbe: add Rx and Tx unit init for VF device
> >    net/txgbe: add VF device stats and xstats get operation
> >    net/txgbe: add VLAN handle support to VF driver
> >    net/txgbe: add RSS support for VF device
> >    net/txgbe: add VF device promiscuous and allmulticast mode
> >    net/txgbe: support multicast MAC filter for VF driver
> >    net/txgbe: support to update MTU on VF device
> >    net/txgbe: support register dump on VF device
> >    net/txgbe: start and stop VF device
> >    net/txgbe: add some supports as PF driver implemented
> >    net/txgbe: support VF representor
> >    net/txgbe: hardware support for VF representor
> >    net/txgbe: support VLAN filter for VF representor
> >    doc: update release note for txgbe
> >
> 
> Hi Jiawen,
> 
> I put some comments on some patches, can you please send a new version
> with updates?
> 
> And I want to note that it is specially hard to review this PMD because it is
> clone of complete and complex ixgbe driver.
> So most of the code is already ready, we are tying to structure it logically for
> upstreaming it but it is not possible to review the details of this much feature in
> this short time.
> 
> For those feature we are relying on the Wangxun to test all these features, and
> to confirm this, can it be possible for Wangxun to send some test results for
> this release?
>

Hi Ferruh,

Should I provide test results of PF part applied to the main repo, and VF part with
some modifications? I mean, the latest version that I format the patches.

> Similar to those reports:
> https://patches.dpdk.org/patch/84436/
> https://patches.dpdk.org/patch/84500/
> https://patches.dpdk.org/patch/84517/
> 

Those reports show the NICs supported platforms. All features in dts report don't
to be needed, do they?

> 
> Also quick test results for the -rc2 & -rc3 can be very helpful, if you can provide,
> like:
> http://inbox.dpdk.org/dev/c2bd98a6da8d4955b19b8838c9bf60b7@intel.com/#
> t
> http://inbox.dpdk.org/dev/92ce632a-dc21-f50c-d4d6-85e7961b6e3b@linux.vne
> t.ibm.com/#t
> 
> Thanks,
> ferruh
Ferruh Yigit Feb. 10, 2021, 1:24 p.m. UTC | #3
On 2/3/2021 7:48 AM, Jiawen Wu wrote:
> On February 3, 2021 2:08 AM, Ferruh Yigit wrote:
>> On 1/22/2021 9:47 AM, Jiawen Wu wrote:
>>> This patch adds txgbevf PMD as a part of txgbe PMD.
>>>
>>> Jiawen Wu (20):
>>>     net/txgbe: add ethdev probe and remove for VF device
>>>     net/txgbe: add base code for VF driver
>>>     net/txgbe: support add and remove VF device MAC address
>>>     net/txgbe: get VF device information
>>>     net/txgbe: add interrupt operation for VF device
>>>     net/txgbe: get link status of VF device
>>>     net/txgbe: add Rx and Tx unit init for VF device
>>>     net/txgbe: add VF device stats and xstats get operation
>>>     net/txgbe: add VLAN handle support to VF driver
>>>     net/txgbe: add RSS support for VF device
>>>     net/txgbe: add VF device promiscuous and allmulticast mode
>>>     net/txgbe: support multicast MAC filter for VF driver
>>>     net/txgbe: support to update MTU on VF device
>>>     net/txgbe: support register dump on VF device
>>>     net/txgbe: start and stop VF device
>>>     net/txgbe: add some supports as PF driver implemented
>>>     net/txgbe: support VF representor
>>>     net/txgbe: hardware support for VF representor
>>>     net/txgbe: support VLAN filter for VF representor
>>>     doc: update release note for txgbe
>>>
>>
>> Hi Jiawen,
>>
>> I put some comments on some patches, can you please send a new version
>> with updates?
>>
>> And I want to note that it is specially hard to review this PMD because it is
>> clone of complete and complex ixgbe driver.
>> So most of the code is already ready, we are tying to structure it logically for
>> upstreaming it but it is not possible to review the details of this much feature in
>> this short time.
>>
>> For those feature we are relying on the Wangxun to test all these features, and
>> to confirm this, can it be possible for Wangxun to send some test results for
>> this release?
>>
> 
> Hi Ferruh,
> 
> Should I provide test results of PF part applied to the main repo, and VF part with
> some modifications? I mean, the latest version that I format the patches.
> 

Hi Jiawen,

Sorry for the delay, I wasn't sure how to put this, there is no official defined 
process around it for now.

Testing reports can help on both:
1) A release with a new PMD can put some proof that new PMD is working as expected.
2) Gives some confidence for new patches to be merged.


>> Similar to those reports:
>> https://patches.dpdk.org/patch/84436/
>> https://patches.dpdk.org/patch/84500/
>> https://patches.dpdk.org/patch/84517/
>>
> 
> Those reports show the NICs supported platforms. All features in dts report don't
> to be needed, do they?
> 

This is to cover the case 1) above, as you said this is to document the 
platform/NIC tested for that release.

>>
>> Also quick test results for the -rc2 & -rc3 can be very helpful, if you can provide,
>> like:
>> http://inbox.dpdk.org/dev/c2bd98a6da8d4955b19b8838c9bf60b7@intel.com/#
>> t
>> http://inbox.dpdk.org/dev/92ce632a-dc21-f50c-d4d6-85e7961b6e3b@linux.vne
>> t.ibm.com/#t
>>

And this is for 2) above, it can have more details on the features tested, so it 
gives confidence and gives chance to detect and fix defect for the release.