All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
@ 2016-09-19 14:36 Bruce Richardson
  2016-09-19 14:59 ` Adrien Mazarguil
  0 siblings, 1 reply; 9+ messages in thread
From: Bruce Richardson @ 2016-09-19 14:36 UTC (permalink / raw)
  To: dev; +Cc: Adrien Mazarguil, Bruce Richardson

With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
debug enabled produces lots of errors complaining that "pedantic" is
not a warning level that can be ignored.

error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
 #pragma GCC diagnostic ignored "-pedantic"
                                 ^~~~~~~~~~~

These errors can be removed by changing the "-pedantic" to "-Wpedantic".

Fixes: 7fae69eeff13 ("mlx4: new poll mode driver")
Fixes: 771fa900b73a ("mlx5: introduce new driver for Mellanox ConnectX-4 adapters")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/net/mlx4/mlx4.c         | 8 ++++----
 drivers/net/mlx5/mlx5.c         | 8 ++++----
 drivers/net/mlx5/mlx5.h         | 8 ++++----
 drivers/net/mlx5/mlx5_ethdev.c  | 4 ++--
 drivers/net/mlx5/mlx5_fdir.c    | 8 ++++----
 drivers/net/mlx5/mlx5_mac.c     | 8 ++++----
 drivers/net/mlx5/mlx5_mr.c      | 8 ++++----
 drivers/net/mlx5/mlx5_prm.h     | 4 ++--
 drivers/net/mlx5/mlx5_rss.c     | 8 ++++----
 drivers/net/mlx5/mlx5_rxmode.c  | 8 ++++----
 drivers/net/mlx5/mlx5_rxq.c     | 8 ++++----
 drivers/net/mlx5/mlx5_rxtx.c    | 8 ++++----
 drivers/net/mlx5/mlx5_rxtx.h    | 8 ++++----
 drivers/net/mlx5/mlx5_stats.c   | 4 ++--
 drivers/net/mlx5/mlx5_trigger.c | 4 ++--
 drivers/net/mlx5/mlx5_txq.c     | 8 ++++----
 drivers/net/mlx5/mlx5_vlan.c    | 4 ++--
 17 files changed, 58 insertions(+), 58 deletions(-)

diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
index efe60cf..5bdeac9 100644
--- a/drivers/net/mlx4/mlx4.c
+++ b/drivers/net/mlx4/mlx4.c
@@ -61,16 +61,16 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ether.h>
 #include <rte_ethdev.h>
@@ -87,7 +87,7 @@
 #include <rte_alarm.h>
 #include <rte_memory.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* Generated configuration header. */
diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
index 7264968..1a0a2be 100644
--- a/drivers/net/mlx5/mlx5.c
+++ b/drivers/net/mlx5/mlx5.c
@@ -43,16 +43,16 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_malloc.h>
 #include <rte_ethdev.h>
@@ -60,7 +60,7 @@
 #include <rte_common.h>
 #include <rte_kvargs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h
index 3a86609..65241a6 100644
--- a/drivers/net/mlx5/mlx5.h
+++ b/drivers/net/mlx5/mlx5.h
@@ -43,16 +43,16 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ether.h>
 #include <rte_ethdev.h>
@@ -60,7 +60,7 @@
 #include <rte_interrupts.h>
 #include <rte_errno.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5_utils.h"
diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c
index 130e15d..17588a5 100644
--- a/drivers/net/mlx5/mlx5_ethdev.c
+++ b/drivers/net/mlx5/mlx5_ethdev.c
@@ -50,7 +50,7 @@
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_atomic.h>
 #include <rte_ethdev.h>
@@ -60,7 +60,7 @@
 #include <rte_alarm.h>
 #include <rte_malloc.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_fdir.c b/drivers/net/mlx5/mlx5_fdir.c
index 73eb00e..070edde 100644
--- a/drivers/net/mlx5/mlx5_fdir.c
+++ b/drivers/net/mlx5/mlx5_fdir.c
@@ -40,23 +40,23 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ether.h>
 #include <rte_malloc.h>
 #include <rte_ethdev.h>
 #include <rte_common.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_mac.c b/drivers/net/mlx5/mlx5_mac.c
index f6b27bb..4fcfd3b 100644
--- a/drivers/net/mlx5/mlx5_mac.c
+++ b/drivers/net/mlx5/mlx5_mac.c
@@ -44,22 +44,22 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ether.h>
 #include <rte_ethdev.h>
 #include <rte_common.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_mr.c b/drivers/net/mlx5/mlx5_mr.c
index 67dfefa..0a36384 100644
--- a/drivers/net/mlx5/mlx5_mr.c
+++ b/drivers/net/mlx5/mlx5_mr.c
@@ -34,20 +34,20 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_mempool.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_prm.h b/drivers/net/mlx5/mlx5_prm.h
index 5db219b..4383009 100644
--- a/drivers/net/mlx5/mlx5_prm.h
+++ b/drivers/net/mlx5/mlx5_prm.h
@@ -37,11 +37,11 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/mlx5_hw.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* Get CQE owner bit. */
diff --git a/drivers/net/mlx5/mlx5_rss.c b/drivers/net/mlx5/mlx5_rss.c
index 639e935..0bed74e 100644
--- a/drivers/net/mlx5/mlx5_rss.c
+++ b/drivers/net/mlx5/mlx5_rss.c
@@ -40,21 +40,21 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_malloc.h>
 #include <rte_ethdev.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_rxmode.c b/drivers/net/mlx5/mlx5_rxmode.c
index 8b58555..173e6e8 100644
--- a/drivers/net/mlx5/mlx5_rxmode.c
+++ b/drivers/net/mlx5/mlx5_rxmode.c
@@ -38,20 +38,20 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ethdev.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c
index 29c137c..99027d2 100644
--- a/drivers/net/mlx5/mlx5_rxq.c
+++ b/drivers/net/mlx5/mlx5_rxq.c
@@ -40,25 +40,25 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #include <infiniband/arch.h>
 #include <infiniband/mlx5_hw.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_mbuf.h>
 #include <rte_malloc.h>
 #include <rte_ethdev.h>
 #include <rte_common.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c
index fce3381..a13cbc7 100644
--- a/drivers/net/mlx5/mlx5_rxtx.c
+++ b/drivers/net/mlx5/mlx5_rxtx.c
@@ -39,18 +39,18 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #include <infiniband/mlx5_hw.h>
 #include <infiniband/arch.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_mbuf.h>
 #include <rte_mempool.h>
@@ -59,7 +59,7 @@
 #include <rte_branch_prediction.h>
 #include <rte_ether.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h
index f6e2cba..952f88c 100644
--- a/drivers/net/mlx5/mlx5_rxtx.h
+++ b/drivers/net/mlx5/mlx5_rxtx.h
@@ -40,22 +40,22 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #include <infiniband/mlx5_hw.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_mbuf.h>
 #include <rte_mempool.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5_utils.h"
diff --git a/drivers/net/mlx5/mlx5_stats.c b/drivers/net/mlx5/mlx5_stats.c
index 2d3cb51..f2b5781 100644
--- a/drivers/net/mlx5/mlx5_stats.c
+++ b/drivers/net/mlx5/mlx5_stats.c
@@ -33,11 +33,11 @@
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ethdev.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_trigger.c b/drivers/net/mlx5/mlx5_trigger.c
index e9b9a29..d4dccd8 100644
--- a/drivers/net/mlx5/mlx5_trigger.c
+++ b/drivers/net/mlx5/mlx5_trigger.c
@@ -33,14 +33,14 @@
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ether.h>
 #include <rte_ethdev.h>
 #include <rte_interrupts.h>
 #include <rte_alarm.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5.h"
diff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c
index 6fe61c4..476ce79 100644
--- a/drivers/net/mlx5/mlx5_txq.c
+++ b/drivers/net/mlx5/mlx5_txq.c
@@ -40,23 +40,23 @@
 /* Verbs header. */
 /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <infiniband/verbs.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_mbuf.h>
 #include <rte_malloc.h>
 #include <rte_ethdev.h>
 #include <rte_common.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5_utils.h"
diff --git a/drivers/net/mlx5/mlx5_vlan.c b/drivers/net/mlx5/mlx5_vlan.c
index 4719e69..64e599d 100644
--- a/drivers/net/mlx5/mlx5_vlan.c
+++ b/drivers/net/mlx5/mlx5_vlan.c
@@ -38,12 +38,12 @@
 
 /* DPDK headers don't like -pedantic. */
 #ifdef PEDANTIC
-#pragma GCC diagnostic ignored "-pedantic"
+#pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 #include <rte_ethdev.h>
 #include <rte_common.h>
 #ifdef PEDANTIC
-#pragma GCC diagnostic error "-pedantic"
+#pragma GCC diagnostic error "-Wpedantic"
 #endif
 
 #include "mlx5_utils.h"
-- 
2.7.4

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-19 14:36 [PATCH] net/mlx: fix compile errors with ignore pedantic pragma Bruce Richardson
@ 2016-09-19 14:59 ` Adrien Mazarguil
  2016-09-19 15:26   ` Bruce Richardson
  0 siblings, 1 reply; 9+ messages in thread
From: Adrien Mazarguil @ 2016-09-19 14:59 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev

Hi Bruce,

On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
> debug enabled produces lots of errors complaining that "pedantic" is
> not a warning level that can be ignored.
> 
> error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
>  #pragma GCC diagnostic ignored "-pedantic"
>                                  ^~~~~~~~~~~
> 
> These errors can be removed by changing the "-pedantic" to "-Wpedantic".

Nice to have a workaround, I thought they did not keep the option at all.
However after testing:

- It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
  "warning: unknown option after `#pragma GCC diagnostic' kind".

- GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
  -Wpedantic.

- GCC 6 can only supports -Wpedantic.

Note we're working toward removing the need for these #pragma in the first
place as soon as possible, however in the meantime I fear that checking the
GCC version is necessary.

> Fixes: 7fae69eeff13 ("mlx4: new poll mode driver")
> Fixes: 771fa900b73a ("mlx5: introduce new driver for Mellanox ConnectX-4 adapters")
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
>  drivers/net/mlx4/mlx4.c         | 8 ++++----
>  drivers/net/mlx5/mlx5.c         | 8 ++++----
>  drivers/net/mlx5/mlx5.h         | 8 ++++----
>  drivers/net/mlx5/mlx5_ethdev.c  | 4 ++--
>  drivers/net/mlx5/mlx5_fdir.c    | 8 ++++----
>  drivers/net/mlx5/mlx5_mac.c     | 8 ++++----
>  drivers/net/mlx5/mlx5_mr.c      | 8 ++++----
>  drivers/net/mlx5/mlx5_prm.h     | 4 ++--
>  drivers/net/mlx5/mlx5_rss.c     | 8 ++++----
>  drivers/net/mlx5/mlx5_rxmode.c  | 8 ++++----
>  drivers/net/mlx5/mlx5_rxq.c     | 8 ++++----
>  drivers/net/mlx5/mlx5_rxtx.c    | 8 ++++----
>  drivers/net/mlx5/mlx5_rxtx.h    | 8 ++++----
>  drivers/net/mlx5/mlx5_stats.c   | 4 ++--
>  drivers/net/mlx5/mlx5_trigger.c | 4 ++--
>  drivers/net/mlx5/mlx5_txq.c     | 8 ++++----
>  drivers/net/mlx5/mlx5_vlan.c    | 4 ++--
>  17 files changed, 58 insertions(+), 58 deletions(-)
> 
> diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c
> index efe60cf..5bdeac9 100644
> --- a/drivers/net/mlx4/mlx4.c
> +++ b/drivers/net/mlx4/mlx4.c
> @@ -61,16 +61,16 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ether.h>
>  #include <rte_ethdev.h>
> @@ -87,7 +87,7 @@
>  #include <rte_alarm.h>
>  #include <rte_memory.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* Generated configuration header. */
> diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
> index 7264968..1a0a2be 100644
> --- a/drivers/net/mlx5/mlx5.c
> +++ b/drivers/net/mlx5/mlx5.c
> @@ -43,16 +43,16 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_malloc.h>
>  #include <rte_ethdev.h>
> @@ -60,7 +60,7 @@
>  #include <rte_common.h>
>  #include <rte_kvargs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5.h b/drivers/net/mlx5/mlx5.h
> index 3a86609..65241a6 100644
> --- a/drivers/net/mlx5/mlx5.h
> +++ b/drivers/net/mlx5/mlx5.h
> @@ -43,16 +43,16 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ether.h>
>  #include <rte_ethdev.h>
> @@ -60,7 +60,7 @@
>  #include <rte_interrupts.h>
>  #include <rte_errno.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5_utils.h"
> diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c
> index 130e15d..17588a5 100644
> --- a/drivers/net/mlx5/mlx5_ethdev.c
> +++ b/drivers/net/mlx5/mlx5_ethdev.c
> @@ -50,7 +50,7 @@
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_atomic.h>
>  #include <rte_ethdev.h>
> @@ -60,7 +60,7 @@
>  #include <rte_alarm.h>
>  #include <rte_malloc.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_fdir.c b/drivers/net/mlx5/mlx5_fdir.c
> index 73eb00e..070edde 100644
> --- a/drivers/net/mlx5/mlx5_fdir.c
> +++ b/drivers/net/mlx5/mlx5_fdir.c
> @@ -40,23 +40,23 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ether.h>
>  #include <rte_malloc.h>
>  #include <rte_ethdev.h>
>  #include <rte_common.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_mac.c b/drivers/net/mlx5/mlx5_mac.c
> index f6b27bb..4fcfd3b 100644
> --- a/drivers/net/mlx5/mlx5_mac.c
> +++ b/drivers/net/mlx5/mlx5_mac.c
> @@ -44,22 +44,22 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ether.h>
>  #include <rte_ethdev.h>
>  #include <rte_common.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_mr.c b/drivers/net/mlx5/mlx5_mr.c
> index 67dfefa..0a36384 100644
> --- a/drivers/net/mlx5/mlx5_mr.c
> +++ b/drivers/net/mlx5/mlx5_mr.c
> @@ -34,20 +34,20 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_mempool.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_prm.h b/drivers/net/mlx5/mlx5_prm.h
> index 5db219b..4383009 100644
> --- a/drivers/net/mlx5/mlx5_prm.h
> +++ b/drivers/net/mlx5/mlx5_prm.h
> @@ -37,11 +37,11 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/mlx5_hw.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* Get CQE owner bit. */
> diff --git a/drivers/net/mlx5/mlx5_rss.c b/drivers/net/mlx5/mlx5_rss.c
> index 639e935..0bed74e 100644
> --- a/drivers/net/mlx5/mlx5_rss.c
> +++ b/drivers/net/mlx5/mlx5_rss.c
> @@ -40,21 +40,21 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_malloc.h>
>  #include <rte_ethdev.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_rxmode.c b/drivers/net/mlx5/mlx5_rxmode.c
> index 8b58555..173e6e8 100644
> --- a/drivers/net/mlx5/mlx5_rxmode.c
> +++ b/drivers/net/mlx5/mlx5_rxmode.c
> @@ -38,20 +38,20 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ethdev.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c
> index 29c137c..99027d2 100644
> --- a/drivers/net/mlx5/mlx5_rxq.c
> +++ b/drivers/net/mlx5/mlx5_rxq.c
> @@ -40,25 +40,25 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #include <infiniband/arch.h>
>  #include <infiniband/mlx5_hw.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_mbuf.h>
>  #include <rte_malloc.h>
>  #include <rte_ethdev.h>
>  #include <rte_common.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c
> index fce3381..a13cbc7 100644
> --- a/drivers/net/mlx5/mlx5_rxtx.c
> +++ b/drivers/net/mlx5/mlx5_rxtx.c
> @@ -39,18 +39,18 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #include <infiniband/mlx5_hw.h>
>  #include <infiniband/arch.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_mbuf.h>
>  #include <rte_mempool.h>
> @@ -59,7 +59,7 @@
>  #include <rte_branch_prediction.h>
>  #include <rte_ether.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h
> index f6e2cba..952f88c 100644
> --- a/drivers/net/mlx5/mlx5_rxtx.h
> +++ b/drivers/net/mlx5/mlx5_rxtx.h
> @@ -40,22 +40,22 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #include <infiniband/mlx5_hw.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_mbuf.h>
>  #include <rte_mempool.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5_utils.h"
> diff --git a/drivers/net/mlx5/mlx5_stats.c b/drivers/net/mlx5/mlx5_stats.c
> index 2d3cb51..f2b5781 100644
> --- a/drivers/net/mlx5/mlx5_stats.c
> +++ b/drivers/net/mlx5/mlx5_stats.c
> @@ -33,11 +33,11 @@
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ethdev.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_trigger.c b/drivers/net/mlx5/mlx5_trigger.c
> index e9b9a29..d4dccd8 100644
> --- a/drivers/net/mlx5/mlx5_trigger.c
> +++ b/drivers/net/mlx5/mlx5_trigger.c
> @@ -33,14 +33,14 @@
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ether.h>
>  #include <rte_ethdev.h>
>  #include <rte_interrupts.h>
>  #include <rte_alarm.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5.h"
> diff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c
> index 6fe61c4..476ce79 100644
> --- a/drivers/net/mlx5/mlx5_txq.c
> +++ b/drivers/net/mlx5/mlx5_txq.c
> @@ -40,23 +40,23 @@
>  /* Verbs header. */
>  /* ISO C doesn't support unnamed structs/unions, disabling -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <infiniband/verbs.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_mbuf.h>
>  #include <rte_malloc.h>
>  #include <rte_ethdev.h>
>  #include <rte_common.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5_utils.h"
> diff --git a/drivers/net/mlx5/mlx5_vlan.c b/drivers/net/mlx5/mlx5_vlan.c
> index 4719e69..64e599d 100644
> --- a/drivers/net/mlx5/mlx5_vlan.c
> +++ b/drivers/net/mlx5/mlx5_vlan.c
> @@ -38,12 +38,12 @@
>  
>  /* DPDK headers don't like -pedantic. */
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic ignored "-pedantic"
> +#pragma GCC diagnostic ignored "-Wpedantic"
>  #endif
>  #include <rte_ethdev.h>
>  #include <rte_common.h>
>  #ifdef PEDANTIC
> -#pragma GCC diagnostic error "-pedantic"
> +#pragma GCC diagnostic error "-Wpedantic"
>  #endif
>  
>  #include "mlx5_utils.h"
> -- 
> 2.7.4
> 

-- 
Adrien Mazarguil
6WIND

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-19 14:59 ` Adrien Mazarguil
@ 2016-09-19 15:26   ` Bruce Richardson
  2016-09-20 12:51     ` Adrien Mazarguil
  0 siblings, 1 reply; 9+ messages in thread
From: Bruce Richardson @ 2016-09-19 15:26 UTC (permalink / raw)
  To: dev

On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
> Hi Bruce,
> 
> On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> > With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
> > debug enabled produces lots of errors complaining that "pedantic" is
> > not a warning level that can be ignored.
> > 
> > error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
> >  #pragma GCC diagnostic ignored "-pedantic"
> >                                  ^~~~~~~~~~~
> > 
> > These errors can be removed by changing the "-pedantic" to "-Wpedantic".
> 
> Nice to have a workaround, I thought they did not keep the option at all.
> However after testing:
> 
> - It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
>   "warning: unknown option after `#pragma GCC diagnostic' kind".
> 
> - GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
>   -Wpedantic.
> 
> - GCC 6 can only supports -Wpedantic.
> 
> Note we're working toward removing the need for these #pragma in the first
> place as soon as possible, however in the meantime I fear that checking the
> GCC version is necessary.
> 
Depends on how old of GCC version we need to support. From the release notes
it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).

https://gcc.gnu.org/gcc-4.8/changes.html

Do we need to support compilation on gcc versions older than this?

Regards,
/Bruce

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-19 15:26   ` Bruce Richardson
@ 2016-09-20 12:51     ` Adrien Mazarguil
  2016-09-20 15:58       ` Bruce Richardson
  2016-09-21  9:48       ` Bruce Richardson
  0 siblings, 2 replies; 9+ messages in thread
From: Adrien Mazarguil @ 2016-09-20 12:51 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev

On Mon, Sep 19, 2016 at 04:26:05PM +0100, Bruce Richardson wrote:
> On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
> > Hi Bruce,
> > 
> > On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> > > With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
> > > debug enabled produces lots of errors complaining that "pedantic" is
> > > not a warning level that can be ignored.
> > > 
> > > error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
> > >  #pragma GCC diagnostic ignored "-pedantic"
> > >                                  ^~~~~~~~~~~
> > > 
> > > These errors can be removed by changing the "-pedantic" to "-Wpedantic".
> > 
> > Nice to have a workaround, I thought they did not keep the option at all.
> > However after testing:
> > 
> > - It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
> >   "warning: unknown option after `#pragma GCC diagnostic' kind".
> > 
> > - GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
> >   -Wpedantic.
> > 
> > - GCC 6 can only supports -Wpedantic.
> > 
> > Note we're working toward removing the need for these #pragma in the first
> > place as soon as possible, however in the meantime I fear that checking the
> > GCC version is necessary.
> > 
> Depends on how old of GCC version we need to support. From the release notes
> it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).
> 
> https://gcc.gnu.org/gcc-4.8/changes.html
> 
> Do we need to support compilation on gcc versions older than this?

I'm all for upgrading so I do not really mind if we stop caring about older
GCC versions (especially considering this problem only occurs in debugging
mode which is seldom used by non-developers). The version check is necessary
if we want to keep full compatibility with at least:

- RHEL <= 6.x
- Debian <= 7.x
- Ubuntu <= 13.04

Works for me either way, thus:

Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>

-- 
Adrien Mazarguil
6WIND

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-20 12:51     ` Adrien Mazarguil
@ 2016-09-20 15:58       ` Bruce Richardson
  2016-09-20 18:17         ` Adrien Mazarguil
  2016-09-21  5:11         ` Panu Matilainen
  2016-09-21  9:48       ` Bruce Richardson
  1 sibling, 2 replies; 9+ messages in thread
From: Bruce Richardson @ 2016-09-20 15:58 UTC (permalink / raw)
  To: Adrien Mazarguil; +Cc: dev

On Tue, Sep 20, 2016 at 02:51:27PM +0200, Adrien Mazarguil wrote:
> On Mon, Sep 19, 2016 at 04:26:05PM +0100, Bruce Richardson wrote:
> > On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
> > > Hi Bruce,
> > > 
> > > On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> > > > With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
> > > > debug enabled produces lots of errors complaining that "pedantic" is
> > > > not a warning level that can be ignored.
> > > > 
> > > > error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
> > > >  #pragma GCC diagnostic ignored "-pedantic"
> > > >                                  ^~~~~~~~~~~
> > > > 
> > > > These errors can be removed by changing the "-pedantic" to "-Wpedantic".
> > > 
> > > Nice to have a workaround, I thought they did not keep the option at all.
> > > However after testing:
> > > 
> > > - It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
> > >   "warning: unknown option after `#pragma GCC diagnostic' kind".
> > > 
> > > - GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
> > >   -Wpedantic.
> > > 
> > > - GCC 6 can only supports -Wpedantic.
> > > 
> > > Note we're working toward removing the need for these #pragma in the first
> > > place as soon as possible, however in the meantime I fear that checking the
> > > GCC version is necessary.
> > > 
> > Depends on how old of GCC version we need to support. From the release notes
> > it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).
> > 
> > https://gcc.gnu.org/gcc-4.8/changes.html
> > 
> > Do we need to support compilation on gcc versions older than this?
> 
> I'm all for upgrading so I do not really mind if we stop caring about older
> GCC versions (especially considering this problem only occurs in debugging
> mode which is seldom used by non-developers). The version check is necessary
> if we want to keep full compatibility with at least:
> 
> - RHEL <= 6.x
> - Debian <= 7.x
> - Ubuntu <= 13.04
> 
> Works for me either way, thus:
> 
> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
> 
Any objections to dropping of support for debug settings for these OS's?

/Bruce

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-20 15:58       ` Bruce Richardson
@ 2016-09-20 18:17         ` Adrien Mazarguil
  2016-09-30 14:33           ` Ferruh Yigit
  2016-09-21  5:11         ` Panu Matilainen
  1 sibling, 1 reply; 9+ messages in thread
From: Adrien Mazarguil @ 2016-09-20 18:17 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev

On Tue, Sep 20, 2016 at 04:58:48PM +0100, Bruce Richardson wrote:
> On Tue, Sep 20, 2016 at 02:51:27PM +0200, Adrien Mazarguil wrote:
> > On Mon, Sep 19, 2016 at 04:26:05PM +0100, Bruce Richardson wrote:
> > > On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
> > > > Hi Bruce,
> > > > 
> > > > On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> > > > > With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
> > > > > debug enabled produces lots of errors complaining that "pedantic" is
> > > > > not a warning level that can be ignored.
> > > > > 
> > > > > error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
> > > > >  #pragma GCC diagnostic ignored "-pedantic"
> > > > >                                  ^~~~~~~~~~~
> > > > > 
> > > > > These errors can be removed by changing the "-pedantic" to "-Wpedantic".
> > > > 
> > > > Nice to have a workaround, I thought they did not keep the option at all.
> > > > However after testing:
> > > > 
> > > > - It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
> > > >   "warning: unknown option after `#pragma GCC diagnostic' kind".
> > > > 
> > > > - GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
> > > >   -Wpedantic.
> > > > 
> > > > - GCC 6 can only supports -Wpedantic.
> > > > 
> > > > Note we're working toward removing the need for these #pragma in the first
> > > > place as soon as possible, however in the meantime I fear that checking the
> > > > GCC version is necessary.
> > > > 
> > > Depends on how old of GCC version we need to support. From the release notes
> > > it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).
> > > 
> > > https://gcc.gnu.org/gcc-4.8/changes.html
> > > 
> > > Do we need to support compilation on gcc versions older than this?
> > 
> > I'm all for upgrading so I do not really mind if we stop caring about older
> > GCC versions (especially considering this problem only occurs in debugging
> > mode which is seldom used by non-developers). The version check is necessary
> > if we want to keep full compatibility with at least:
> > 
> > - RHEL <= 6.x
> > - Debian <= 7.x
> > - Ubuntu <= 13.04
> > 
> > Works for me either way, thus:
> > 
> > Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
> > 
> Any objections to dropping of support for debug settings for these OS's?

Not sure who should answer this. These #pragma are workarounds we should
eventually get rid of anyway (DPDK headers are now clean enough, some work
remains to be done on the Verbs side) so let's use your patch in the
meantime.

-- 
Adrien Mazarguil
6WIND

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-20 15:58       ` Bruce Richardson
  2016-09-20 18:17         ` Adrien Mazarguil
@ 2016-09-21  5:11         ` Panu Matilainen
  1 sibling, 0 replies; 9+ messages in thread
From: Panu Matilainen @ 2016-09-21  5:11 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: Adrien Mazarguil, dev

----- Original Message -----
> On Tue, Sep 20, 2016 at 02:51:27PM +0200, Adrien Mazarguil wrote:
> > On Mon, Sep 19, 2016 at 04:26:05PM +0100, Bruce Richardson wrote:
> > > On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
> > > > Hi Bruce,
> > > > 
> > > > On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> > > > > With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers
> > > > > with
> > > > > debug enabled produces lots of errors complaining that "pedantic" is
> > > > > not a warning level that can be ignored.
> > > > > 
> > > > > error: ‘-pedantic’ is not an option that controls warnings
> > > > > [-Werror=pragmas]
> > > > >  #pragma GCC diagnostic ignored "-pedantic"
> > > > >                                  ^~~~~~~~~~~
> > > > > 
> > > > > These errors can be removed by changing the "-pedantic" to
> > > > > "-Wpedantic".
> > > > 
> > > > Nice to have a workaround, I thought they did not keep the option at
> > > > all.
> > > > However after testing:
> > > > 
> > > > - It does not seem to work with GCC 4.6 and older, they prefer
> > > > -pedantic:
> > > >   "warning: unknown option after `#pragma GCC diagnostic' kind".
> > > > 
> > > > - GCC 4.9 (possibly 5.x as well) does not care, can use either
> > > > -pedantic or
> > > >   -Wpedantic.
> > > > 
> > > > - GCC 6 can only supports -Wpedantic.
> > > > 
> > > > Note we're working toward removing the need for these #pragma in the
> > > > first
> > > > place as soon as possible, however in the meantime I fear that checking
> > > > the
> > > > GCC version is necessary.
> > > > 
> > > Depends on how old of GCC version we need to support. From the release
> > > notes
> > > it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).
> > > 
> > > https://gcc.gnu.org/gcc-4.8/changes.html
> > > 
> > > Do we need to support compilation on gcc versions older than this?
> > 
> > I'm all for upgrading so I do not really mind if we stop caring about older
> > GCC versions (especially considering this problem only occurs in debugging
> > mode which is seldom used by non-developers). The version check is
> > necessary
> > if we want to keep full compatibility with at least:
> > 
> > - RHEL <= 6.x
> > - Debian <= 7.x
> > - Ubuntu <= 13.04
> > 
> > Works for me either way, thus:
> > 
> > Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
> > 
> Any objections to dropping of support for debug settings for these OS's?

No objections on dropping RHEL <= 6 support, we never did DPDK on those old
versions anyway.

As for the others, I've no particular opinion but certainly no objections
either.

   - Panu -

> 
> /Bruce
> 

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-20 12:51     ` Adrien Mazarguil
  2016-09-20 15:58       ` Bruce Richardson
@ 2016-09-21  9:48       ` Bruce Richardson
  1 sibling, 0 replies; 9+ messages in thread
From: Bruce Richardson @ 2016-09-21  9:48 UTC (permalink / raw)
  To: Adrien Mazarguil; +Cc: dev

On Tue, Sep 20, 2016 at 02:51:27PM +0200, Adrien Mazarguil wrote:
> On Mon, Sep 19, 2016 at 04:26:05PM +0100, Bruce Richardson wrote:
> > On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
> > > Hi Bruce,
> > > 
> > > On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
> > > > With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
> > > > debug enabled produces lots of errors complaining that "pedantic" is
> > > > not a warning level that can be ignored.
> > > > 
> > > > error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
> > > >  #pragma GCC diagnostic ignored "-pedantic"
> > > >                                  ^~~~~~~~~~~
> > > > 
> > > > These errors can be removed by changing the "-pedantic" to "-Wpedantic".
> > > 
> > > Nice to have a workaround, I thought they did not keep the option at all.
> > > However after testing:
> > > 
> > > - It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
> > >   "warning: unknown option after `#pragma GCC diagnostic' kind".
> > > 
> > > - GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
> > >   -Wpedantic.
> > > 
> > > - GCC 6 can only supports -Wpedantic.
> > > 
> > > Note we're working toward removing the need for these #pragma in the first
> > > place as soon as possible, however in the meantime I fear that checking the
> > > GCC version is necessary.
> > > 
> > Depends on how old of GCC version we need to support. From the release notes
> > it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).
> > 
> > https://gcc.gnu.org/gcc-4.8/changes.html
> > 
> > Do we need to support compilation on gcc versions older than this?
> 
> I'm all for upgrading so I do not really mind if we stop caring about older
> GCC versions (especially considering this problem only occurs in debugging
> mode which is seldom used by non-developers). The version check is necessary
> if we want to keep full compatibility with at least:
> 
> - RHEL <= 6.x
> - Debian <= 7.x
> - Ubuntu <= 13.04
> 
> Works for me either way, thus:
> 
> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
> 
Applied to dpdk-next-net/rel_16_11

/Bruce

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

* Re: [PATCH] net/mlx: fix compile errors with ignore pedantic pragma
  2016-09-20 18:17         ` Adrien Mazarguil
@ 2016-09-30 14:33           ` Ferruh Yigit
  0 siblings, 0 replies; 9+ messages in thread
From: Ferruh Yigit @ 2016-09-30 14:33 UTC (permalink / raw)
  To: Adrien Mazarguil, Bruce Richardson; +Cc: dev

On 9/20/2016 7:17 PM, Adrien Mazarguil wrote:
> On Tue, Sep 20, 2016 at 04:58:48PM +0100, Bruce Richardson wrote:
>> On Tue, Sep 20, 2016 at 02:51:27PM +0200, Adrien Mazarguil wrote:
>>> On Mon, Sep 19, 2016 at 04:26:05PM +0100, Bruce Richardson wrote:
>>>> On Mon, Sep 19, 2016 at 04:59:59PM +0200, Adrien Mazarguil wrote:
>>>>> Hi Bruce,
>>>>>
>>>>> On Mon, Sep 19, 2016 at 03:36:54PM +0100, Bruce Richardson wrote:
>>>>>> With recent gcc versions, e.g. gcc 6.1, compilation of mlx drivers with
>>>>>> debug enabled produces lots of errors complaining that "pedantic" is
>>>>>> not a warning level that can be ignored.
>>>>>>
>>>>>> error: ‘-pedantic’ is not an option that controls warnings [-Werror=pragmas]
>>>>>>  #pragma GCC diagnostic ignored "-pedantic"
>>>>>>                                  ^~~~~~~~~~~
>>>>>>
>>>>>> These errors can be removed by changing the "-pedantic" to "-Wpedantic".
>>>>>
>>>>> Nice to have a workaround, I thought they did not keep the option at all.
>>>>> However after testing:
>>>>>
>>>>> - It does not seem to work with GCC 4.6 and older, they prefer -pedantic:
>>>>>   "warning: unknown option after `#pragma GCC diagnostic' kind".
>>>>>
>>>>> - GCC 4.9 (possibly 5.x as well) does not care, can use either -pedantic or
>>>>>   -Wpedantic.
>>>>>
>>>>> - GCC 6 can only supports -Wpedantic.
>>>>>
>>>>> Note we're working toward removing the need for these #pragma in the first
>>>>> place as soon as possible, however in the meantime I fear that checking the
>>>>> GCC version is necessary.
>>>>>
>>>> Depends on how old of GCC version we need to support. From the release notes
>>>> it appears that -Wpedantic was introduced in GCC 4.8 (3 1/2 years ago).
>>>>
>>>> https://gcc.gnu.org/gcc-4.8/changes.html
>>>>
>>>> Do we need to support compilation on gcc versions older than this?
>>>
>>> I'm all for upgrading so I do not really mind if we stop caring about older
>>> GCC versions (especially considering this problem only occurs in debugging
>>> mode which is seldom used by non-developers). The version check is necessary
>>> if we want to keep full compatibility with at least:
>>>
>>> - RHEL <= 6.x
>>> - Debian <= 7.x
>>> - Ubuntu <= 13.04
>>>
>>> Works for me either way, thus:
>>>
>>> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
>>>
>> Any objections to dropping of support for debug settings for these OS's?
> 
> Not sure who should answer this. These #pragma are workarounds we should
> eventually get rid of anyway (DPDK headers are now clean enough, some work
> remains to be done on the Verbs side) so let's use your patch in the
> meantime.
> 

Just as a quick note, this breaks compilation for ICC:

.../drivers/net/mlx4/mlx4.c(64): error #2282: unrecognized GCC pragma
  #pragma GCC diagnostic ignored "-Wpedantic"

Since this compilation error only happens for MLX4/5 when debug config
option enabled, this not big issue, but please aware of the issue.

Thanks,
ferruh

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

end of thread, other threads:[~2016-09-30 14:33 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-19 14:36 [PATCH] net/mlx: fix compile errors with ignore pedantic pragma Bruce Richardson
2016-09-19 14:59 ` Adrien Mazarguil
2016-09-19 15:26   ` Bruce Richardson
2016-09-20 12:51     ` Adrien Mazarguil
2016-09-20 15:58       ` Bruce Richardson
2016-09-20 18:17         ` Adrien Mazarguil
2016-09-30 14:33           ` Ferruh Yigit
2016-09-21  5:11         ` Panu Matilainen
2016-09-21  9:48       ` Bruce Richardson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.