mbox series

[0/6] dpdk pktio: enable hardware checksum support

Message ID 1496241660-27492-1-git-send-email-bogdan.pricope@linaro.org
Headers show
Series dpdk pktio: enable hardware checksum support | expand

Message

Bogdan Pricope May 31, 2017, 2:40 p.m. UTC
Add HW checksum calculation/validation support for dpdk pktio.
No UDP/TCP HW checksum calculation/validation support for:
 - IPv4 fragments
 - IPv6 packets with extension headers (including fragments)

Bogdan Pricope (6):
  Initialize pktio configuration structure
  dpdk: retrieve offload capabilities
  dpdk: enable per pktio RX IP/UDP/TCP checksum offload
  dpdk: RX - process checksum validation offload flags
  dpdk: TX - set checksum calculation offload flags
  examples: generator: update odp_generator to use HW checksum
    capabilities

 example/generator/odp_generator.c      | 107 ++++++++++++++---
 platform/linux-generic/odp_packet_io.c |   2 +
 platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-
 3 files changed, 293 insertions(+), 19 deletions(-)

-- 
1.9.1

Comments

Elo, Matias (Nokia - FI/Espoo) June 1, 2017, 7:32 a.m. UTC | #1
> On 31 May 2017, at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

> 

> Add HW checksum calculation/validation support for dpdk pktio.

> No UDP/TCP HW checksum calculation/validation support for:

> - IPv4 fragments

> - IPv6 packets with extension headers (including fragments)

> 

> Bogdan Pricope (6):

>  Initialize pktio configuration structure

>  dpdk: retrieve offload capabilities

>  dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>  dpdk: RX - process checksum validation offload flags

>  dpdk: TX - set checksum calculation offload flags

>  examples: generator: update odp_generator to use HW checksum

>    capabilities

> 

> example/generator/odp_generator.c      | 107 ++++++++++++++---

> platform/linux-generic/odp_packet_io.c |   2 +

> platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-

> 3 files changed, 293 insertions(+), 19 deletions(-)

> 

> -- 

> 1.9.1

> 



As I commented to the RFC, this patch set is missing RX packet parsing. Without
it being part of this set the next step would require removing the code added in
'dpdk: RX - process checksum validation offload flags'. The packet parsing function
could also be used by odp-dpdk.

-Matias
Bogdan Pricope June 6, 2017, 7:32 a.m. UTC | #2
Hi Matias,

This patch series is about checksum only. Generally, there is not a
good idea to add changes for multiple features in a single patch set.
I don't see a benefit in adding RX packet parsing function (setting L3
/L4 flags from info provided by dpdk) with this patch set... or a big
code remove when will be done.

On 1 June 2017 at 10:32, Elo, Matias (Nokia - FI/Espoo)
<matias.elo@nokia.com> wrote:
>

>> On 31 May 2017, at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

>>

>> Add HW checksum calculation/validation support for dpdk pktio.

>> No UDP/TCP HW checksum calculation/validation support for:

>> - IPv4 fragments

>> - IPv6 packets with extension headers (including fragments)

>>

>> Bogdan Pricope (6):

>>  Initialize pktio configuration structure

>>  dpdk: retrieve offload capabilities

>>  dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>>  dpdk: RX - process checksum validation offload flags

>>  dpdk: TX - set checksum calculation offload flags

>>  examples: generator: update odp_generator to use HW checksum

>>    capabilities

>>

>> example/generator/odp_generator.c      | 107 ++++++++++++++---

>> platform/linux-generic/odp_packet_io.c |   2 +

>> platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-

>> 3 files changed, 293 insertions(+), 19 deletions(-)

>>

>> --

>> 1.9.1

>>

>

>

> As I commented to the RFC, this patch set is missing RX packet parsing. Without

> it being part of this set the next step would require removing the code added in

> 'dpdk: RX - process checksum validation offload flags'. The packet parsing function

> could also be used by odp-dpdk.

>

> -Matias

>
Bogdan Pricope June 20, 2017, 9:20 a.m. UTC | #3
Ping?

On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:
> Add HW checksum calculation/validation support for dpdk pktio.

> No UDP/TCP HW checksum calculation/validation support for:

>  - IPv4 fragments

>  - IPv6 packets with extension headers (including fragments)

>

> Bogdan Pricope (6):

>   Initialize pktio configuration structure

>   dpdk: retrieve offload capabilities

>   dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>   dpdk: RX - process checksum validation offload flags

>   dpdk: TX - set checksum calculation offload flags

>   examples: generator: update odp_generator to use HW checksum

>     capabilities

>

>  example/generator/odp_generator.c      | 107 ++++++++++++++---

>  platform/linux-generic/odp_packet_io.c |   2 +

>  platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-

>  3 files changed, 293 insertions(+), 19 deletions(-)

>

> --

> 1.9.1

>
Bogdan Pricope July 19, 2017, 1:35 p.m. UTC | #4
Ping?

We still want this for odp-linux or we should implement it on odp-dpdk
only (as soon as repository is updated)?

/B

On 20 June 2017 at 12:20, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:
> Ping?

>

> On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

>> Add HW checksum calculation/validation support for dpdk pktio.

>> No UDP/TCP HW checksum calculation/validation support for:

>>  - IPv4 fragments

>>  - IPv6 packets with extension headers (including fragments)

>>

>> Bogdan Pricope (6):

>>   Initialize pktio configuration structure

>>   dpdk: retrieve offload capabilities

>>   dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>>   dpdk: RX - process checksum validation offload flags

>>   dpdk: TX - set checksum calculation offload flags

>>   examples: generator: update odp_generator to use HW checksum

>>     capabilities

>>

>>  example/generator/odp_generator.c      | 107 ++++++++++++++---

>>  platform/linux-generic/odp_packet_io.c |   2 +

>>  platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-

>>  3 files changed, 293 insertions(+), 19 deletions(-)

>>

>> --

>> 1.9.1

>>
Maxim Uvarov July 20, 2017, 8:16 p.m. UTC | #5
Krishna, Matias, please review dpdk changes.

Maxim.

On 07/19/17 16:35, Bogdan Pricope wrote:
> Ping?

> 

> We still want this for odp-linux or we should implement it on odp-dpdk

> only (as soon as repository is updated)?

> 

> /B

> 

> On 20 June 2017 at 12:20, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

>> Ping?

>>

>> On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

>>> Add HW checksum calculation/validation support for dpdk pktio.

>>> No UDP/TCP HW checksum calculation/validation support for:

>>>  - IPv4 fragments

>>>  - IPv6 packets with extension headers (including fragments)

>>>

>>> Bogdan Pricope (6):

>>>   Initialize pktio configuration structure

>>>   dpdk: retrieve offload capabilities

>>>   dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>>>   dpdk: RX - process checksum validation offload flags

>>>   dpdk: TX - set checksum calculation offload flags

>>>   examples: generator: update odp_generator to use HW checksum

>>>     capabilities

>>>

>>>  example/generator/odp_generator.c      | 107 ++++++++++++++---

>>>  platform/linux-generic/odp_packet_io.c |   2 +

>>>  platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-

>>>  3 files changed, 293 insertions(+), 19 deletions(-)

>>>

>>> --

>>> 1.9.1

>>>
Elo, Matias (Nokia - FI/Espoo) July 21, 2017, 5:53 a.m. UTC | #6
I'm starting my vacation today and have more acute things on my plate, so I don't unfortunately have time to review the patch for a couple of weeks.

-Matias

> On 20 Jul 2017, at 23:16, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

> 

> Krishna, Matias, please review dpdk changes.

> 

> Maxim.

> 

> On 07/19/17 16:35, Bogdan Pricope wrote:

>> Ping?

>> 

>> We still want this for odp-linux or we should implement it on odp-dpdk

>> only (as soon as repository is updated)?

>> 

>> /B

>> 

>> On 20 June 2017 at 12:20, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

>>> Ping?

>>> 

>>> On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

>>>> Add HW checksum calculation/validation support for dpdk pktio.

>>>> No UDP/TCP HW checksum calculation/validation support for:

>>>> - IPv4 fragments

>>>> - IPv6 packets with extension headers (including fragments)

>>>> 

>>>> Bogdan Pricope (6):

>>>>  Initialize pktio configuration structure

>>>>  dpdk: retrieve offload capabilities

>>>>  dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>>>>  dpdk: RX - process checksum validation offload flags

>>>>  dpdk: TX - set checksum calculation offload flags

>>>>  examples: generator: update odp_generator to use HW checksum

>>>>    capabilities

>>>> 

>>>> example/generator/odp_generator.c      | 107 ++++++++++++++---

>>>> platform/linux-generic/odp_packet_io.c |   2 +

>>>> platform/linux-generic/pktio/dpdk.c    | 203 ++++++++++++++++++++++++++++++++-

>>>> 3 files changed, 293 insertions(+), 19 deletions(-)

>>>> 

>>>> --

>>>> 1.9.1

>>>> 

>
Maxim Uvarov July 21, 2017, 7:36 a.m. UTC | #7
ok, don't worry, have a good time!

On 21 July 2017 at 08:53, Elo, Matias (Nokia - FI/Espoo) <
matias.elo@nokia.com> wrote:

> I'm starting my vacation today and have more acute things on my plate, so

> I don't unfortunately have time to review the patch for a couple of weeks.

>

> -Matias

>

> > On 20 Jul 2017, at 23:16, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

> >

> > Krishna, Matias, please review dpdk changes.

> >

> > Maxim.

> >

> > On 07/19/17 16:35, Bogdan Pricope wrote:

> >> Ping?

> >>

> >> We still want this for odp-linux or we should implement it on odp-dpdk

> >> only (as soon as repository is updated)?

> >>

> >> /B

> >>

> >> On 20 June 2017 at 12:20, Bogdan Pricope <bogdan.pricope@linaro.org>

> wrote:

> >>> Ping?

> >>>

> >>> On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org>

> wrote:

> >>>> Add HW checksum calculation/validation support for dpdk pktio.

> >>>> No UDP/TCP HW checksum calculation/validation support for:

> >>>> - IPv4 fragments

> >>>> - IPv6 packets with extension headers (including fragments)

> >>>>

> >>>> Bogdan Pricope (6):

> >>>>  Initialize pktio configuration structure

> >>>>  dpdk: retrieve offload capabilities

> >>>>  dpdk: enable per pktio RX IP/UDP/TCP checksum offload

> >>>>  dpdk: RX - process checksum validation offload flags

> >>>>  dpdk: TX - set checksum calculation offload flags

> >>>>  examples: generator: update odp_generator to use HW checksum

> >>>>    capabilities

> >>>>

> >>>> example/generator/odp_generator.c      | 107 ++++++++++++++---

> >>>> platform/linux-generic/odp_packet_io.c |   2 +

> >>>> platform/linux-generic/pktio/dpdk.c    | 203

> ++++++++++++++++++++++++++++++++-

> >>>> 3 files changed, 293 insertions(+), 19 deletions(-)

> >>>>

> >>>> --

> >>>> 1.9.1

> >>>>

> >

>

>
Bogdan Pricope July 21, 2017, 7:54 a.m. UTC | #8
Have a nice vacation, Matias!!
We will have time for this in the autumn...

On 21 July 2017 at 10:36, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:
> ok, don't worry, have a good time!

>

> On 21 July 2017 at 08:53, Elo, Matias (Nokia - FI/Espoo) <

> matias.elo@nokia.com> wrote:

>

>> I'm starting my vacation today and have more acute things on my plate, so

>> I don't unfortunately have time to review the patch for a couple of weeks.

>>

>> -Matias

>>

>> > On 20 Jul 2017, at 23:16, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

>> >

>> > Krishna, Matias, please review dpdk changes.

>> >

>> > Maxim.

>> >

>> > On 07/19/17 16:35, Bogdan Pricope wrote:

>> >> Ping?

>> >>

>> >> We still want this for odp-linux or we should implement it on odp-dpdk

>> >> only (as soon as repository is updated)?

>> >>

>> >> /B

>> >>

>> >> On 20 June 2017 at 12:20, Bogdan Pricope <bogdan.pricope@linaro.org>

>> wrote:

>> >>> Ping?

>> >>>

>> >>> On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org>

>> wrote:

>> >>>> Add HW checksum calculation/validation support for dpdk pktio.

>> >>>> No UDP/TCP HW checksum calculation/validation support for:

>> >>>> - IPv4 fragments

>> >>>> - IPv6 packets with extension headers (including fragments)

>> >>>>

>> >>>> Bogdan Pricope (6):

>> >>>>  Initialize pktio configuration structure

>> >>>>  dpdk: retrieve offload capabilities

>> >>>>  dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>> >>>>  dpdk: RX - process checksum validation offload flags

>> >>>>  dpdk: TX - set checksum calculation offload flags

>> >>>>  examples: generator: update odp_generator to use HW checksum

>> >>>>    capabilities

>> >>>>

>> >>>> example/generator/odp_generator.c      | 107 ++++++++++++++---

>> >>>> platform/linux-generic/odp_packet_io.c |   2 +

>> >>>> platform/linux-generic/pktio/dpdk.c    | 203

>> ++++++++++++++++++++++++++++++++-

>> >>>> 3 files changed, 293 insertions(+), 19 deletions(-)

>> >>>>

>> >>>> --

>> >>>> 1.9.1

>> >>>>

>> >

>>

>>
Elo, Matias (Nokia - FI/Espoo) July 21, 2017, 8:10 a.m. UTC | #9
Thanks! This patch set is probably going to require rebasing since the dpdk zero-copy patch set is now merged.

-Matias

> On 21 Jul 2017, at 10:54, Bogdan Pricope <bogdan.pricope@linaro.org> wrote:

> 

> Have a nice vacation, Matias!!

> We will have time for this in the autumn...

> 

> On 21 July 2017 at 10:36, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

>> ok, don't worry, have a good time!

>> 

>> On 21 July 2017 at 08:53, Elo, Matias (Nokia - FI/Espoo) <

>> matias.elo@nokia.com> wrote:

>> 

>>> I'm starting my vacation today and have more acute things on my plate, so

>>> I don't unfortunately have time to review the patch for a couple of weeks.

>>> 

>>> -Matias

>>> 

>>>> On 20 Jul 2017, at 23:16, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

>>>> 

>>>> Krishna, Matias, please review dpdk changes.

>>>> 

>>>> Maxim.

>>>> 

>>>> On 07/19/17 16:35, Bogdan Pricope wrote:

>>>>> Ping?

>>>>> 

>>>>> We still want this for odp-linux or we should implement it on odp-dpdk

>>>>> only (as soon as repository is updated)?

>>>>> 

>>>>> /B

>>>>> 

>>>>> On 20 June 2017 at 12:20, Bogdan Pricope <bogdan.pricope@linaro.org>

>>> wrote:

>>>>>> Ping?

>>>>>> 

>>>>>> On 31 May 2017 at 17:40, Bogdan Pricope <bogdan.pricope@linaro.org>

>>> wrote:

>>>>>>> Add HW checksum calculation/validation support for dpdk pktio.

>>>>>>> No UDP/TCP HW checksum calculation/validation support for:

>>>>>>> - IPv4 fragments

>>>>>>> - IPv6 packets with extension headers (including fragments)

>>>>>>> 

>>>>>>> Bogdan Pricope (6):

>>>>>>> Initialize pktio configuration structure

>>>>>>> dpdk: retrieve offload capabilities

>>>>>>> dpdk: enable per pktio RX IP/UDP/TCP checksum offload

>>>>>>> dpdk: RX - process checksum validation offload flags

>>>>>>> dpdk: TX - set checksum calculation offload flags

>>>>>>> examples: generator: update odp_generator to use HW checksum

>>>>>>>   capabilities

>>>>>>> 

>>>>>>> example/generator/odp_generator.c      | 107 ++++++++++++++---

>>>>>>> platform/linux-generic/odp_packet_io.c |   2 +

>>>>>>> platform/linux-generic/pktio/dpdk.c    | 203

>>> ++++++++++++++++++++++++++++++++-

>>>>>>> 3 files changed, 293 insertions(+), 19 deletions(-)

>>>>>>> 

>>>>>>> --

>>>>>>> 1.9.1

>>>>>>> 

>>>> 

>>> 

>>>