mbox series

[v5,0/8] port ioatfwd app to dmadev

Message ID 20211026131432.2734145-1-kevin.laatz@intel.com (mailing list archive)
Headers show
Series port ioatfwd app to dmadev | expand

Message

Kevin Laatz Oct. 26, 2021, 1:14 p.m. UTC
This patchset first adds some additional command line options to the
existing ioatfwd application to enhance usability.

The last 3 patches of this set then port the ioatfwd application to use the
dmadev library APIs instead of the IOAT rawdev APIs. Following the port,
all variables etc are renamed to be more appropriate for using with the
DMAdev library. Lastly, the application itself is renamed to "dmafwd".

---
v5:
  - rebase on latest main
  - add check to ensure ring_size <= MBUF_RING_SIZE (Chengwen)
v4:
  - rebase on dmadev lib v26 patchset
v3:
  - add signal-triggered device dump
  - add cmd line option to control stats print frequency
  - documentation updates
  - small miscellaneous changes from review feedback

Kevin Laatz (5):
  examples/ioat: add cmd line option to control stats print interval
  examples/ioat: add signal-triggered device dumps
  examples/ioat: port application to dmadev APIs
  examples/ioat: update naming to match change to dmadev
  examples/ioat: rename application to dmafwd

Konstantin Ananyev (3):
  examples/ioat: always use same lcore for both DMA requests enqueue and
    dequeue
  examples/ioat: add cmd line option to control DMA batch size
  examples/ioat: add cmd line option to control max frame size

 .../sample_app_ug/{ioat.rst => dma.rst}       | 149 ++--
 doc/guides/sample_app_ug/index.rst            |   2 +-
 doc/guides/sample_app_ug/intro.rst            |   4 +-
 examples/{ioat => dma}/Makefile               |   4 +-
 examples/{ioat/ioatfwd.c => dma/dmafwd.c}     | 638 ++++++++++--------
 examples/{ioat => dma}/meson.build            |  10 +-
 examples/meson.build                          |   2 +-
 7 files changed, 433 insertions(+), 376 deletions(-)
 rename doc/guides/sample_app_ug/{ioat.rst => dma.rst} (64%)
 rename examples/{ioat => dma}/Makefile (97%)
 rename examples/{ioat/ioatfwd.c => dma/dmafwd.c} (60%)
 rename examples/{ioat => dma}/meson.build (63%)

Comments

Thomas Monjalon Oct. 27, 2021, 1:23 p.m. UTC | #1
26/10/2021 15:14, Kevin Laatz:
>  .../sample_app_ug/{ioat.rst => dma.rst}       | 149 ++--
>  doc/guides/sample_app_ug/index.rst            |   2 +-
>  doc/guides/sample_app_ug/intro.rst            |   4 +-
>  examples/{ioat => dma}/Makefile               |   4 +-
>  examples/{ioat/ioatfwd.c => dma/dmafwd.c}     | 638 ++++++++++--------
>  examples/{ioat => dma}/meson.build            |  10 +-
>  examples/meson.build                          |   2 +-
>  7 files changed, 433 insertions(+), 376 deletions(-)
>  rename doc/guides/sample_app_ug/{ioat.rst => dma.rst} (64%)
>  rename examples/{ioat => dma}/Makefile (97%)
>  rename examples/{ioat/ioatfwd.c => dma/dmafwd.c} (60%)
>  rename examples/{ioat => dma}/meson.build (63%)

The file MAINTAINERS is not updated, I'll try to fix it myself.
Kevin Laatz Oct. 27, 2021, 1:35 p.m. UTC | #2
On 27/10/2021 14:23, Thomas Monjalon wrote:
> 26/10/2021 15:14, Kevin Laatz:
>>   .../sample_app_ug/{ioat.rst => dma.rst}       | 149 ++--
>>   doc/guides/sample_app_ug/index.rst            |   2 +-
>>   doc/guides/sample_app_ug/intro.rst            |   4 +-
>>   examples/{ioat => dma}/Makefile               |   4 +-
>>   examples/{ioat/ioatfwd.c => dma/dmafwd.c}     | 638 ++++++++++--------
>>   examples/{ioat => dma}/meson.build            |  10 +-
>>   examples/meson.build                          |   2 +-
>>   7 files changed, 433 insertions(+), 376 deletions(-)
>>   rename doc/guides/sample_app_ug/{ioat.rst => dma.rst} (64%)
>>   rename examples/{ioat => dma}/Makefile (97%)
>>   rename examples/{ioat/ioatfwd.c => dma/dmafwd.c} (60%)
>>   rename examples/{ioat => dma}/meson.build (63%)
> The file MAINTAINERS is not updated, I'll try to fix it myself.
>
>

Hi Thomas, apologies this must have gotten dropped in a rebase or I 
forgot to commit it!

I was going to add the following to the "Other Example Applications" 
section:

DMA example
M: Kevin Laatz <kevin.laatz@intel.com>
M: Bruce Richardson <bruce.richardson@intel.com>
F: examples/dma/
F: doc/guides/sample_app_ug/dma.rst


And the equivalent files for ioatfwd would need to be removed from the 
Rawdev drivers sections since they have been replaced.

If you're happy to add yourself, thanks! Otherwise I don't mind sending 
a v6 quickly if that's better.

/Kevin
Thomas Monjalon Oct. 27, 2021, 2:07 p.m. UTC | #3
27/10/2021 15:35, Kevin Laatz:
> On 27/10/2021 14:23, Thomas Monjalon wrote:
> > 26/10/2021 15:14, Kevin Laatz:
> >>   .../sample_app_ug/{ioat.rst => dma.rst}       | 149 ++--
> >>   doc/guides/sample_app_ug/index.rst            |   2 +-
> >>   doc/guides/sample_app_ug/intro.rst            |   4 +-
> >>   examples/{ioat => dma}/Makefile               |   4 +-
> >>   examples/{ioat/ioatfwd.c => dma/dmafwd.c}     | 638 ++++++++++--------
> >>   examples/{ioat => dma}/meson.build            |  10 +-
> >>   examples/meson.build                          |   2 +-
> >>   7 files changed, 433 insertions(+), 376 deletions(-)
> >>   rename doc/guides/sample_app_ug/{ioat.rst => dma.rst} (64%)
> >>   rename examples/{ioat => dma}/Makefile (97%)
> >>   rename examples/{ioat/ioatfwd.c => dma/dmafwd.c} (60%)
> >>   rename examples/{ioat => dma}/meson.build (63%)
> > The file MAINTAINERS is not updated, I'll try to fix it myself.
> >
> >
> 
> Hi Thomas, apologies this must have gotten dropped in a rebase or I 
> forgot to commit it!
> 
> I was going to add the following to the "Other Example Applications" 
> section:
> 
> DMA example
> M: Kevin Laatz <kevin.laatz@intel.com>
> M: Bruce Richardson <bruce.richardson@intel.com>
> F: examples/dma/
> F: doc/guides/sample_app_ug/dma.rst

Actually it would better fit in the existing section "DMA device API".

> And the equivalent files for ioatfwd would need to be removed from the 
> Rawdev drivers sections since they have been replaced.

You mean removing the rst file?

> If you're happy to add yourself, thanks! Otherwise I don't mind sending 
> a v6 quickly if that's better.

I am already on it.
Kevin Laatz Oct. 27, 2021, 2:14 p.m. UTC | #4
On 27/10/2021 15:07, Thomas Monjalon wrote:
> 27/10/2021 15:35, Kevin Laatz:
>> On 27/10/2021 14:23, Thomas Monjalon wrote:
>>> 26/10/2021 15:14, Kevin Laatz:
>>>>    .../sample_app_ug/{ioat.rst => dma.rst}       | 149 ++--
>>>>    doc/guides/sample_app_ug/index.rst            |   2 +-
>>>>    doc/guides/sample_app_ug/intro.rst            |   4 +-
>>>>    examples/{ioat => dma}/Makefile               |   4 +-
>>>>    examples/{ioat/ioatfwd.c => dma/dmafwd.c}     | 638 ++++++++++--------
>>>>    examples/{ioat => dma}/meson.build            |  10 +-
>>>>    examples/meson.build                          |   2 +-
>>>>    7 files changed, 433 insertions(+), 376 deletions(-)
>>>>    rename doc/guides/sample_app_ug/{ioat.rst => dma.rst} (64%)
>>>>    rename examples/{ioat => dma}/Makefile (97%)
>>>>    rename examples/{ioat/ioatfwd.c => dma/dmafwd.c} (60%)
>>>>    rename examples/{ioat => dma}/meson.build (63%)
>>> The file MAINTAINERS is not updated, I'll try to fix it myself.
>>>
>>>
>> Hi Thomas, apologies this must have gotten dropped in a rebase or I
>> forgot to commit it!
>>
>> I was going to add the following to the "Other Example Applications"
>> section:
>>
>> DMA example
>> M: Kevin Laatz <kevin.laatz@intel.com>
>> M: Bruce Richardson <bruce.richardson@intel.com>
>> F: examples/dma/
>> F: doc/guides/sample_app_ug/dma.rst
> Actually it would better fit in the existing section "DMA device API".
>
>> And the equivalent files for ioatfwd would need to be removed from the
>> Rawdev drivers sections since they have been replaced.
> You mean removing the rst file?

Removing these two:

F: examples/ioat/
F: doc/guides/sample_app_ug/ioat.rst

>
>> If you're happy to add yourself, thanks! Otherwise I don't mind sending
>> a v6 quickly if that's better.
> I am already on it.
>

OK, thanks!
Thomas Monjalon Oct. 27, 2021, 2:54 p.m. UTC | #5
26/10/2021 15:14, Kevin Laatz:
> This patchset first adds some additional command line options to the
> existing ioatfwd application to enhance usability.
> 
> The last 3 patches of this set then port the ioatfwd application to use the
> dmadev library APIs instead of the IOAT rawdev APIs. Following the port,
> all variables etc are renamed to be more appropriate for using with the
> DMAdev library. Lastly, the application itself is renamed to "dmafwd".

Applied, thanks.