Merged with change.

Will see not what CI show.

Thanks,
Maxim.

On 02/18/16 14:21, Elo, Matias (Nokia - FI/Espoo) wrote:
Looks good to me assuming you rename PKTIO_IPC to _ODP_PKTIO_IPC on apply.

Reviewed-by: Matias Elo <matias....@nokia.com>


-----Original Message-----
From: lng-odp [mailto:lng-odp-boun...@lists.linaro.org] On Behalf Of EXT Maxim
Uvarov
Sent: Thursday, February 18, 2016 11:46 AM
To: lng-odp@lists.linaro.org
Subject: [lng-odp] [API-NEXT PATCHv4] linux-generic: pktio: add option to enable
and disable ipc pktio

With more options to enable/disable features it's more easy to isolate
and debug problem if any. For now I have suspitious that in CI make check
runs in parallel with other make checks which share the same pool memory.
I.e. one process can corrupt memory for other process. Moving IPC to option
it will be easy to debug that.

Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>
---
  v4: - fix Matias comments to do things more accurate in .m4

  configure.ac                            | 3 ++-
  platform/linux-generic/m4/configure.m4  | 1 +
  platform/linux-generic/m4/odp_ipc.m4    | 9 +++++++++
  platform/linux-generic/odp_pool.c       | 4 ++++
  platform/linux-generic/pktio/io_ops.c   | 2 ++
  platform/linux-generic/test/Makefile.am | 7 +++++--
  6 files changed, 23 insertions(+), 3 deletions(-)
  create mode 100644 platform/linux-generic/m4/odp_ipc.m4

diff --git a/configure.ac b/configure.ac
index 257f8c3..1aa44d2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -85,6 +85,7 @@ AC_SUBST([platform_with_platform_test],
["platform/${with_platform}/test"])
  # Prepare default values for platform specific optional features

##############################################################
############
  netmap_support=no
+pktio_ipc_support=no


##############################################################
############
  # Run platform specific checks and settings
@@ -102,7 +103,7 @@ fi

##############################################################
############
  AM_CONDITIONAL([netmap_support], [test x$netmap_support = xyes ])
  AM_CONDITIONAL([HAVE_PCAP], [test $have_pcap = yes])
-
+AM_CONDITIONAL([PKTIO_IPC], [test x$pktio_ipc_support = xyes])

  AC_ARG_WITH([sdk-install-path],
  AC_HELP_STRING([--with-sdk-install-path=DIR path to external libs and
headers],
diff --git a/platform/linux-generic/m4/configure.m4 b/platform/linux-
generic/m4/configure.m4
index 2ac4799..b8c1c52 100644
--- a/platform/linux-generic/m4/configure.m4
+++ b/platform/linux-generic/m4/configure.m4
@@ -21,6 +21,7 @@ m4_include([platform/linux-generic/m4/odp_openssl.m4])
  m4_include([platform/linux-generic/m4/odp_netmap.m4])
  m4_include([platform/linux-generic/m4/odp_dpdk.m4])
  m4_include([platform/linux-generic/m4/odp_pcap.m4])
+m4_include([platform/linux-generic/m4/odp_ipc.m4])

  AC_CONFIG_FILES([platform/linux-generic/Makefile
                 platform/linux-generic/test/Makefile
diff --git a/platform/linux-generic/m4/odp_ipc.m4 b/platform/linux-
generic/m4/odp_ipc.m4
new file mode 100644
index 0000000..9475031
--- /dev/null
+++ b/platform/linux-generic/m4/odp_ipc.m4
@@ -0,0 +1,9 @@
+#############################################################
#############
+# Enable IPC pktio support
+#############################################################
#############
+AC_ARG_ENABLE([pktio_ipc_support],
+    [  --enable-pktio_ipc-support  include ipc IO support],
+    [if test x$enableval = xyes; then
+       pktio_ipc_support=yes
+       ODP_CFLAGS="$ODP_CFLAGS -DPKTIO_IPC"
+    fi])
diff --git a/platform/linux-generic/odp_pool.c b/platform/linux-
generic/odp_pool.c
index 78ccc0f..950fa90 100644
--- a/platform/linux-generic/odp_pool.c
+++ b/platform/linux-generic/odp_pool.c
@@ -421,7 +421,11 @@ odp_pool_t _pool_create(const char *name,
  odp_pool_t odp_pool_create(const char *name,
                           odp_pool_param_t *params)
  {
+#ifdef PKTIO_IPC
        return _pool_create(name, params, ODP_SHM_PROC);
+#else
+       return _pool_create(name, params, 0);
+#endif
  }

  odp_pool_t odp_pool_lookup(const char *name)
diff --git a/platform/linux-generic/pktio/io_ops.c b/platform/linux-
generic/pktio/io_ops.c
index 15aa160..faa72d1 100644
--- a/platform/linux-generic/pktio/io_ops.c
+++ b/platform/linux-generic/pktio/io_ops.c
@@ -21,7 +21,9 @@ const pktio_if_ops_t * const pktio_if_ops[]  = {
  #ifdef HAVE_PCAP
        &pcap_pktio_ops,
  #endif
+#ifdef PKTIO_IPC
        &ipc_pktio_ops,
+#endif
        &tap_pktio_ops,
        &sock_mmap_pktio_ops,
        &sock_mmsg_pktio_ops,
diff --git a/platform/linux-generic/test/Makefile.am b/platform/linux-
generic/test/Makefile.am
index 1011437..4bf24cb 100644
--- a/platform/linux-generic/test/Makefile.am
+++ b/platform/linux-generic/test/Makefile.am
@@ -1,12 +1,11 @@
  include $(top_srcdir)/test/Makefile.inc
  TESTS_ENVIRONMENT += TEST_DIR=${top_builddir}/test/validation

-ODP_MODULES = pktio pktio_ipc ring
+ODP_MODULES = pktio ring

  if test_vald
  TESTS = pktio/pktio_run \
        pktio/pktio_run_tap \
-       pktio_ipc/pktio_ipc_run \
        ring/ringtest$(EXEEXT) \
        ${top_builddir}/test/validation/atomic/atomic_main$(EXEEXT) \
        ${top_builddir}/test/validation/barrier/barrier_main$(EXEEXT) \
@@ -38,6 +37,10 @@ SUBDIRS = $(ODP_MODULES)
  if HAVE_PCAP
  TESTS += pktio/pktio_run_pcap
  endif
+if PKTIO_IPC
+TESTS += pktio_ipc/pktio_ipc_run
+SUBDIRS += pktio_ipc
+endif
  endif

  dist_check_SCRIPTS = run-test tests-validation.env $(LOG_COMPILER)
--
2.7.1.250.gff4ea60

_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to