Message ID | 20201024161112.13730-1-honnappa.nagarahalli@arm.com |
---|---|
Headers | show |
Series | lib/ring: add zero copy APIs | expand |
Hi David, Checkpatch CI is showing "WARNING" on a lot of the patches in this series, but it does not list any real warnings. Any idea what is happening? Thanks, Honnappa > -----Original Message----- > From: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> > Sent: Saturday, October 24, 2020 11:11 AM > To: dev@dpdk.org; Honnappa Nagarahalli > <Honnappa.Nagarahalli@arm.com>; konstantin.ananyev@intel.com; > stephen@networkplumber.org > Cc: Dharmik Thakkar <Dharmik.Thakkar@arm.com>; Ruifeng Wang > <Ruifeng.Wang@arm.com>; olivier.matz@6wind.com; > david.marchand@redhat.com; nd <nd@arm.com> > Subject: [PATCH v4 0/8] lib/ring: add zero copy APIs > > It is pretty common for the DPDK applications to be deployed in semi- > pipeline model. In these models, a small number of cores (typically 1) are > designated as I/O cores. The I/O cores work on receiving and transmitting > packets from the NIC and several packet processing cores. The IO core and > the packet processing cores exchange the packets over a ring. Typically, such > applications receive the mbufs in a temporary array and copy the mbufs on > to the ring. Depending on the requirements the packets could be copied in > batches of 32, 64 etc resulting in 256B, 512B etc memory copy. > > The zero copy APIs help avoid intermediate copies by exposing the space on > the ring directly to the application. > > v4: > 1) Fixed multiple pointer issues > 2) Added documentation > > v3: > 1) Changed the name of the APIs to 'zero-copy (zc)' > 2) Made the address calculation simpler > 3) Structure to return the data to the user is aligned on > cache line boundary. > 4) Added functional and stress test cases > > v2: changed the patch to use the SP-SC and HTS modes > > v1: Initial version > > Honnappa Nagarahalli (8): > lib/ring: add zero copy APIs > test/ring: move common function to header file > test/ring: add functional tests for zero copy APIs > test/ring: add stress tests for zero copy APIs > doc/ring: add zero copy peek APIs > test/ring: fix the memory dump size > test/ring: remove unnecessary braces > test/ring: user uintptr_t instead of unsigned long > > app/test/meson.build | 2 + > app/test/test_ring.c | 209 +++++++++- > app/test/test_ring.h | 67 ++- > app/test/test_ring_mt_peek_stress_zc.c | 56 +++ > app/test/test_ring_st_peek_stress_zc.c | 65 +++ > app/test/test_ring_stress.c | 6 + > app/test/test_ring_stress.h | 2 + > app/test/test_ring_stress_impl.h | 2 +- > doc/guides/prog_guide/ring_lib.rst | 41 ++ > doc/guides/rel_notes/release_20_11.rst | 9 + > lib/librte_ring/meson.build | 1 + > lib/librte_ring/rte_ring_elem.h | 1 + > lib/librte_ring/rte_ring_peek_zc.h | 546 +++++++++++++++++++++++++ > 13 files changed, 988 insertions(+), 19 deletions(-) create mode 100644 > app/test/test_ring_mt_peek_stress_zc.c > create mode 100644 app/test/test_ring_st_peek_stress_zc.c > create mode 100644 lib/librte_ring/rte_ring_peek_zc.h > > -- > 2.17.1
On Sat, Oct 24, 2020 at 6:18 PM Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com> wrote: > > Hi David, > Checkpatch CI is showing "WARNING" on a lot of the patches in this series, but it does not list any real warnings. Any idea what is happening? I reported it to Thomas last night. Thomas has fixed a few things in the script but I don't know if he's finished with it. -- David Marchand
25/10/2020 08:16, David Marchand: > On Sat, Oct 24, 2020 at 6:18 PM Honnappa Nagarahalli > <Honnappa.Nagarahalli@arm.com> wrote: > > > > Hi David, > > Checkpatch CI is showing "WARNING" on a lot of the patches in this series, but it does not list any real warnings. Any idea what is happening? > > I reported it to Thomas last night. > Thomas has fixed a few things in the script but I don't know if he's > finished with it. Yes this is an issue in Linux checkpatch that I've updated on the server just before you send this series. Then I've fixed it: --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -977,7 +977,7 @@ sub seed_camelcase_includes { sub git_is_single_file { my ($filename) = @_; - return 0 if ((which("git") eq "") || !(-e "$gitroot")); + return 0 if ((which("git") eq "") || !(-e "$root/.git"));