[DPDK_KMODS,v4] linux/igb_uio: add Makefile to build the kernel module

Message ID 1602150008-16177-1-git-send-email-hariprasad.govindharajan@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series [DPDK_KMODS,v4] linux/igb_uio: add Makefile to build the kernel module |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/travis-robot success Travis build: passed
ci/iol-mellanox-Performance success Performance Testing PASS

Commit Message

Hariprasad Govindharajan Oct. 8, 2020, 9:40 a.m. UTC
  With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
There are use cases where this module is required, for example while
testing the virtual ports in OvS, the virtual ports are bound to
igb_uio module inside a VM. So, this patch provides a Makefile
which can be used to build this module and use as needed.

Before building this module, the user is expected to build the
DPDK using meson build system and make sure that the required
libraries are installed in the path /usr/local

Signed-off-by: Hariprasad Govindharajan <hariprasad.govindharajan@intel.com>
---
This patch will be part of dpdk-kmods repo
https://git.dpdk.org/dpdk-kmods/
---
v4:
Corrected the indentation
v3:
Edited the commit message and corrected the mistakes in the variable
definition
v2:
Added more information to the commit message
---
 linux/igb_uio/Makefile | 8 ++++++++
 1 file changed, 8 insertions(+)
 create mode 100644 linux/igb_uio/Makefile
  

Comments

Burakov, Anatoly Oct. 8, 2020, 9:43 a.m. UTC | #1
On 08-Oct-20 10:40 AM, Hariprasad Govindharajan wrote:
> With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> There are use cases where this module is required, for example while
> testing the virtual ports in OvS, the virtual ports are bound to
> igb_uio module inside a VM. So, this patch provides a Makefile
> which can be used to build this module and use as needed.
> 
> Before building this module, the user is expected to build the
> DPDK using meson build system and make sure that the required
> libraries are installed in the path /usr/local
> 
> Signed-off-by: Hariprasad Govindharajan <hariprasad.govindharajan@intel.com>
> ---

Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
  
Ma, LihongX Oct. 10, 2020, 1:30 a.m. UTC | #2
> With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> There are use cases where this module is required, for example while
> testing the virtual ports in OvS, the virtual ports are bound to igb_uio
> module inside a VM. So, this patch provides a Makefile which can be used to
> build this module and use as needed.
> 
> Before building this module, the user is expected to build the DPDK using
> meson build system and make sure that the required libraries are installed
> in the path /usr/local
> 
> Signed-off-by: Hariprasad Govindharajan <hariprasad.govindharajan@intel.com>
> ---

Tested-by: Lihong Ma<lihongx.ma@intel.com>

Regards,
Ma,lihong
  
Ajit Khaparde Oct. 19, 2020, 6:07 p.m. UTC | #3
On Thu, Oct 8, 2020 at 2:43 AM Burakov, Anatoly
<anatoly.burakov@intel.com> wrote:
>
> On 08-Oct-20 10:40 AM, Hariprasad Govindharajan wrote:
> > With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> > There are use cases where this module is required, for example while
> > testing the virtual ports in OvS, the virtual ports are bound to
> > igb_uio module inside a VM. So, this patch provides a Makefile
> > which can be used to build this module and use as needed.
> >
> > Before building this module, the user is expected to build the
> > DPDK using meson build system and make sure that the required
> > libraries are installed in the path /usr/local
> >
> > Signed-off-by: Hariprasad Govindharajan <hariprasad.govindharajan@intel.com>
> > ---
>
> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>

>
> --
> Thanks,
> Anatoly
  
Kalesh A P Oct. 21, 2020, 11:37 a.m. UTC | #4
Hi Thomas/Ferruh,

It looks like this patch is not yet merged to
https://git.dpdk.org/dpdk-kmods/.

This impacts the 20.11-rc1 testing which needs the igb_uio driver. Is there
any reason to not merge this?

Regards,
Kalesh

On Mon, Oct 19, 2020 at 11:38 PM Ajit Khaparde <ajit.khaparde@broadcom.com>
wrote:

> On Thu, Oct 8, 2020 at 2:43 AM Burakov, Anatoly
> <anatoly.burakov@intel.com> wrote:
> >
> > On 08-Oct-20 10:40 AM, Hariprasad Govindharajan wrote:
> > > With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> > > There are use cases where this module is required, for example while
> > > testing the virtual ports in OvS, the virtual ports are bound to
> > > igb_uio module inside a VM. So, this patch provides a Makefile
> > > which can be used to build this module and use as needed.
> > >
> > > Before building this module, the user is expected to build the
> > > DPDK using meson build system and make sure that the required
> > > libraries are installed in the path /usr/local
> > >
> > > Signed-off-by: Hariprasad Govindharajan <
> hariprasad.govindharajan@intel.com>
> > > ---
> >
> > Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
> > Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
>
> >
> > --
> > Thanks,
> > Anatoly
>
  
Narcisa Ana Maria Vasile Oct. 28, 2020, 9:09 p.m. UTC | #5
On Thu, Oct 08, 2020 at 10:40:08AM +0100, Hariprasad Govindharajan wrote:
> With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> There are use cases where this module is required, for example while
> testing the virtual ports in OvS, the virtual ports are bound to
> igb_uio module inside a VM. So, this patch provides a Makefile
> which can be used to build this module and use as needed.
> 
> Before building this module, the user is expected to build the
> DPDK using meson build system and make sure that the required
> libraries are installed in the path /usr/local
> 
> Signed-off-by: Hariprasad Govindharajan <hariprasad.govindharajan@intel.com>
> ---
> This patch will be part of dpdk-kmods repo
> https://git.dpdk.org/dpdk-kmods/
> ---
Thanks for the patch!

Tested-by: Narcisa Vasile <navasile@linux.microsoft.com>
Acked-by: Narcisa Vasile <navasile@linux.microsoft.com>
  
Luca Boccassi Oct. 29, 2020, 10:16 a.m. UTC | #6
On Thu, 2020-10-08 at 10:40 +0100, Hariprasad Govindharajan wrote:
> With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> There are use cases where this module is required, for example while
> testing the virtual ports in OvS, the virtual ports are bound to
> igb_uio module inside a VM. So, this patch provides a Makefile
> which can be used to build this module and use as needed.
> 
> Before building this module, the user is expected to build the
> DPDK using meson build system and make sure that the required
> libraries are installed in the path /usr/local
> 
> Signed-off-by: Hariprasad Govindharajan <hariprasad.govindharajan@intel.com>
> ---
> This patch will be part of dpdk-kmods repo
> https://git.dpdk.org/dpdk-kmods/
> ---
> v4:
> Corrected the indentation
> v3:
> Edited the commit message and corrected the mistakes in the variable
> definition
> v2:
> Added more information to the commit message
> ---
>  linux/igb_uio/Makefile | 8 ++++++++
>  1 file changed, 8 insertions(+)
>  create mode 100644 linux/igb_uio/Makefile
> 
> diff --git a/linux/igb_uio/Makefile b/linux/igb_uio/Makefile
> new file mode 100644
> index 0000000..45dbe42
> --- /dev/null
> +++ b/linux/igb_uio/Makefile
> @@ -0,0 +1,8 @@
> +DPDK_HEADERS ?= /usr/local/include

Please don't hard-code values that are provided programmatically. Use
pkgconfing instead:

$(shell pkg-config --variable=includedir libdpdk)

> +RTE_KERNELDIR ?= /lib/modules/`uname -r`/build

This is not a dpdk specific location so it doesn't need an RTE prefix.
While there isn't a unique way of calling this, the most common name I
see being used is KSRC.

> +
> +all:
> +	make EXTRA_CFLAGS="-I $(DPDK_HEADERS)" -C $(RTE_KERNELDIR)/ M=$(PWD)
> +
> +clean:
> +	make -C $(RTE_KERNELDIR)/ M=$(PWD) clean
  
Hariprasad Govindharajan Oct. 29, 2020, 6:42 p.m. UTC | #7
> -----Original Message-----
> From: Luca Boccassi <bluca@debian.org>
> Sent: Thursday, October 29, 2020 10:16 AM
> To: Govindharajan, Hariprasad <hariprasad.govindharajan@intel.com>;
> dev@dpdk.org
> Cc: Yigit, Ferruh <ferruh.yigit@intel.com>; Burakov, Anatoly
> <anatoly.burakov@intel.com>
> Subject: Re: [dpdk-dev] [DPDK_KMODS v4] linux/igb_uio: add Makefile to
> build the kernel module
> 
> On Thu, 2020-10-08 at 10:40 +0100, Hariprasad Govindharajan wrote:
> > With DPDK 20.11 release, the igb_uio module is no more part of DPDK.
> > There are use cases where this module is required, for example while
> > testing the virtual ports in OvS, the virtual ports are bound to
> > igb_uio module inside a VM. So, this patch provides a Makefile which
> > can be used to build this module and use as needed.
> >
> > Before building this module, the user is expected to build the DPDK
> > using meson build system and make sure that the required libraries are
> > installed in the path /usr/local
> >
> > Signed-off-by: Hariprasad Govindharajan
> > <hariprasad.govindharajan@intel.com>
> > ---
> > This patch will be part of dpdk-kmods repo
> > https://git.dpdk.org/dpdk-kmods/
> > ---
> > v4:
> > Corrected the indentation
> > v3:
> > Edited the commit message and corrected the mistakes in the variable
> > definition
> > v2:
> > Added more information to the commit message
> > ---
> >  linux/igb_uio/Makefile | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> >  create mode 100644 linux/igb_uio/Makefile
> >
> > diff --git a/linux/igb_uio/Makefile b/linux/igb_uio/Makefile new file
> > mode 100644 index 0000000..45dbe42
> > --- /dev/null
> > +++ b/linux/igb_uio/Makefile
> > @@ -0,0 +1,8 @@
> > +DPDK_HEADERS ?= /usr/local/include
> 
> Please don't hard-code values that are provided programmatically. Use
> pkgconfing instead:
> 
> $(shell pkg-config --variable=includedir libdpdk)
> 
> > +RTE_KERNELDIR ?= /lib/modules/`uname -r`/build
> 
> This is not a dpdk specific location so it doesn't need an RTE prefix.
> While there isn't a unique way of calling this, the most common name I see
> being used is KSRC.
> 
> > +
> > +all:
> > +	make EXTRA_CFLAGS="-I $(DPDK_HEADERS)" -C $(RTE_KERNELDIR)/
> M=$(PWD)
> > +
> > +clean:
> > +	make -C $(RTE_KERNELDIR)/ M=$(PWD) clean
> 
> --
> Kind regards,
> Luca Boccassi
[Govindharajan, Hariprasad] We are sending another patch by removing the DPDK dependency to build the igb_uio module

Regards,
G Hariprasad
  

Patch

diff --git a/linux/igb_uio/Makefile b/linux/igb_uio/Makefile
new file mode 100644
index 0000000..45dbe42
--- /dev/null
+++ b/linux/igb_uio/Makefile
@@ -0,0 +1,8 @@ 
+DPDK_HEADERS ?= /usr/local/include
+RTE_KERNELDIR ?= /lib/modules/`uname -r`/build
+
+all:
+	make EXTRA_CFLAGS="-I $(DPDK_HEADERS)" -C $(RTE_KERNELDIR)/ M=$(PWD)
+
+clean:
+	make -C $(RTE_KERNELDIR)/ M=$(PWD) clean