DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] net: not compile PMD AVX library when no IOVA as PA
@ 2022-12-12 12:17 Qi Zhang
  2022-12-12 14:52 ` [PATCH v2] net: not build " Qi Zhang
  2022-12-12 14:55 ` Qi Zhang
  0 siblings, 2 replies; 8+ messages in thread
From: Qi Zhang @ 2022-12-12 12:17 UTC (permalink / raw)
  To: mb, bruce.richardson, wenzhuo.lu; +Cc: dev, wenjun1.wu, Qi Zhang, stable

PMD not announce pmd_supports_disable_iova_as_pa will not be build
when RTE_IOVA_AS_PA is not defined, but some AVX library for vector
path is not skipped by the build system which cause compile error.

The patch modify i40e, iavf, ice's meson file to skip AVX library
build when RTE_IOVA_AS_PA is not defined.

Cc: stable@dpdk.org

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 drivers/net/i40e/meson.build | 6 ++++--
 drivers/net/iavf/meson.build | 6 ++++--
 drivers/net/ice/meson.build  | 6 ++++--
 3 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build
index e00c1a9ef9..0001d4816b 100644
--- a/drivers/net/i40e/meson.build
+++ b/drivers/net/i40e/meson.build
@@ -37,6 +37,7 @@ testpmd_sources = files('i40e_testpmd.c')
 
 deps += ['hash']
 includes += include_directories('base')
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 if arch_subdir == 'x86'
     sources += files('i40e_rxtx_vec_sse.c')
@@ -51,7 +52,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('i40e_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == true and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         i40e_avx2_lib = static_library('i40e_avx2_lib',
                 'i40e_rxtx_vec_avx2.c',
@@ -71,7 +72,8 @@ if arch_subdir == 'x86'
         cc.has_argument('-mavx512f') and
         cc.has_argument('-mavx512bw'))
 
-    if i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true
+    if iova_as_pa == true and
+        (i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
diff --git a/drivers/net/iavf/meson.build b/drivers/net/iavf/meson.build
index 6df771f917..90428fa2d8 100644
--- a/drivers/net/iavf/meson.build
+++ b/drivers/net/iavf/meson.build
@@ -6,6 +6,7 @@ cflags += ['-Wno-strict-aliasing']
 
 includes += include_directories('../../common/iavf')
 deps += ['common_iavf', 'security', 'cryptodev']
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 sources = files(
         'iavf_ethdev.c',
@@ -32,7 +33,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('iavf_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == true and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         iavf_avx2_lib = static_library('iavf_avx2_lib',
                 'iavf_rxtx_vec_avx2.c',
@@ -52,7 +53,8 @@ if arch_subdir == 'x86'
         cc.has_argument('-mavx512f') and
         cc.has_argument('-mavx512bw'))
 
-    if iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true
+    if iova_as_pa == true and
+        (iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
diff --git a/drivers/net/ice/meson.build b/drivers/net/ice/meson.build
index 528e77613e..5d17039789 100644
--- a/drivers/net/ice/meson.build
+++ b/drivers/net/ice/meson.build
@@ -20,6 +20,7 @@ testpmd_sources = files('ice_testpmd.c')
 
 deps += ['hash', 'net', 'common_iavf']
 includes += include_directories('base', '../../common/iavf')
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 if arch_subdir == 'x86'
     sources += files('ice_rxtx_vec_sse.c')
@@ -34,7 +35,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('ice_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == true and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         ice_avx2_lib = static_library('ice_avx2_lib',
                 'ice_rxtx_vec_avx2.c',
@@ -55,7 +56,8 @@ if arch_subdir == 'x86'
                 cc.has_argument('-mavx512bw')
     )
 
-    if ice_avx512_cpu_support == true or ice_avx512_cc_support == true
+    if iova_as_pa == true and
+        (avx512_cpu_support == true or ice_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
-- 
2.31.1


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

* [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2022-12-12 12:17 [PATCH] net: not compile PMD AVX library when no IOVA as PA Qi Zhang
@ 2022-12-12 14:52 ` Qi Zhang
  2022-12-12 14:55 ` Qi Zhang
  1 sibling, 0 replies; 8+ messages in thread
From: Qi Zhang @ 2022-12-12 14:52 UTC (permalink / raw)
  To: mb, bruce.richardson, wenzhuo.lu; +Cc: dev, wenjun1.wu, Qi Zhang, stable

PMD not announce pmd_supports_disable_iova_as_pa will not be build
when RTE_IOVA_AS_PA is not defined, but some AVX library for vector
path is not skipped by the build system which cause compile error.

The patch modify i40e, iavf, ice's meson file to skip AVX library
build when RTE_IOVA_AS_PA is not defined.

Cc: stable@dpdk.org

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 drivers/net/i40e/meson.build | 5 +++--
 drivers/net/iavf/meson.build | 5 +++--
 drivers/net/ice/meson.build  | 5 +++--
 3 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build
index e00c1a9ef9..ac8a4bd3f8 100644
--- a/drivers/net/i40e/meson.build
+++ b/drivers/net/i40e/meson.build
@@ -37,6 +37,7 @@ testpmd_sources = files('i40e_testpmd.c')
 
 deps += ['hash']
 includes += include_directories('base')
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 if arch_subdir == 'x86'
     sources += files('i40e_rxtx_vec_sse.c')
@@ -51,7 +52,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('i40e_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == 1 and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         i40e_avx2_lib = static_library('i40e_avx2_lib',
                 'i40e_rxtx_vec_avx2.c',
@@ -71,7 +72,7 @@ if arch_subdir == 'x86'
         cc.has_argument('-mavx512f') and
         cc.has_argument('-mavx512bw'))
 
-    if i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true
+    if iova_as_pa == 1 and (i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
diff --git a/drivers/net/iavf/meson.build b/drivers/net/iavf/meson.build
index 6df771f917..37968200c1 100644
--- a/drivers/net/iavf/meson.build
+++ b/drivers/net/iavf/meson.build
@@ -6,6 +6,7 @@ cflags += ['-Wno-strict-aliasing']
 
 includes += include_directories('../../common/iavf')
 deps += ['common_iavf', 'security', 'cryptodev']
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 sources = files(
         'iavf_ethdev.c',
@@ -32,7 +33,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('iavf_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == 1 and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         iavf_avx2_lib = static_library('iavf_avx2_lib',
                 'iavf_rxtx_vec_avx2.c',
@@ -52,7 +53,7 @@ if arch_subdir == 'x86'
         cc.has_argument('-mavx512f') and
         cc.has_argument('-mavx512bw'))
 
-    if iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true
+    if iova_as_pa == 1 and (iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
diff --git a/drivers/net/ice/meson.build b/drivers/net/ice/meson.build
index 528e77613e..8efa533e0b 100644
--- a/drivers/net/ice/meson.build
+++ b/drivers/net/ice/meson.build
@@ -20,6 +20,7 @@ testpmd_sources = files('ice_testpmd.c')
 
 deps += ['hash', 'net', 'common_iavf']
 includes += include_directories('base', '../../common/iavf')
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 if arch_subdir == 'x86'
     sources += files('ice_rxtx_vec_sse.c')
@@ -34,7 +35,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('ice_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == 1 and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         ice_avx2_lib = static_library('ice_avx2_lib',
                 'ice_rxtx_vec_avx2.c',
@@ -55,7 +56,7 @@ if arch_subdir == 'x86'
                 cc.has_argument('-mavx512bw')
     )
 
-    if ice_avx512_cpu_support == true or ice_avx512_cc_support == true
+    if iova_as_pa == 1 and (ice_avx512_cpu_support == true or ice_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
-- 
2.31.1


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

* [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2022-12-12 12:17 [PATCH] net: not compile PMD AVX library when no IOVA as PA Qi Zhang
  2022-12-12 14:52 ` [PATCH v2] net: not build " Qi Zhang
@ 2022-12-12 14:55 ` Qi Zhang
  2023-01-29 12:35   ` Zhang, Qi Z
  1 sibling, 1 reply; 8+ messages in thread
From: Qi Zhang @ 2022-12-12 14:55 UTC (permalink / raw)
  To: mb, bruce.richardson, wenzhuo.lu; +Cc: dev, wenjun1.wu, Qi Zhang, stable

PMD not announce pmd_supports_disable_iova_as_pa will not be build
when RTE_IOVA_AS_PA is not defined, but some AVX library for vector
path is not skipped by the build system which cause compile error.

The patch modify i40e, iavf, ice's meson file to skip AVX library
build when RTE_IOVA_AS_PA is not defined.

Cc: stable@dpdk.org

Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
v2:
- fix build error due to wrong type of meson variable.

 drivers/net/i40e/meson.build | 5 +++--
 drivers/net/iavf/meson.build | 5 +++--
 drivers/net/ice/meson.build  | 5 +++--
 3 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build
index e00c1a9ef9..ac8a4bd3f8 100644
--- a/drivers/net/i40e/meson.build
+++ b/drivers/net/i40e/meson.build
@@ -37,6 +37,7 @@ testpmd_sources = files('i40e_testpmd.c')
 
 deps += ['hash']
 includes += include_directories('base')
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 if arch_subdir == 'x86'
     sources += files('i40e_rxtx_vec_sse.c')
@@ -51,7 +52,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('i40e_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == 1 and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         i40e_avx2_lib = static_library('i40e_avx2_lib',
                 'i40e_rxtx_vec_avx2.c',
@@ -71,7 +72,7 @@ if arch_subdir == 'x86'
         cc.has_argument('-mavx512f') and
         cc.has_argument('-mavx512bw'))
 
-    if i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true
+    if iova_as_pa == 1 and (i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
diff --git a/drivers/net/iavf/meson.build b/drivers/net/iavf/meson.build
index 6df771f917..37968200c1 100644
--- a/drivers/net/iavf/meson.build
+++ b/drivers/net/iavf/meson.build
@@ -6,6 +6,7 @@ cflags += ['-Wno-strict-aliasing']
 
 includes += include_directories('../../common/iavf')
 deps += ['common_iavf', 'security', 'cryptodev']
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 sources = files(
         'iavf_ethdev.c',
@@ -32,7 +33,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('iavf_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == 1 and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         iavf_avx2_lib = static_library('iavf_avx2_lib',
                 'iavf_rxtx_vec_avx2.c',
@@ -52,7 +53,7 @@ if arch_subdir == 'x86'
         cc.has_argument('-mavx512f') and
         cc.has_argument('-mavx512bw'))
 
-    if iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true
+    if iova_as_pa == 1 and (iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
diff --git a/drivers/net/ice/meson.build b/drivers/net/ice/meson.build
index 528e77613e..8efa533e0b 100644
--- a/drivers/net/ice/meson.build
+++ b/drivers/net/ice/meson.build
@@ -20,6 +20,7 @@ testpmd_sources = files('ice_testpmd.c')
 
 deps += ['hash', 'net', 'common_iavf']
 includes += include_directories('base', '../../common/iavf')
+iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA')
 
 if arch_subdir == 'x86'
     sources += files('ice_rxtx_vec_sse.c')
@@ -34,7 +35,7 @@ if arch_subdir == 'x86'
     if cc.get_define('__AVX2__', args: machine_args) != ''
         cflags += ['-DCC_AVX2_SUPPORT']
         sources += files('ice_rxtx_vec_avx2.c')
-    elif cc.has_argument('-mavx2')
+    elif iova_as_pa == 1 and cc.has_argument('-mavx2')
         cflags += ['-DCC_AVX2_SUPPORT']
         ice_avx2_lib = static_library('ice_avx2_lib',
                 'ice_rxtx_vec_avx2.c',
@@ -55,7 +56,7 @@ if arch_subdir == 'x86'
                 cc.has_argument('-mavx512bw')
     )
 
-    if ice_avx512_cpu_support == true or ice_avx512_cc_support == true
+    if iova_as_pa == 1 and (ice_avx512_cpu_support == true or ice_avx512_cc_support == true)
         cflags += ['-DCC_AVX512_SUPPORT']
         avx512_args = [cflags, '-mavx512f', '-mavx512bw']
         if cc.has_argument('-march=skylake-avx512')
-- 
2.31.1


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

* RE: [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2022-12-12 14:55 ` Qi Zhang
@ 2023-01-29 12:35   ` Zhang, Qi Z
  2023-02-19 10:04     ` Thomas Monjalon
  0 siblings, 1 reply; 8+ messages in thread
From: Zhang, Qi Z @ 2023-01-29 12:35 UTC (permalink / raw)
  To: mb, Richardson, Bruce, Lu, Wenzhuo; +Cc: dev, Wu, Wenjun1, stable



> -----Original Message-----
> From: Zhang, Qi Z <qi.z.zhang@intel.com>
> Sent: Monday, December 12, 2022 10:56 PM
> To: mb@smartsharesystems.com; Richardson, Bruce
> <bruce.richardson@intel.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>
> Cc: dev@dpdk.org; Wu, Wenjun1 <wenjun1.wu@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; stable@dpdk.org
> Subject: [PATCH v2] net: not build PMD AVX library when no IOVA as PA
> 
> PMD not announce pmd_supports_disable_iova_as_pa will not be build
> when RTE_IOVA_AS_PA is not defined, but some AVX library for vector path
> is not skipped by the build system which cause compile error.
> 
> The patch modify i40e, iavf, ice's meson file to skip AVX library build when
> RTE_IOVA_AS_PA is not defined.
> 
> Cc: stable@dpdk.org
> 
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>

Move this for next-net review.

Acked-by: Qi Zhang <qi.z.zhang@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi

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

* Re: [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2023-01-29 12:35   ` Zhang, Qi Z
@ 2023-02-19 10:04     ` Thomas Monjalon
  2023-02-19 11:08       ` Thomas Monjalon
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Monjalon @ 2023-02-19 10:04 UTC (permalink / raw)
  To: mb, Richardson, Bruce, Lu, Wenzhuo, dev, Wu, Wenjun1
  Cc: stable, Zhang, Qi Z, david.marchand, bruce.richardson, Shijith Thotton

29/01/2023 13:35, Zhang, Qi Z:
> From: Zhang, Qi Z <qi.z.zhang@intel.com>
> > 
> > PMD not announce pmd_supports_disable_iova_as_pa will not be build
> > when RTE_IOVA_AS_PA is not defined, but some AVX library for vector path
> > is not skipped by the build system which cause compile error.
> > 
> > The patch modify i40e, iavf, ice's meson file to skip AVX library build when
> > RTE_IOVA_AS_PA is not defined.
> > 
> > Cc: stable@dpdk.org
> > 
> > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> 
> Move this for next-net review.
> 
> Acked-by: Qi Zhang <qi.z.zhang@intel.com>

You ack your own patch?

> Applied to dpdk-next-net-intel.

Sorry I don't pull this one, as I think there is a better fix:
we should not handle this option in each driver.
Instead the file drivers/meson.build must be fixed.



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

* Re: [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2023-02-19 10:04     ` Thomas Monjalon
@ 2023-02-19 11:08       ` Thomas Monjalon
  2023-02-19 12:01         ` Thomas Monjalon
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Monjalon @ 2023-02-19 11:08 UTC (permalink / raw)
  To: mb, Richardson, Bruce, Lu, Wenzhuo, dev, Wu, Wenjun1, stable
  Cc: stable, Zhang, Qi Z, david.marchand, bruce.richardson, Shijith Thotton

19/02/2023 11:04, Thomas Monjalon:
> 29/01/2023 13:35, Zhang, Qi Z:
> > From: Zhang, Qi Z <qi.z.zhang@intel.com>
> > > 
> > > PMD not announce pmd_supports_disable_iova_as_pa will not be build
> > > when RTE_IOVA_AS_PA is not defined, but some AVX library for vector path
> > > is not skipped by the build system which cause compile error.
> > > 
> > > The patch modify i40e, iavf, ice's meson file to skip AVX library build when
> > > RTE_IOVA_AS_PA is not defined.
> > > 
> > > Cc: stable@dpdk.org
> > > 
> > > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> > 
> > Move this for next-net review.
> > 
> > Acked-by: Qi Zhang <qi.z.zhang@intel.com>
> 
> You ack your own patch?
> 
> > Applied to dpdk-next-net-intel.
> 
> Sorry I don't pull this one, as I think there is a better fix:
> we should not handle this option in each driver.
> Instead the file drivers/meson.build must be fixed.

No sorry, it cannot be handled in drivers/meson.build.

So I suggest disabling the whole driver:

+if not get_option('enable_iova_as_pa')
+    subdir_done()
+endif

Note: no need to disable ice, as it is enabled in another commit.



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

* Re: [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2023-02-19 11:08       ` Thomas Monjalon
@ 2023-02-19 12:01         ` Thomas Monjalon
  2023-03-02 13:34           ` Thomas Monjalon
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Monjalon @ 2023-02-19 12:01 UTC (permalink / raw)
  To: mb, Richardson, Bruce, Lu, Wenzhuo, Wu, Wenjun1
  Cc: dev, stable, stable, Zhang, Qi Z, david.marchand,
	bruce.richardson, Shijith Thotton

19/02/2023 12:08, Thomas Monjalon:
> 19/02/2023 11:04, Thomas Monjalon:
> > 29/01/2023 13:35, Zhang, Qi Z:
> > > From: Zhang, Qi Z <qi.z.zhang@intel.com>
> > > > 
> > > > PMD not announce pmd_supports_disable_iova_as_pa will not be build
> > > > when RTE_IOVA_AS_PA is not defined, but some AVX library for vector path
> > > > is not skipped by the build system which cause compile error.
> > > > 
> > > > The patch modify i40e, iavf, ice's meson file to skip AVX library build when
> > > > RTE_IOVA_AS_PA is not defined.
> > > > 
> > > > Cc: stable@dpdk.org
> > > > 
> > > > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> > > 
> > > Move this for next-net review.
> > > 
> > > Acked-by: Qi Zhang <qi.z.zhang@intel.com>
> > 
> > You ack your own patch?
> > 
> > > Applied to dpdk-next-net-intel.
> > 
> > Sorry I don't pull this one, as I think there is a better fix:
> > we should not handle this option in each driver.
> > Instead the file drivers/meson.build must be fixed.
> 
> No sorry, it cannot be handled in drivers/meson.build.
> 
> So I suggest disabling the whole driver:
> 
> +if not get_option('enable_iova_as_pa')
> +    subdir_done()
> +endif
> 
> Note: no need to disable ice, as it is enabled in another commit.

I've sent a patch to better disable more drivers:
https://patches.dpdk.org/project/dpdk/patch/20230219115529.3260580-1-thomas@monjalon.net/

I think more patches would be required to enable more drivers
supporting IOVA as VA. For instance, mempool drivers should be enabled.



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

* Re: [PATCH v2] net: not build PMD AVX library when no IOVA as PA
  2023-02-19 12:01         ` Thomas Monjalon
@ 2023-03-02 13:34           ` Thomas Monjalon
  0 siblings, 0 replies; 8+ messages in thread
From: Thomas Monjalon @ 2023-03-02 13:34 UTC (permalink / raw)
  To: Richardson, Bruce, Lu, Wenzhuo, Wu, Wenjun1, Zhang, Qi Z,
	Shijith Thotton
  Cc: mb, dev, stable, david.marchand

19/02/2023 13:01, Thomas Monjalon:
> 19/02/2023 12:08, Thomas Monjalon:
> > 19/02/2023 11:04, Thomas Monjalon:
> > > 29/01/2023 13:35, Zhang, Qi Z:
> > > > From: Zhang, Qi Z <qi.z.zhang@intel.com>
> > > > > 
> > > > > PMD not announce pmd_supports_disable_iova_as_pa will not be build
> > > > > when RTE_IOVA_AS_PA is not defined, but some AVX library for vector path
> > > > > is not skipped by the build system which cause compile error.
> > > > > 
> > > > > The patch modify i40e, iavf, ice's meson file to skip AVX library build when
> > > > > RTE_IOVA_AS_PA is not defined.
> > > > > 
> > > > > Cc: stable@dpdk.org
> > > > > 
> > > > > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> > > > 
> > > > Move this for next-net review.
> > > > 
> > > > Acked-by: Qi Zhang <qi.z.zhang@intel.com>
> > > 
> > > You ack your own patch?
> > > 
> > > > Applied to dpdk-next-net-intel.
> > > 
> > > Sorry I don't pull this one, as I think there is a better fix:
> > > we should not handle this option in each driver.
> > > Instead the file drivers/meson.build must be fixed.
> > 
> > No sorry, it cannot be handled in drivers/meson.build.
> > 
> > So I suggest disabling the whole driver:
> > 
> > +if not get_option('enable_iova_as_pa')
> > +    subdir_done()
> > +endif
> > 
> > Note: no need to disable ice, as it is enabled in another commit.
> 
> I've sent a patch to better disable more drivers:
> https://patches.dpdk.org/project/dpdk/patch/20230219115529.3260580-1-thomas@monjalon.net/
> 
> I think more patches would be required to enable more drivers
> supporting IOVA as VA. For instance, mempool drivers should be enabled.

I was (stupidly) expecting a review of my patch.





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

end of thread, other threads:[~2023-03-02 13:34 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-12 12:17 [PATCH] net: not compile PMD AVX library when no IOVA as PA Qi Zhang
2022-12-12 14:52 ` [PATCH v2] net: not build " Qi Zhang
2022-12-12 14:55 ` Qi Zhang
2023-01-29 12:35   ` Zhang, Qi Z
2023-02-19 10:04     ` Thomas Monjalon
2023-02-19 11:08       ` Thomas Monjalon
2023-02-19 12:01         ` Thomas Monjalon
2023-03-02 13:34           ` Thomas Monjalon

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).