patches for DPDK stable branches
 help / color / mirror / Atom feed
* [PATCH 19.11 0/4] Patch backports from main
@ 2022-03-01 14:08 Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 1/4] eventdev: fix C++ include Bruce Richardson
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:08 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson

This set contains the following backports:

ecb904cc45  Bruce Richardson build: fix warnings when running external commands
e16b972b1a  Bruce Richardson build: remove deprecated Meson functions
59144f6edd  Bruce Richardson eal: fix C++ include
153e7d8813  Bruce Richardson eventdev: fix C++ include

This following patch was flagged as a potential for backport, but was not
suitable for merging, given that there was lot of churn in that patch
up until latest head revision.

fee17a1d29  Bruce Richardson doc: remove dependency on findutils on FreeBSD

Bruce Richardson (4):
  eventdev: fix C++ include
  eal: fix C++ include
  build: remove deprecated Meson functions
  build: fix warnings when running external commands

 app/test/meson.build                               |  2 +-
 config/arm/meson.build                             |  2 +-
 config/meson.build                                 |  4 ++--
 config/x86/meson.build                             |  2 +-
 doc/api/meson.build                                | 10 +++++-----
 kernel/freebsd/meson.build                         |  4 ++--
 kernel/linux/kni/meson.build                       | 10 +++++-----
 kernel/linux/meson.build                           |  6 +++---
 .../common/include/generic/rte_ticketlock.h        | 14 +++++++-------
 lib/librte_eventdev/rte_event_timer_adapter.h      |  4 ++++
 meson.build                                        |  6 ++++--
 11 files changed, 35 insertions(+), 29 deletions(-)

--
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 1/4] eventdev: fix C++ include
  2022-03-01 14:08 [PATCH 19.11 0/4] Patch backports from main Bruce Richardson
@ 2022-03-01 14:08 ` Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 2/4] eal: " Bruce Richardson
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:08 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

The eventdev timer header had an issue when used from C++, it was
missing closing "}" for the extern "C" block

Fixes: a6562f6d6f8e ("eventdev: introduce event timer adapter")
Cc: stable@dpdk.org

(This is backport of commit 153e7d88 from mainline)

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
---
 lib/librte_eventdev/rte_event_timer_adapter.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/lib/librte_eventdev/rte_event_timer_adapter.h b/lib/librte_eventdev/rte_event_timer_adapter.h
index 7f6dc5c292..9f5021454a 100644
--- a/lib/librte_eventdev/rte_event_timer_adapter.h
+++ b/lib/librte_eventdev/rte_event_timer_adapter.h
@@ -658,4 +658,8 @@ rte_event_timer_cancel_burst(const struct rte_event_timer_adapter *adapter,
 	return adapter->cancel_burst(adapter, evtims, nb_evtims);
 }
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* __RTE_EVENT_TIMER_ADAPTER_H__ */
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 2/4] eal: fix C++ include
  2022-03-01 14:08 [PATCH 19.11 0/4] Patch backports from main Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 1/4] eventdev: fix C++ include Bruce Richardson
@ 2022-03-01 14:08 ` Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 3/4] build: remove deprecated Meson functions Bruce Richardson
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:08 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson

C++ files could not include some headers because "new" is a keyword in
C++, so can't be a variable name

Fixes: 184104fc6121 ("ticketlock: introduce fair ticket based locking")
Cc: stable@dpdk.org

(This is a backport of patch 59144f6edd from mainline)

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 .../common/include/generic/rte_ticketlock.h        | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/lib/librte_eal/common/include/generic/rte_ticketlock.h b/lib/librte_eal/common/include/generic/rte_ticketlock.h
index d9bec87692..5f432cfbe8 100644
--- a/lib/librte_eal/common/include/generic/rte_ticketlock.h
+++ b/lib/librte_eal/common/include/generic/rte_ticketlock.h
@@ -96,13 +96,13 @@ __rte_experimental
 static inline int
 rte_ticketlock_trylock(rte_ticketlock_t *tl)
 {
-	rte_ticketlock_t old, new;
-	old.tickets = __atomic_load_n(&tl->tickets, __ATOMIC_RELAXED);
-	new.tickets = old.tickets;
-	new.s.next++;
-	if (old.s.next == old.s.current) {
-		if (__atomic_compare_exchange_n(&tl->tickets, &old.tickets,
-		    new.tickets, 0, __ATOMIC_ACQUIRE, __ATOMIC_RELAXED))
+	rte_ticketlock_t oldl, newl;
+	oldl.tickets = __atomic_load_n(&tl->tickets, __ATOMIC_RELAXED);
+	newl.tickets = oldl.tickets;
+	newl.s.next++;
+	if (oldl.s.next == oldl.s.current) {
+		if (__atomic_compare_exchange_n(&tl->tickets, &oldl.tickets,
+		    newl.tickets, 0, __ATOMIC_ACQUIRE, __ATOMIC_RELAXED))
 			return 1;
 	}
 
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 3/4] build: remove deprecated Meson functions
  2022-03-01 14:08 [PATCH 19.11 0/4] Patch backports from main Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 1/4] eventdev: fix C++ include Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 2/4] eal: " Bruce Richardson
@ 2022-03-01 14:08 ` Bruce Richardson
  2022-03-01 14:08 ` [PATCH 19.11 4/4] build: fix warnings when running external commands Bruce Richardson
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
  4 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:08 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

Starting in meson 0.56, the functions meson.source_root() and
meson.build_root() are deprecated and to be replaced by the [more
descriptive] functions: project_source_root()/global_source_root() and
project_build_root()/global_build_root(). Unfortunately, these new
replacement functions were only added in 0.56 release too, so to use
them we would need version checks for old/new functions to remove the
deprecation warnings.

However, the functions "current_build_dir()" and "current_source_dir()"
remain unaffected by all this, so we can bypass the versioning problem,
by saving off these values to "dpdk_source_root" and "dpdk_build_root"
in the top-level meson.build file

Bugzilla ID: 926
Cc: stable@dpdk.org

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
---
 doc/api/meson.build          | 10 +++++-----
 kernel/freebsd/meson.build   |  4 ++--
 kernel/linux/kni/meson.build |  8 ++++----
 meson.build                  |  2 ++
 4 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/doc/api/meson.build b/doc/api/meson.build
index ec0357b2cd..72f522627d 100644
--- a/doc/api/meson.build
+++ b/doc/api/meson.build
@@ -24,7 +24,7 @@ htmldir = join_paths('share', 'doc', 'dpdk')
 # So use a configure option for now.
 example = custom_target('examples.dox',
 	output: 'examples.dox',
-	command: [generate_examples, join_paths(meson.source_root(), 'examples'), '@OUTPUT@'],
+	command: [generate_examples, join_paths(dpdk_source_root, 'examples'), '@OUTPUT@'],
 	depfile: 'examples.dox.d',
 	install: get_option('enable_docs'),
 	install_dir: htmldir,
@@ -32,11 +32,11 @@ example = custom_target('examples.dox',
 
 cdata = configuration_data()
 cdata.set('VERSION', meson.project_version())
-cdata.set('API_EXAMPLES', join_paths(meson.build_root(), 'doc', 'api', 'examples.dox'))
-cdata.set('OUTPUT', join_paths(meson.build_root(), 'doc', 'api'))
+cdata.set('API_EXAMPLES', join_paths(dpdk_build_root, 'doc', 'api', 'examples.dox'))
+cdata.set('OUTPUT', join_paths(dpdk_build_root, 'doc', 'api'))
 cdata.set('HTML_OUTPUT', 'api')
-cdata.set('TOPDIR', meson.source_root())
-cdata.set('STRIP_FROM_PATH', ' '.join([meson.source_root(), join_paths(meson.build_root(), 'doc', 'api')]))
+cdata.set('TOPDIR', dpdk_source_root)
+cdata.set('STRIP_FROM_PATH', ' '.join([dpdk_source_root, join_paths(dpdk_build_root, 'doc', 'api')]))
 
 doxy_conf = configure_file(input: 'doxy-api.conf.in',
 	output: 'doxy-api.conf',
diff --git a/kernel/freebsd/meson.build b/kernel/freebsd/meson.build
index dc156a43fd..bc97d784c5 100644
--- a/kernel/freebsd/meson.build
+++ b/kernel/freebsd/meson.build
@@ -9,8 +9,8 @@ kmods = ['contigmem', 'nic_uio']
 # right now, which allows us to simplify things. We pull in the sourcer
 # files from the individual meson.build files, and then use a custom
 # target to call make, passing in the values as env parameters.
-kmod_cflags = ['-I' + meson.build_root(),
-		'-I' + join_paths(meson.source_root(), 'config'),
+kmod_cflags = ['-I' + dpdk_build_root,
+		'-I' + join_paths(dpdk_source_root, 'config'),
 		'-include rte_config.h']
 
 # to avoid warnings due to race conditions with creating the dev_if.h, etc.
diff --git a/kernel/linux/kni/meson.build b/kernel/linux/kni/meson.build
index 679fdf4f51..facc6d8a69 100644
--- a/kernel/linux/kni/meson.build
+++ b/kernel/linux/kni/meson.build
@@ -28,10 +28,10 @@ custom_target('rte_kni',
 		'M=' + meson.current_build_dir(),
 		'src=' + meson.current_source_dir(),
 		' '.join(['MODULE_CFLAGS=', kmod_cflags,'-include '])
-		+ meson.source_root() + '/config/rte_config.h' +
-		' -I' + meson.source_root() + '/lib/librte_eal/common/include' +
-		' -I' + meson.source_root() + '/lib/librte_eal/linux/eal/include' +
-		' -I' + meson.build_root() +
+		+ dpdk_source_root + '/config/rte_config.h' +
+		' -I' + dpdk_source_root + '/lib/librte_eal/common/include' +
+		' -I' + dpdk_source_root + '/lib/librte_eal/linux/eal/include' +
+		' -I' + dpdk_build_root +
 		' -I' + meson.current_source_dir(),
 		'modules'],
 	depends: kni_mkfile,
diff --git a/meson.build b/meson.build
index 00ebbef115..a32bcda1c9 100644
--- a/meson.build
+++ b/meson.build
@@ -17,6 +17,8 @@ project('DPDK', 'C',
 
 # set up some global vars for compiler, platform, configuration, etc.
 cc = meson.get_compiler('c')
+dpdk_source_root = meson.current_source_dir()
+dpdk_build_root = meson.current_build_dir()
 dpdk_conf = configuration_data()
 dpdk_libraries = []
 dpdk_static_libraries = []
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 4/4] build: fix warnings when running external commands
  2022-03-01 14:08 [PATCH 19.11 0/4] Patch backports from main Bruce Richardson
                   ` (2 preceding siblings ...)
  2022-03-01 14:08 ` [PATCH 19.11 3/4] build: remove deprecated Meson functions Bruce Richardson
@ 2022-03-01 14:08 ` Bruce Richardson
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
  4 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:08 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

Meson 0.61.1 is giving warnings that the calls to run_command do not
always explicitly specify if the result is to be checked or not, i.e.
there is a missing "check" parameter. This is because the default
behaviour without the parameter is due to change in the future.

We can fix these warnings by explicitly adding into each call whether
the result should be checked by meson or not. This patch therefore
adds in "check: false" to each run_command call where the result is
being checked by the DPDK meson.build code afterwards, and adds in
"check: true" to any calls where the result is currently unchecked.

Bugzilla ID: 921
Cc: stable@dpdk.org

Reported-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
---
 app/test/meson.build         | 2 +-
 config/arm/meson.build       | 2 +-
 config/meson.build           | 4 ++--
 config/x86/meson.build       | 2 +-
 kernel/linux/kni/meson.build | 2 +-
 kernel/linux/meson.build     | 6 +++---
 meson.build                  | 4 ++--
 7 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/app/test/meson.build b/app/test/meson.build
index 2e35e93477..8823f5a960 100644
--- a/app/test/meson.build
+++ b/app/test/meson.build
@@ -405,7 +405,7 @@ dpdk_test = executable('dpdk-test',
 has_hugepage = true
 if is_linux
 	check_hugepage = run_command('cat',
-				     '/proc/sys/vm/nr_hugepages')
+				     '/proc/sys/vm/nr_hugepages', check: false)
 	if (check_hugepage.returncode() != 0 or
 	    check_hugepage.stdout().strip() == '0')
 		has_hugepage = false
diff --git a/config/arm/meson.build b/config/arm/meson.build
index 60f7b05396..dceea336dd 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -152,7 +152,7 @@ else
 		# 'Primary Part number', 'Revision']
 		detect_vendor = find_program(join_paths(
 				meson.current_source_dir(), 'armv8_machine.py'))
-		cmd = run_command(detect_vendor.path())
+		cmd = run_command(detect_vendor.path(), check: false)
 		if cmd.returncode() == 0
 			cmd_output = cmd.stdout().to_lower().strip().split(' ')
 		endif
diff --git a/config/meson.build b/config/meson.build
index e87d1ba533..4b03746889 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -22,8 +22,8 @@ is_ms_linker = is_windows and (cc.get_id() == 'clang')
 # depending on the configuration options
 pver = meson.project_version().split('.')
 major_version = '@0@.@1@'.format(pver.get(0), pver.get(1))
-abi_version = run_command(find_program('cat', 'more'),
-	abi_version_file).stdout().strip()
+abi_version = run_command(find_program('cat', 'more'), abi_version_file,
+		check: true).stdout().strip()
 # experimental libraries are versioned as 0.majorminor versions, e.g. 0.201
 ever = abi_version.split('.')
 experimental_abi_version = '0.@0@@1@'.format(ever.get(0), ever.get(1))
diff --git a/config/x86/meson.build b/config/x86/meson.build
index adc857ba28..855a7d0edd 100644
--- a/config/x86/meson.build
+++ b/config/x86/meson.build
@@ -3,7 +3,7 @@
 
 # get binutils version for the workaround of Bug 97
 if not is_windows
-	ldver = run_command('ld', '-v').stdout().strip()
+	ldver = run_command('ld', '-v', check: true).stdout().strip()
 	if ldver.contains('2.30') and cc.has_argument('-mno-avx512f')
 		machine_args += '-mno-avx512f'
 		message('Binutils 2.30 detected, disabling AVX512 support as workaround for bug #97')
diff --git a/kernel/linux/kni/meson.build b/kernel/linux/kni/meson.build
index facc6d8a69..eb97ec1491 100644
--- a/kernel/linux/kni/meson.build
+++ b/kernel/linux/kni/meson.build
@@ -5,7 +5,7 @@
 # Ref: https://jira.devtools.intel.com/browse/DPDK-29263
 kmod_cflags = ''
 file_path = kernel_source_dir + '/include/linux/netdevice.h'
-run_cmd = run_command('grep', 'ndo_tx_timeout', file_path)
+run_cmd = run_command('grep', 'ndo_tx_timeout', file_path, check: false)
 
 if run_cmd.stdout().contains('txqueue') == true
    kmod_cflags = '-DHAVE_ARG_TX_QUEUE'
diff --git a/kernel/linux/meson.build b/kernel/linux/meson.build
index cd74739905..793c58ef56 100644
--- a/kernel/linux/meson.build
+++ b/kernel/linux/meson.build
@@ -13,7 +13,7 @@ kernel_dir = get_option('kernel_dir')
 kernel_source_dir = get_option('kernel_dir')
 if kernel_dir == ''
 	# use default path for native builds
-	kernel_version = run_command('uname', '-r').stdout().strip()
+	kernel_version = run_command('uname', '-r', check: true).stdout().strip()
 	kernel_dir = '/lib/modules/' + kernel_version
 	if kernel_source_dir == ''
 		# use default path for native builds
@@ -22,8 +22,8 @@ if kernel_dir == ''
 endif
 
 # test running make in kernel directory, using "make kernelversion"
-make_returncode = run_command('make', '-sC', kernel_dir + '/build',
-		'kernelversion').returncode()
+make_returncode = run_command('make', '-sC', kernel_dir + '/build', 'kernelversion',
+		check: false).returncode()
 if make_returncode != 0
 	warning('Cannot compile kernel modules as requested - are kernel headers installed?')
 	subdir_done()
diff --git a/meson.build b/meson.build
index a32bcda1c9..94f51a8c6c 100644
--- a/meson.build
+++ b/meson.build
@@ -4,8 +4,8 @@
 project('DPDK', 'C',
 	# Get version number from file.
 	# Fallback to "more" for Windows compatibility.
-	version: run_command(find_program('cat', 'more'),
-		files('VERSION')).stdout().strip(),
+	version: run_command(find_program('cat', 'more'), files('VERSION'),
+			check: true).stdout().strip(),
 	license: 'BSD',
 	default_options: [
         'buildtype=release',
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 v2 0/5] Patch backports from main
  2022-03-01 14:08 [PATCH 19.11 0/4] Patch backports from main Bruce Richardson
                   ` (3 preceding siblings ...)
  2022-03-01 14:08 ` [PATCH 19.11 4/4] build: fix warnings when running external commands Bruce Richardson
@ 2022-03-01 14:43 ` Bruce Richardson
  2022-03-01 14:43   ` [PATCH 19.11 v2 1/5] eventdev: fix C++ include Bruce Richardson
                     ` (5 more replies)
  4 siblings, 6 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:43 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson

This set contains the following backports:

ecb904cc45  Bruce Richardson build: fix warnings when running external commands
e16b972b1a  Bruce Richardson build: remove deprecated Meson functions
59144f6edd  Bruce Richardson eal: fix C++ include
153e7d8813  Bruce Richardson eventdev: fix C++ include

This following patch was flagged as a potential for backport, but was not
suitable for merging, given that there was lot of churn in that patch
up until latest head revision.

fee17a1d29  Bruce Richardson doc: remove dependency on findutils on FreeBSD

V2: Set now contains an additional backport to remove meson warnings:
  1539acc20a63 ("drivers: remove warning with Meson 0.59")

Bruce Richardson (5):
  eventdev: fix C++ include
  eal: fix C++ include
  build: remove deprecated Meson functions
  build: fix warnings when running external commands
  drivers: remove warning with Meson 0.59

 app/test/meson.build                               |  4 ++--
 config/arm/meson.build                             |  2 +-
 config/meson.build                                 |  4 ++--
 config/x86/meson.build                             |  2 +-
 doc/api/meson.build                                | 10 +++++-----
 drivers/meson.build                                |  6 +++---
 drivers/net/e1000/base/meson.build                 |  2 +-
 drivers/net/fm10k/base/meson.build                 |  2 +-
 drivers/net/hinic/base/meson.build                 |  2 +-
 drivers/net/i40e/base/meson.build                  |  2 +-
 drivers/net/iavf/base/meson.build                  |  2 +-
 drivers/net/ice/base/meson.build                   |  2 +-
 drivers/net/ixgbe/base/meson.build                 |  2 +-
 drivers/net/octeontx/base/meson.build              |  2 +-
 drivers/net/qede/base/meson.build                  |  2 +-
 drivers/net/sfc/base/meson.build                   |  2 +-
 drivers/net/thunderx/base/meson.build              |  2 +-
 drivers/raw/ifpga/base/meson.build                 |  2 +-
 kernel/freebsd/meson.build                         |  4 ++--
 kernel/linux/kni/meson.build                       | 10 +++++-----
 kernel/linux/meson.build                           |  6 +++---
 .../common/include/generic/rte_ticketlock.h        | 14 +++++++-------
 lib/librte_eventdev/rte_event_timer_adapter.h      |  4 ++++
 lib/meson.build                                    |  4 ++--
 meson.build                                        |  6 ++++--
 25 files changed, 53 insertions(+), 47 deletions(-)

--
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 v2 1/5] eventdev: fix C++ include
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
@ 2022-03-01 14:43   ` Bruce Richardson
  2022-03-01 14:44   ` [PATCH 19.11 v2 2/5] eal: " Bruce Richardson
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:43 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

The eventdev timer header had an issue when used from C++, it was
missing closing "}" for the extern "C" block

Fixes: a6562f6d6f8e ("eventdev: introduce event timer adapter")
Cc: stable@dpdk.org

(This is backport of commit 153e7d88 from mainline)

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
---
 lib/librte_eventdev/rte_event_timer_adapter.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/lib/librte_eventdev/rte_event_timer_adapter.h b/lib/librte_eventdev/rte_event_timer_adapter.h
index 7f6dc5c292..9f5021454a 100644
--- a/lib/librte_eventdev/rte_event_timer_adapter.h
+++ b/lib/librte_eventdev/rte_event_timer_adapter.h
@@ -658,4 +658,8 @@ rte_event_timer_cancel_burst(const struct rte_event_timer_adapter *adapter,
 	return adapter->cancel_burst(adapter, evtims, nb_evtims);
 }
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif /* __RTE_EVENT_TIMER_ADAPTER_H__ */
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 v2 2/5] eal: fix C++ include
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
  2022-03-01 14:43   ` [PATCH 19.11 v2 1/5] eventdev: fix C++ include Bruce Richardson
@ 2022-03-01 14:44   ` Bruce Richardson
  2022-03-01 14:44   ` [PATCH 19.11 v2 3/5] build: remove deprecated Meson functions Bruce Richardson
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:44 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson

C++ files could not include some headers because "new" is a keyword in
C++, so can't be a variable name

Fixes: 184104fc6121 ("ticketlock: introduce fair ticket based locking")
Cc: stable@dpdk.org

(This is a backport of patch 59144f6edd from mainline)

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 .../common/include/generic/rte_ticketlock.h        | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/lib/librte_eal/common/include/generic/rte_ticketlock.h b/lib/librte_eal/common/include/generic/rte_ticketlock.h
index d9bec87692..5f432cfbe8 100644
--- a/lib/librte_eal/common/include/generic/rte_ticketlock.h
+++ b/lib/librte_eal/common/include/generic/rte_ticketlock.h
@@ -96,13 +96,13 @@ __rte_experimental
 static inline int
 rte_ticketlock_trylock(rte_ticketlock_t *tl)
 {
-	rte_ticketlock_t old, new;
-	old.tickets = __atomic_load_n(&tl->tickets, __ATOMIC_RELAXED);
-	new.tickets = old.tickets;
-	new.s.next++;
-	if (old.s.next == old.s.current) {
-		if (__atomic_compare_exchange_n(&tl->tickets, &old.tickets,
-		    new.tickets, 0, __ATOMIC_ACQUIRE, __ATOMIC_RELAXED))
+	rte_ticketlock_t oldl, newl;
+	oldl.tickets = __atomic_load_n(&tl->tickets, __ATOMIC_RELAXED);
+	newl.tickets = oldl.tickets;
+	newl.s.next++;
+	if (oldl.s.next == oldl.s.current) {
+		if (__atomic_compare_exchange_n(&tl->tickets, &oldl.tickets,
+		    newl.tickets, 0, __ATOMIC_ACQUIRE, __ATOMIC_RELAXED))
 			return 1;
 	}
 
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 v2 3/5] build: remove deprecated Meson functions
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
  2022-03-01 14:43   ` [PATCH 19.11 v2 1/5] eventdev: fix C++ include Bruce Richardson
  2022-03-01 14:44   ` [PATCH 19.11 v2 2/5] eal: " Bruce Richardson
@ 2022-03-01 14:44   ` Bruce Richardson
  2022-03-01 14:44   ` [PATCH 19.11 v2 4/5] build: fix warnings when running external commands Bruce Richardson
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:44 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

Starting in meson 0.56, the functions meson.source_root() and
meson.build_root() are deprecated and to be replaced by the [more
descriptive] functions: project_source_root()/global_source_root() and
project_build_root()/global_build_root(). Unfortunately, these new
replacement functions were only added in 0.56 release too, so to use
them we would need version checks for old/new functions to remove the
deprecation warnings.

However, the functions "current_build_dir()" and "current_source_dir()"
remain unaffected by all this, so we can bypass the versioning problem,
by saving off these values to "dpdk_source_root" and "dpdk_build_root"
in the top-level meson.build file

Bugzilla ID: 926
Cc: stable@dpdk.org

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
---
 doc/api/meson.build          | 10 +++++-----
 kernel/freebsd/meson.build   |  4 ++--
 kernel/linux/kni/meson.build |  8 ++++----
 meson.build                  |  2 ++
 4 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/doc/api/meson.build b/doc/api/meson.build
index ec0357b2cd..72f522627d 100644
--- a/doc/api/meson.build
+++ b/doc/api/meson.build
@@ -24,7 +24,7 @@ htmldir = join_paths('share', 'doc', 'dpdk')
 # So use a configure option for now.
 example = custom_target('examples.dox',
 	output: 'examples.dox',
-	command: [generate_examples, join_paths(meson.source_root(), 'examples'), '@OUTPUT@'],
+	command: [generate_examples, join_paths(dpdk_source_root, 'examples'), '@OUTPUT@'],
 	depfile: 'examples.dox.d',
 	install: get_option('enable_docs'),
 	install_dir: htmldir,
@@ -32,11 +32,11 @@ example = custom_target('examples.dox',
 
 cdata = configuration_data()
 cdata.set('VERSION', meson.project_version())
-cdata.set('API_EXAMPLES', join_paths(meson.build_root(), 'doc', 'api', 'examples.dox'))
-cdata.set('OUTPUT', join_paths(meson.build_root(), 'doc', 'api'))
+cdata.set('API_EXAMPLES', join_paths(dpdk_build_root, 'doc', 'api', 'examples.dox'))
+cdata.set('OUTPUT', join_paths(dpdk_build_root, 'doc', 'api'))
 cdata.set('HTML_OUTPUT', 'api')
-cdata.set('TOPDIR', meson.source_root())
-cdata.set('STRIP_FROM_PATH', ' '.join([meson.source_root(), join_paths(meson.build_root(), 'doc', 'api')]))
+cdata.set('TOPDIR', dpdk_source_root)
+cdata.set('STRIP_FROM_PATH', ' '.join([dpdk_source_root, join_paths(dpdk_build_root, 'doc', 'api')]))
 
 doxy_conf = configure_file(input: 'doxy-api.conf.in',
 	output: 'doxy-api.conf',
diff --git a/kernel/freebsd/meson.build b/kernel/freebsd/meson.build
index dc156a43fd..bc97d784c5 100644
--- a/kernel/freebsd/meson.build
+++ b/kernel/freebsd/meson.build
@@ -9,8 +9,8 @@ kmods = ['contigmem', 'nic_uio']
 # right now, which allows us to simplify things. We pull in the sourcer
 # files from the individual meson.build files, and then use a custom
 # target to call make, passing in the values as env parameters.
-kmod_cflags = ['-I' + meson.build_root(),
-		'-I' + join_paths(meson.source_root(), 'config'),
+kmod_cflags = ['-I' + dpdk_build_root,
+		'-I' + join_paths(dpdk_source_root, 'config'),
 		'-include rte_config.h']
 
 # to avoid warnings due to race conditions with creating the dev_if.h, etc.
diff --git a/kernel/linux/kni/meson.build b/kernel/linux/kni/meson.build
index 679fdf4f51..facc6d8a69 100644
--- a/kernel/linux/kni/meson.build
+++ b/kernel/linux/kni/meson.build
@@ -28,10 +28,10 @@ custom_target('rte_kni',
 		'M=' + meson.current_build_dir(),
 		'src=' + meson.current_source_dir(),
 		' '.join(['MODULE_CFLAGS=', kmod_cflags,'-include '])
-		+ meson.source_root() + '/config/rte_config.h' +
-		' -I' + meson.source_root() + '/lib/librte_eal/common/include' +
-		' -I' + meson.source_root() + '/lib/librte_eal/linux/eal/include' +
-		' -I' + meson.build_root() +
+		+ dpdk_source_root + '/config/rte_config.h' +
+		' -I' + dpdk_source_root + '/lib/librte_eal/common/include' +
+		' -I' + dpdk_source_root + '/lib/librte_eal/linux/eal/include' +
+		' -I' + dpdk_build_root +
 		' -I' + meson.current_source_dir(),
 		'modules'],
 	depends: kni_mkfile,
diff --git a/meson.build b/meson.build
index 00ebbef115..a32bcda1c9 100644
--- a/meson.build
+++ b/meson.build
@@ -17,6 +17,8 @@ project('DPDK', 'C',
 
 # set up some global vars for compiler, platform, configuration, etc.
 cc = meson.get_compiler('c')
+dpdk_source_root = meson.current_source_dir()
+dpdk_build_root = meson.current_build_dir()
 dpdk_conf = configuration_data()
 dpdk_libraries = []
 dpdk_static_libraries = []
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 v2 4/5] build: fix warnings when running external commands
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
                     ` (2 preceding siblings ...)
  2022-03-01 14:44   ` [PATCH 19.11 v2 3/5] build: remove deprecated Meson functions Bruce Richardson
@ 2022-03-01 14:44   ` Bruce Richardson
  2022-03-01 14:44   ` [PATCH 19.11 v2 5/5] drivers: remove warning with Meson 0.59 Bruce Richardson
  2022-03-09  7:59   ` [PATCH 19.11 v2 0/5] Patch backports from main Christian Ehrhardt
  5 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:44 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

Meson 0.61.1 is giving warnings that the calls to run_command do not
always explicitly specify if the result is to be checked or not, i.e.
there is a missing "check" parameter. This is because the default
behaviour without the parameter is due to change in the future.

We can fix these warnings by explicitly adding into each call whether
the result should be checked by meson or not. This patch therefore
adds in "check: false" to each run_command call where the result is
being checked by the DPDK meson.build code afterwards, and adds in
"check: true" to any calls where the result is currently unchecked.

Bugzilla ID: 921
Cc: stable@dpdk.org

Reported-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
---
 app/test/meson.build         | 4 ++--
 config/arm/meson.build       | 2 +-
 config/meson.build           | 4 ++--
 config/x86/meson.build       | 2 +-
 drivers/meson.build          | 4 ++--
 kernel/linux/kni/meson.build | 2 +-
 kernel/linux/meson.build     | 6 +++---
 lib/meson.build              | 4 ++--
 meson.build                  | 4 ++--
 9 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/app/test/meson.build b/app/test/meson.build
index 2e35e93477..5554be9710 100644
--- a/app/test/meson.build
+++ b/app/test/meson.build
@@ -405,7 +405,7 @@ dpdk_test = executable('dpdk-test',
 has_hugepage = true
 if is_linux
 	check_hugepage = run_command('cat',
-				     '/proc/sys/vm/nr_hugepages')
+				     '/proc/sys/vm/nr_hugepages', check: false)
 	if (check_hugepage.returncode() != 0 or
 	    check_hugepage.stdout().strip() == '0')
 		has_hugepage = false
@@ -419,7 +419,7 @@ timeout_seconds = 600
 timeout_seconds_fast = 10
 
 get_coremask = find_program('get-coremask.sh')
-num_cores_arg = '-l ' + run_command(get_coremask).stdout().strip()
+num_cores_arg = '-l ' + run_command(get_coremask, check: true).stdout().strip()
 
 default_test_args = [num_cores_arg]
 
diff --git a/config/arm/meson.build b/config/arm/meson.build
index 60f7b05396..dceea336dd 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -152,7 +152,7 @@ else
 		# 'Primary Part number', 'Revision']
 		detect_vendor = find_program(join_paths(
 				meson.current_source_dir(), 'armv8_machine.py'))
-		cmd = run_command(detect_vendor.path())
+		cmd = run_command(detect_vendor.path(), check: false)
 		if cmd.returncode() == 0
 			cmd_output = cmd.stdout().to_lower().strip().split(' ')
 		endif
diff --git a/config/meson.build b/config/meson.build
index e87d1ba533..4b03746889 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -22,8 +22,8 @@ is_ms_linker = is_windows and (cc.get_id() == 'clang')
 # depending on the configuration options
 pver = meson.project_version().split('.')
 major_version = '@0@.@1@'.format(pver.get(0), pver.get(1))
-abi_version = run_command(find_program('cat', 'more'),
-	abi_version_file).stdout().strip()
+abi_version = run_command(find_program('cat', 'more'), abi_version_file,
+		check: true).stdout().strip()
 # experimental libraries are versioned as 0.majorminor versions, e.g. 0.201
 ever = abi_version.split('.')
 experimental_abi_version = '0.@0@@1@'.format(ever.get(0), ever.get(1))
diff --git a/config/x86/meson.build b/config/x86/meson.build
index adc857ba28..855a7d0edd 100644
--- a/config/x86/meson.build
+++ b/config/x86/meson.build
@@ -3,7 +3,7 @@
 
 # get binutils version for the workaround of Bug 97
 if not is_windows
-	ldver = run_command('ld', '-v').stdout().strip()
+	ldver = run_command('ld', '-v', check: true).stdout().strip()
 	if ldver.contains('2.30') and cc.has_argument('-mno-avx512f')
 		machine_args += '-mno-avx512f'
 		message('Binutils 2.30 detected, disabling AVX512 support as workaround for bug #97')
diff --git a/drivers/meson.build b/drivers/meson.build
index 0400d84675..22cc049142 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -127,8 +127,8 @@ foreach class:dpdk_driver_classes
 					meson.current_source_dir(),
 					drv_path, lib_name)
 
-			is_experimental = run_command(is_experimental_cmd,
-				files(version_map)).returncode()
+			is_experimental = run_command(is_experimental_cmd, files(version_map),
+					check: false).returncode()
 
 			if is_experimental != 0
 				lib_version = experimental_abi_version
diff --git a/kernel/linux/kni/meson.build b/kernel/linux/kni/meson.build
index facc6d8a69..eb97ec1491 100644
--- a/kernel/linux/kni/meson.build
+++ b/kernel/linux/kni/meson.build
@@ -5,7 +5,7 @@
 # Ref: https://jira.devtools.intel.com/browse/DPDK-29263
 kmod_cflags = ''
 file_path = kernel_source_dir + '/include/linux/netdevice.h'
-run_cmd = run_command('grep', 'ndo_tx_timeout', file_path)
+run_cmd = run_command('grep', 'ndo_tx_timeout', file_path, check: false)
 
 if run_cmd.stdout().contains('txqueue') == true
    kmod_cflags = '-DHAVE_ARG_TX_QUEUE'
diff --git a/kernel/linux/meson.build b/kernel/linux/meson.build
index cd74739905..793c58ef56 100644
--- a/kernel/linux/meson.build
+++ b/kernel/linux/meson.build
@@ -13,7 +13,7 @@ kernel_dir = get_option('kernel_dir')
 kernel_source_dir = get_option('kernel_dir')
 if kernel_dir == ''
 	# use default path for native builds
-	kernel_version = run_command('uname', '-r').stdout().strip()
+	kernel_version = run_command('uname', '-r', check: true).stdout().strip()
 	kernel_dir = '/lib/modules/' + kernel_version
 	if kernel_source_dir == ''
 		# use default path for native builds
@@ -22,8 +22,8 @@ if kernel_dir == ''
 endif
 
 # test running make in kernel directory, using "make kernelversion"
-make_returncode = run_command('make', '-sC', kernel_dir + '/build',
-		'kernelversion').returncode()
+make_returncode = run_command('make', '-sC', kernel_dir + '/build', 'kernelversion',
+		check: false).returncode()
 if make_returncode != 0
 	warning('Cannot compile kernel modules as requested - are kernel headers installed?')
 	subdir_done()
diff --git a/lib/meson.build b/lib/meson.build
index f8da4f3168..6d86ca3e26 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -108,8 +108,8 @@ foreach l:libraries
 			version_map = '@0@/@1@/rte_@2@_version.map'.format(
 					meson.current_source_dir(), dir_name, name)
 
-			is_experimental = run_command(is_experimental_cmd,
-					files(version_map)).returncode()
+			is_experimental = run_command(is_experimental_cmd, files(version_map),
+					check: false).returncode()
 
 			if is_experimental != 0
 				lib_version = experimental_abi_version
diff --git a/meson.build b/meson.build
index a32bcda1c9..94f51a8c6c 100644
--- a/meson.build
+++ b/meson.build
@@ -4,8 +4,8 @@
 project('DPDK', 'C',
 	# Get version number from file.
 	# Fallback to "more" for Windows compatibility.
-	version: run_command(find_program('cat', 'more'),
-		files('VERSION')).stdout().strip(),
+	version: run_command(find_program('cat', 'more'), files('VERSION'),
+			check: true).stdout().strip(),
 	license: 'BSD',
 	default_options: [
         'buildtype=release',
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 19.11 v2 5/5] drivers: remove warning with Meson 0.59
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
                     ` (3 preceding siblings ...)
  2022-03-01 14:44   ` [PATCH 19.11 v2 4/5] build: fix warnings when running external commands Bruce Richardson
@ 2022-03-01 14:44   ` Bruce Richardson
  2022-03-09  7:59   ` [PATCH 19.11 v2 0/5] Patch backports from main Christian Ehrhardt
  5 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2022-03-01 14:44 UTC (permalink / raw)
  To: stable; +Cc: christian.ehrhardt, Bruce Richardson, Jerin Jacob

Since meson 0.59.0 version, the extract_all_objects() API
need to pass explicit boolean value.

To remove the following warning[1], added explicit `true` for
extract_all_objects() use in codebase whever there is
no argument.

[1]
WARNING: extract_all_objects called without setting recursive
keyword argument. Meson currently defaults to
non-recursive to maintain backward compatibility but
the default will be changed in the future.

Note: This is a re-implementation for 19.11 of original commit:
   1539acc20a63 ("drivers: remove warning with Meson 0.59")

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/meson.build                   | 2 +-
 drivers/net/e1000/base/meson.build    | 2 +-
 drivers/net/fm10k/base/meson.build    | 2 +-
 drivers/net/hinic/base/meson.build    | 2 +-
 drivers/net/i40e/base/meson.build     | 2 +-
 drivers/net/iavf/base/meson.build     | 2 +-
 drivers/net/ice/base/meson.build      | 2 +-
 drivers/net/ixgbe/base/meson.build    | 2 +-
 drivers/net/octeontx/base/meson.build | 2 +-
 drivers/net/qede/base/meson.build     | 2 +-
 drivers/net/sfc/base/meson.build      | 2 +-
 drivers/net/thunderx/base/meson.build | 2 +-
 drivers/raw/ifpga/base/meson.build    | 2 +-
 13 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/drivers/meson.build b/drivers/meson.build
index 22cc049142..6544bea7ee 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -116,7 +116,7 @@ foreach class:dpdk_driver_classes
 					include_directories: includes,
 					dependencies: static_deps,
 					c_args: cflags)
-			objs += tmp_lib.extract_all_objects()
+			objs += tmp_lib.extract_all_objects(recursive: true)
 			sources = custom_target(out_filename,
 					command: [pmdinfo, tmp_lib.full_path(),
 						'@OUTPUT@', pmdinfogen],
diff --git a/drivers/net/e1000/base/meson.build b/drivers/net/e1000/base/meson.build
index f26f242987..ed00d37aed 100644
--- a/drivers/net/e1000/base/meson.build
+++ b/drivers/net/e1000/base/meson.build
@@ -37,4 +37,4 @@ endforeach
 base_lib = static_library('e1000_base', sources,
 	dependencies: static_rte_eal,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/fm10k/base/meson.build b/drivers/net/fm10k/base/meson.build
index 40d9b730a3..d77ab9252d 100644
--- a/drivers/net/fm10k/base/meson.build
+++ b/drivers/net/fm10k/base/meson.build
@@ -28,4 +28,4 @@ endforeach
 base_lib = static_library('fm10k_base', sources,
 	dependencies: static_rte_eal,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/hinic/base/meson.build b/drivers/net/hinic/base/meson.build
index 6cf947f841..227c589fcc 100644
--- a/drivers/net/hinic/base/meson.build
+++ b/drivers/net/hinic/base/meson.build
@@ -34,4 +34,4 @@ c_args = cflags
 base_lib = static_library('hinic_base', sources,
 	dependencies: [static_rte_eal, static_rte_ethdev, static_rte_bus_pci, static_rte_hash],
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/i40e/base/meson.build b/drivers/net/i40e/base/meson.build
index bfc38ae1a0..03069e7e9b 100644
--- a/drivers/net/i40e/base/meson.build
+++ b/drivers/net/i40e/base/meson.build
@@ -30,4 +30,4 @@ endforeach
 base_lib = static_library('i40e_base', sources,
 	dependencies: static_rte_eal,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/iavf/base/meson.build b/drivers/net/iavf/base/meson.build
index bcb24b7399..857eed7eb4 100644
--- a/drivers/net/iavf/base/meson.build
+++ b/drivers/net/iavf/base/meson.build
@@ -20,4 +20,4 @@ endforeach
 base_lib = static_library('iavf_base', sources,
 	dependencies: static_rte_eal,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/ice/base/meson.build b/drivers/net/ice/base/meson.build
index 26c0f2ef62..3f50052ece 100644
--- a/drivers/net/ice/base/meson.build
+++ b/drivers/net/ice/base/meson.build
@@ -35,4 +35,4 @@ endforeach
 base_lib = static_library('ice_base', sources,
 	dependencies: static_rte_eal,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/ixgbe/base/meson.build b/drivers/net/ixgbe/base/meson.build
index 20677ab034..4d04e77471 100644
--- a/drivers/net/ixgbe/base/meson.build
+++ b/drivers/net/ixgbe/base/meson.build
@@ -34,4 +34,4 @@ endforeach
 base_lib = static_library('ixgbe_base', sources,
 	dependencies: static_rte_eal,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/octeontx/base/meson.build b/drivers/net/octeontx/base/meson.build
index e1060fc4ec..a3c3475994 100644
--- a/drivers/net/octeontx/base/meson.build
+++ b/drivers/net/octeontx/base/meson.build
@@ -25,4 +25,4 @@ base_lib = static_library('octeontx_base', sources,
 	dependencies: static_objs,
 )
 
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/qede/base/meson.build b/drivers/net/qede/base/meson.build
index 71b89737df..83446ee637 100644
--- a/drivers/net/qede/base/meson.build
+++ b/drivers/net/qede/base/meson.build
@@ -57,4 +57,4 @@ endforeach
 base_lib = static_library('qede_base', sources,
 	dependencies: static_rte_net,
 	c_args: c_args)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/net/sfc/base/meson.build b/drivers/net/sfc/base/meson.build
index 074112f169..4e6b15e5e5 100644
--- a/drivers/net/sfc/base/meson.build
+++ b/drivers/net/sfc/base/meson.build
@@ -78,7 +78,7 @@ if build
 		dependencies: static_rte_eal,
 		c_args: c_args)
 
-	base_objs = base_lib.extract_all_objects()
+	base_objs = base_lib.extract_all_objects(recursive: true)
 else
 	base_objs = []
 endif
diff --git a/drivers/net/thunderx/base/meson.build b/drivers/net/thunderx/base/meson.build
index bf4e8608ad..1034531371 100644
--- a/drivers/net/thunderx/base/meson.build
+++ b/drivers/net/thunderx/base/meson.build
@@ -16,4 +16,4 @@ base_lib = static_library('nicvf_base', sources,
 	dependencies: static_rte_ethdev
 )
 
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
diff --git a/drivers/raw/ifpga/base/meson.build b/drivers/raw/ifpga/base/meson.build
index b13e13e894..55a9c29d2f 100644
--- a/drivers/raw/ifpga/base/meson.build
+++ b/drivers/raw/ifpga/base/meson.build
@@ -26,4 +26,4 @@ sources = [
 base_lib = static_library('ifpga_rawdev_base', sources,
 	dependencies: static_rte_eal,
 	c_args: cflags)
-base_objs = base_lib.extract_all_objects()
+base_objs = base_lib.extract_all_objects(recursive: true)
-- 
2.32.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 19.11 v2 0/5] Patch backports from main
  2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
                     ` (4 preceding siblings ...)
  2022-03-01 14:44   ` [PATCH 19.11 v2 5/5] drivers: remove warning with Meson 0.59 Bruce Richardson
@ 2022-03-09  7:59   ` Christian Ehrhardt
  5 siblings, 0 replies; 12+ messages in thread
From: Christian Ehrhardt @ 2022-03-09  7:59 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: stable

On Tue, Mar 1, 2022 at 3:44 PM Bruce Richardson
<bruce.richardson@intel.com> wrote:
>
> This set contains the following backports:
>
> ecb904cc45  Bruce Richardson build: fix warnings when running external commands
> e16b972b1a  Bruce Richardson build: remove deprecated Meson functions
> 59144f6edd  Bruce Richardson eal: fix C++ include
> 153e7d8813  Bruce Richardson eventdev: fix C++ include
>
> This following patch was flagged as a potential for backport, but was not
> suitable for merging, given that there was lot of churn in that patch
> up until latest head revision.
>
> fee17a1d29  Bruce Richardson doc: remove dependency on findutils on FreeBSD
>
> V2: Set now contains an additional backport to remove meson warnings:
>   1539acc20a63 ("drivers: remove warning with Meson 0.59")

Thank you Bruce,
I applied all 5 of the v2 submission to 19.11-wip

P.S. I'll see later if one causes trouble and would let you know in that case.

> Bruce Richardson (5):
>   eventdev: fix C++ include
>   eal: fix C++ include
>   build: remove deprecated Meson functions
>   build: fix warnings when running external commands
>   drivers: remove warning with Meson 0.59
>
>  app/test/meson.build                               |  4 ++--
>  config/arm/meson.build                             |  2 +-
>  config/meson.build                                 |  4 ++--
>  config/x86/meson.build                             |  2 +-
>  doc/api/meson.build                                | 10 +++++-----
>  drivers/meson.build                                |  6 +++---
>  drivers/net/e1000/base/meson.build                 |  2 +-
>  drivers/net/fm10k/base/meson.build                 |  2 +-
>  drivers/net/hinic/base/meson.build                 |  2 +-
>  drivers/net/i40e/base/meson.build                  |  2 +-
>  drivers/net/iavf/base/meson.build                  |  2 +-
>  drivers/net/ice/base/meson.build                   |  2 +-
>  drivers/net/ixgbe/base/meson.build                 |  2 +-
>  drivers/net/octeontx/base/meson.build              |  2 +-
>  drivers/net/qede/base/meson.build                  |  2 +-
>  drivers/net/sfc/base/meson.build                   |  2 +-
>  drivers/net/thunderx/base/meson.build              |  2 +-
>  drivers/raw/ifpga/base/meson.build                 |  2 +-
>  kernel/freebsd/meson.build                         |  4 ++--
>  kernel/linux/kni/meson.build                       | 10 +++++-----
>  kernel/linux/meson.build                           |  6 +++---
>  .../common/include/generic/rte_ticketlock.h        | 14 +++++++-------
>  lib/librte_eventdev/rte_event_timer_adapter.h      |  4 ++++
>  lib/meson.build                                    |  4 ++--
>  meson.build                                        |  6 ++++--
>  25 files changed, 53 insertions(+), 47 deletions(-)
>
> --
> 2.32.0
>


-- 
Christian Ehrhardt
Staff Engineer, Ubuntu Server
Canonical Ltd

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-03-09  7:59 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-01 14:08 [PATCH 19.11 0/4] Patch backports from main Bruce Richardson
2022-03-01 14:08 ` [PATCH 19.11 1/4] eventdev: fix C++ include Bruce Richardson
2022-03-01 14:08 ` [PATCH 19.11 2/4] eal: " Bruce Richardson
2022-03-01 14:08 ` [PATCH 19.11 3/4] build: remove deprecated Meson functions Bruce Richardson
2022-03-01 14:08 ` [PATCH 19.11 4/4] build: fix warnings when running external commands Bruce Richardson
2022-03-01 14:43 ` [PATCH 19.11 v2 0/5] Patch backports from main Bruce Richardson
2022-03-01 14:43   ` [PATCH 19.11 v2 1/5] eventdev: fix C++ include Bruce Richardson
2022-03-01 14:44   ` [PATCH 19.11 v2 2/5] eal: " Bruce Richardson
2022-03-01 14:44   ` [PATCH 19.11 v2 3/5] build: remove deprecated Meson functions Bruce Richardson
2022-03-01 14:44   ` [PATCH 19.11 v2 4/5] build: fix warnings when running external commands Bruce Richardson
2022-03-01 14:44   ` [PATCH 19.11 v2 5/5] drivers: remove warning with Meson 0.59 Bruce Richardson
2022-03-09  7:59   ` [PATCH 19.11 v2 0/5] Patch backports from main Christian Ehrhardt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).