DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file
@ 2020-03-16 11:29 Bruce Richardson
  2020-03-16 14:30 ` Thomas Monjalon
  2020-03-16 17:49 ` David Christensen
  0 siblings, 2 replies; 6+ messages in thread
From: Bruce Richardson @ 2020-03-16 11:29 UTC (permalink / raw)
  To: dev; +Cc: thomas, Dmitry Kozlyuk, Bruce Richardson, gaetan.rivet, stable

The rte_pci.h file includes more header files than are actually needed,
which means that all users of it also include those headers. This patch
removes the unneeded headers - adding them elsewhere where other components
were requiring them but not including them directly.

Fixes: c752998b5e2e ("pci: introduce library and driver")
Cc: gaetan.rivet@6wind.com
Cc: stable@dpdk.org

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/bus/ifpga/rte_bus_ifpga.h | 1 +
 drivers/common/mlx5/mlx5_common.h | 1 +
 lib/librte_pci/rte_pci.h          | 6 ------
 3 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/bus/ifpga/rte_bus_ifpga.h b/drivers/bus/ifpga/rte_bus_ifpga.h
index 88a628964..a6eeaaf56 100644
--- a/drivers/bus/ifpga/rte_bus_ifpga.h
+++ b/drivers/bus/ifpga/rte_bus_ifpga.h
@@ -17,6 +17,7 @@ extern "C" {
 
 #include <rte_bus.h>
 #include <rte_pci.h>
+#include <rte_interrupts.h>
 #include <rte_spinlock.h>
 
 /** Name of Intel FPGA Bus */
diff --git a/drivers/common/mlx5/mlx5_common.h b/drivers/common/mlx5/mlx5_common.h
index 961c60634..16de1b397 100644
--- a/drivers/common/mlx5/mlx5_common.h
+++ b/drivers/common/mlx5/mlx5_common.h
@@ -8,6 +8,7 @@
 #include <stdio.h>
 
 #include <rte_pci.h>
+#include <rte_debug.h>
 #include <rte_atomic.h>
 #include <rte_log.h>
 #include <rte_kvargs.h>
diff --git a/lib/librte_pci/rte_pci.h b/lib/librte_pci/rte_pci.h
index c87891405..c591af010 100644
--- a/lib/librte_pci/rte_pci.h
+++ b/lib/librte_pci/rte_pci.h
@@ -16,17 +16,11 @@
 extern "C" {
 #endif
 
-#include <stdio.h>
 #include <stdlib.h>
 #include <limits.h>
-#include <errno.h>
 #include <sys/queue.h>
-#include <stdint.h>
 #include <inttypes.h>
 
-#include <rte_debug.h>
-#include <rte_interrupts.h>
-
 /** Formatting string for PCI device identifier: Ex: 0000:00:01.0 */
 #define PCI_PRI_FMT "%.4" PRIx16 ":%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8
 #define PCI_PRI_STR_SIZE sizeof("XXXXXXXX:XX:XX.X")
-- 
2.20.1


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

* Re: [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file
  2020-03-16 11:29 [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file Bruce Richardson
@ 2020-03-16 14:30 ` Thomas Monjalon
  2020-03-16 17:49 ` David Christensen
  1 sibling, 0 replies; 6+ messages in thread
From: Thomas Monjalon @ 2020-03-16 14:30 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, Dmitry Kozlyuk, gaetan.rivet, stable

16/03/2020 12:29, Bruce Richardson:
> The rte_pci.h file includes more header files than are actually needed,
> which means that all users of it also include those headers. This patch
> removes the unneeded headers - adding them elsewhere where other components
> were requiring them but not including them directly.
> 
> Fixes: c752998b5e2e ("pci: introduce library and driver")
> Cc: gaetan.rivet@6wind.com
> Cc: stable@dpdk.org
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
[...]
> --- a/lib/librte_pci/rte_pci.h
> +++ b/lib/librte_pci/rte_pci.h
> -#include <stdio.h>
>  #include <stdlib.h>
>  #include <limits.h>
> -#include <errno.h>
>  #include <sys/queue.h>
> -#include <stdint.h>
>  #include <inttypes.h>
>  
> -#include <rte_debug.h>
> -#include <rte_interrupts.h>

Removing useless includes (or lines in general) is always good.

Acked-by: Thomas Monjalon <thomas@monjalon.net>

Applied, thanks



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

* Re: [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file
  2020-03-16 11:29 [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file Bruce Richardson
  2020-03-16 14:30 ` Thomas Monjalon
@ 2020-03-16 17:49 ` David Christensen
  2020-03-16 19:07   ` David Christensen
  1 sibling, 1 reply; 6+ messages in thread
From: David Christensen @ 2020-03-16 17:49 UTC (permalink / raw)
  To: dev


> The rte_pci.h file includes more header files than are actually needed,
> which means that all users of it also include those headers. This patch
> removes the unneeded headers - adding them elsewhere where other components
> were requiring them but not including them directly.
> 
> Fixes: c752998b5e2e ("pci: introduce library and driver")
> Cc: gaetan.rivet@6wind.com
> Cc: stable@dpdk.org
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
>   drivers/bus/ifpga/rte_bus_ifpga.h | 1 +
>   drivers/common/mlx5/mlx5_common.h | 1 +
>   lib/librte_pci/rte_pci.h          | 6 ------
>   3 files changed, 2 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/bus/ifpga/rte_bus_ifpga.h b/drivers/bus/ifpga/rte_bus_ifpga.h
> index 88a628964..a6eeaaf56 100644
> --- a/drivers/bus/ifpga/rte_bus_ifpga.h
> +++ b/drivers/bus/ifpga/rte_bus_ifpga.h
> @@ -17,6 +17,7 @@ extern "C" {
> 
>   #include <rte_bus.h>
>   #include <rte_pci.h>
> +#include <rte_interrupts.h>
>   #include <rte_spinlock.h>
> 
>   /** Name of Intel FPGA Bus */
> diff --git a/drivers/common/mlx5/mlx5_common.h b/drivers/common/mlx5/mlx5_common.h
> index 961c60634..16de1b397 100644
> --- a/drivers/common/mlx5/mlx5_common.h
> +++ b/drivers/common/mlx5/mlx5_common.h
> @@ -8,6 +8,7 @@
>   #include <stdio.h>
> 
>   #include <rte_pci.h>
> +#include <rte_debug.h>
>   #include <rte_atomic.h>
>   #include <rte_log.h>
>   #include <rte_kvargs.h>
> diff --git a/lib/librte_pci/rte_pci.h b/lib/librte_pci/rte_pci.h
> index c87891405..c591af010 100644
> --- a/lib/librte_pci/rte_pci.h
> +++ b/lib/librte_pci/rte_pci.h
> @@ -16,17 +16,11 @@
>   extern "C" {
>   #endif
> 
> -#include <stdio.h>
>   #include <stdlib.h>
>   #include <limits.h>
> -#include <errno.h>
>   #include <sys/queue.h>
> -#include <stdint.h>
>   #include <inttypes.h>
> 
> -#include <rte_debug.h>
> -#include <rte_interrupts.h>
> -
>   /** Formatting string for PCI device identifier: Ex: 0000:00:01.0 */
>   #define PCI_PRI_FMT "%.4" PRIx16 ":%.2" PRIx8 ":%.2" PRIx8 ".%" PRIx8
>   #define PCI_PRI_STR_SIZE sizeof("XXXXXXXX:XX:XX.X")
> 

Patch is generating build errors with meson on my POWER system, though I 
don't see how they're POWER specific:

Patch is generating build errors on my POWER system:

[17/964] Compiling C object 
'lib/76b5a35@@rte_pci@sta/librte_pci_rte_pci.c.o'.
../lib/librte_pci/rte_pci.c: In function ‘rte_pci_device_name’:
../lib/librte_pci/rte_pci.c:94:2: warning: implicit declaration of 
function ‘RTE_VERIFY’; did you mean ‘RTE_PRIO’? 
[-Wimplicit-function-declaration]
   RTE_VERIFY(size >= PCI_PRI_STR_SIZE);
   ^~~~~~~~~~
   RTE_PRIO
../lib/librte_pci/rte_pci.c:94:2: warning: nested extern declaration of 
‘RTE_VERIFY’ [-Wnested-externs]
[18/964] Compiling C object 
'drivers/a715181@@tmp_rte_bus_ifpga@sta/bus_ifpga_ifpga_bus.c.o'.
../drivers/bus/ifpga/ifpga_bus.c: In function ‘rte_ifpga_driver_register’:
../drivers/bus/ifpga/ifpga_bus.c:50:2: warning: implicit declaration of 
function ‘RTE_VERIFY’; did you mean ‘RTE_PRIO’? 
[-Wimplicit-function-declaration]
   RTE_VERIFY(driver);
   ^~~~~~~~~~
   RTE_PRIO
../drivers/bus/ifpga/ifpga_bus.c:50:2: warning: nested extern 
declaration of ‘RTE_VERIFY’ [-Wnested-externs]
[332/964] Linking target lib/librte_pci.so.20.0.2.
FAILED: lib/librte_pci.so.20.0.2
cc  -o lib/librte_pci.so.20.0.2 
'lib/76b5a35@@rte_pci@sta/librte_pci_rte_pci.c.o' -Wl,--no-undefined 
-Wl,--as-needed -Wl,-O1 -shared -fPIC -Wl,--start-group 
-Wl,-soname,librte_pci.so.20.0 -Wl,--no-as-needed -pthread -lm -ldl 
-lnuma lib/librte_eal.so.20.0.2 lib/librte_kvargs.so.20.0.2 
-Wl,--end-group 
-Wl,--version-script=/home/drc/src/dpdk/lib/librte_pci/rte_pci_version.map 
'-Wl,-rpath,$ORIGIN/' -Wl,-rpath-link,/home/drc/src/dpdk/build/lib
lib/76b5a35@@rte_pci@sta/librte_pci_rte_pci.c.o: In function 
`rte_pci_device_name':
rte_pci.c:(.text+0x38): undefined reference to `RTE_VERIFY'
rte_pci.c:(.text+0x6c): undefined reference to `RTE_VERIFY'
collect2: error: ld returned 1 exit status
[461/964] Compiling C object 
'drivers/a715181@@tmp_rte_pmd_mlx5@sta/net_mlx5_mlx5_rxtx.c.o'.
ninja: build stopped: subcommand failed.

Added <rte_debug.h> to the affected files resolves the problem.

Dave

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

* Re: [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file
  2020-03-16 17:49 ` David Christensen
@ 2020-03-16 19:07   ` David Christensen
  2020-03-19  8:10     ` David Marchand
  0 siblings, 1 reply; 6+ messages in thread
From: David Christensen @ 2020-03-16 19:07 UTC (permalink / raw)
  To: dev, David Wilder



On 3/16/20 10:49 AM, David Christensen wrote:
> 
>> The rte_pci.h file includes more header files than are actually needed,
>> which means that all users of it also include those headers. This patch
>> removes the unneeded headers - adding them elsewhere where other 
>> components
>> were requiring them but not including them directly.
>>
>> Fixes: c752998b5e2e ("pci: introduce library and driver")
>> Cc: gaetan.rivet@6wind.com
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> 
> Patch is generating build errors with meson on my POWER system, though I 
> don't see how they're POWER specific:

There's a pending patch to enable Travis for POWER systems:

http://patches.dpdk.org/patch/65986/

Any reason it hasn't been accepted yet?  Looks like it would have caught 
this problem.

Dave


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

* Re: [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file
  2020-03-16 19:07   ` David Christensen
@ 2020-03-19  8:10     ` David Marchand
  2020-03-20 13:25       ` Jerin Jacob
  0 siblings, 1 reply; 6+ messages in thread
From: David Marchand @ 2020-03-19  8:10 UTC (permalink / raw)
  To: David Christensen
  Cc: dev, David Wilder, Burakov, Anatoly, Jerin Jacob Kollanukkaran

On Mon, Mar 16, 2020 at 8:08 PM David Christensen
<drc@linux.vnet.ibm.com> wrote:
> On 3/16/20 10:49 AM, David Christensen wrote:
> >
> >> The rte_pci.h file includes more header files than are actually needed,
> >> which means that all users of it also include those headers. This patch
> >> removes the unneeded headers - adding them elsewhere where other
> >> components
> >> were requiring them but not including them directly.
> >>
> >> Fixes: c752998b5e2e ("pci: introduce library and driver")
> >> Cc: gaetan.rivet@6wind.com
> >> Cc: stable@dpdk.org
> >>
> >> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> >
> > Patch is generating build errors with meson on my POWER system, though I
> > don't see how they're POWER specific:
>
> There's a pending patch to enable Travis for POWER systems:
>
> http://patches.dpdk.org/patch/65986/
>
> Any reason it hasn't been accepted yet?  Looks like it would have caught
> this problem.

The reason is that this series has a change in the IOVA detection code.
I have a lot of things to look at, so any help in reviews is appreciated.


-- 
David Marchand


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

* Re: [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file
  2020-03-19  8:10     ` David Marchand
@ 2020-03-20 13:25       ` Jerin Jacob
  0 siblings, 0 replies; 6+ messages in thread
From: Jerin Jacob @ 2020-03-20 13:25 UTC (permalink / raw)
  To: David Marchand
  Cc: David Christensen, dev, David Wilder, Burakov, Anatoly,
	Jerin Jacob Kollanukkaran

On Thu, Mar 19, 2020 at 1:41 PM David Marchand
<david.marchand@redhat.com> wrote:
>
> On Mon, Mar 16, 2020 at 8:08 PM David Christensen
> <drc@linux.vnet.ibm.com> wrote:
> > On 3/16/20 10:49 AM, David Christensen wrote:
> > >
> > >> The rte_pci.h file includes more header files than are actually needed,
> > >> which means that all users of it also include those headers. This patch
> > >> removes the unneeded headers - adding them elsewhere where other
> > >> components
> > >> were requiring them but not including them directly.
> > >>
> > >> Fixes: c752998b5e2e ("pci: introduce library and driver")
> > >> Cc: gaetan.rivet@6wind.com
> > >> Cc: stable@dpdk.org
> > >>
> > >> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > >
> > > Patch is generating build errors with meson on my POWER system, though I
> > > don't see how they're POWER specific:
> >
> > There's a pending patch to enable Travis for POWER systems:
> >
> > http://patches.dpdk.org/patch/65986/
> >
> > Any reason it hasn't been accepted yet?  Looks like it would have caught
> > this problem.
>
> The reason is that this series has a change in the IOVA detection code.
> I have a lot of things to look at, so any help in reviews is appreciated.

Reviewed...

>
>
> --
> David Marchand
>

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

end of thread, other threads:[~2020-03-20 13:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-16 11:29 [dpdk-dev] [PATCH] pci: fix unneeded includes in public header file Bruce Richardson
2020-03-16 14:30 ` Thomas Monjalon
2020-03-16 17:49 ` David Christensen
2020-03-16 19:07   ` David Christensen
2020-03-19  8:10     ` David Marchand
2020-03-20 13:25       ` Jerin Jacob

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