diff mbox series

[v4] kernel folder for Linux and BSD modules

Message ID 1515566763-2883-1-git-send-email-hemant.agrawal@nxp.com
State Superseded
Headers show
Series [v4] kernel folder for Linux and BSD modules | expand

Commit Message

Hemant Agrawal Jan. 10, 2018, 6:46 a.m. UTC
This patch moves the kernel modules code from EAL to a common place.
 - Separate the kernel module code from user space code.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>

---
v4: update the path in MAINTAINERS
v3: move contigmem from bsdapp
v2: rename kern to kernel, add freebsd modules as well

 GNUmakefile                                                      | 2 +-
 MAINTAINERS                                                      | 8 ++++----
 kernel/Makefile                                                  | 9 +++++++++
 kernel/freebsd/Makefile                                          | 9 +++++++++
 {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/BSDmakefile  | 0
 {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/Makefile     | 0
 {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/contigmem.c  | 0
 {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/BSDmakefile    | 0
 {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/Makefile       | 0
 {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/nic_uio.c      | 0
 kernel/linux/Makefile                                            | 9 +++++++++
 {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/Makefile       | 0
 {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/compat.h       | 0
 {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/igb_uio.c      | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/Makefile           | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/compat.h           | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/README     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_82575.c      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_82575.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_api.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_api.h        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_defines.h    | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_hw.h         | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_i210.c       | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_i210.h       | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mac.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mac.h        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_manage.c     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_manage.h     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mbx.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mbx.h        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_nvm.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_nvm.h        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_osdep.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_phy.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_phy.h        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/e1000_regs.h       | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb.h  | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/igb_ethtool.c      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/igb_main.c         | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/igb_param.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/igb_regtest.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/igb_vmdq.c         | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/igb_vmdq.h         | 0
 .../linuxapp => kernel/linux}/kni/ethtool/igb/kcompat.h          | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe.h          | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82598.c    | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82598.h    | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82599.c    | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82599.h    | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_api.c      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_api.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_common.c   | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_common.h   | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_dcb.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_ethtool.c  | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_fcoe.h     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_main.c     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_mbx.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_osdep.h    | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_phy.c      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_phy.h      | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_type.h     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_x540.c     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_x540.h     | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/kcompat.c        | 0
 .../linuxapp => kernel/linux}/kni/ethtool/ixgbe/kcompat.h        | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_dev.h          | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_ethtool.c      | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_fifo.h         | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_misc.c         | 0
 {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_net.c          | 0
 lib/librte_eal/bsdapp/Makefile                                   | 2 --
 lib/librte_eal/linuxapp/Makefile                                 | 2 --
 74 files changed, 32 insertions(+), 9 deletions(-)
 create mode 100644 kernel/Makefile
 create mode 100644 kernel/freebsd/Makefile
 rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/BSDmakefile (100%)
 rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/Makefile (100%)
 rename {lib/librte_eal/bsdapp => kernel/freebsd}/contigmem/contigmem.c (100%)
 rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/BSDmakefile (100%)
 rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/Makefile (100%)
 rename {lib/librte_eal/bsdapp => kernel/freebsd}/nic_uio/nic_uio.c (100%)
 create mode 100644 kernel/linux/Makefile
 rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/Makefile (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/compat.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/igb_uio/igb_uio.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/Makefile (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/compat.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/README (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_82575.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_82575.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_api.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_api.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_defines.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_hw.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_i210.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_i210.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mac.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mac.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_manage.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_manage.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mbx.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_mbx.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_nvm.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_nvm.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_osdep.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_phy.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_phy.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/e1000_regs.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_ethtool.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_main.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_param.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_regtest.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_vmdq.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/igb_vmdq.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/igb/kcompat.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82598.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82598.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82599.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_82599.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_api.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_api.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_common.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_common.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_dcb.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_ethtool.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_fcoe.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_main.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_mbx.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_osdep.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_phy.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_phy.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_type.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_x540.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/ixgbe_x540.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/kcompat.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/ethtool/ixgbe/kcompat.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_dev.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_ethtool.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_fifo.h (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_misc.c (100%)
 rename {lib/librte_eal/linuxapp => kernel/linux}/kni/kni_net.c (100%)

-- 
2.7.4

Comments

Bruce Richardson Jan. 10, 2018, 11:04 a.m. UTC | #1
> -----Original Message-----

> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Hemant Agrawal

> Sent: Wednesday, January 10, 2018 6:46 AM

> To: dev@dpdk.org; thomas@monjalon.net

> Cc: Yigit, Ferruh

> Subject: [dpdk-dev] [PATCH v4] kernel folder for Linux and BSD modules

> 

> This patch moves the kernel modules code from EAL to a common place.

>  - Separate the kernel module code from user space code.

> 

> Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>

> ---

> v4: update the path in MAINTAINERS

> v3: move contigmem from bsdapp

> v2: rename kern to kernel, add freebsd modules as well

> 

Ran test builds on FreeBSD and modules still compile ok.

One minor comment is that I don't think "kernel" should go last on the list of subdirs, but should probably go between lib and drivers, with app being the last thing.

Tested-by: Bruce Richardson <bruce.richardson@intel.com>
diff mbox series

Patch

diff --git a/GNUmakefile b/GNUmakefile
index d07fef0..671df05 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -12,7 +12,7 @@  export RTE_SDK
 # directory list
 #
 
-ROOTDIRS-y := buildtools lib drivers app
+ROOTDIRS-y := buildtools lib drivers app kernel
 ROOTDIRS-  := test
 
 include $(RTE_SDK)/mk/rte.sdkroot.mk
diff --git a/MAINTAINERS b/MAINTAINERS
index b51c2d0..1a44e07 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -195,7 +195,7 @@  F: doc/guides/linux_gsg/
 
 Linux UIO
 M: Ferruh Yigit <ferruh.yigit@intel.com>
-F: lib/librte_eal/linuxapp/igb_uio/
+F: kernel/linux/igb_uio/
 F: drivers/bus/pci/linux/*uio*
 
 Linux VFIO
@@ -211,11 +211,11 @@  F: doc/guides/freebsd_gsg/
 
 FreeBSD contigmem
 M: Bruce Richardson <bruce.richardson@intel.com>
-F: lib/librte_eal/bsdapp/contigmem/
+F: kernel/freebsd/contigmem/
 
 FreeBSD UIO
 M: Bruce Richardson <bruce.richardson@intel.com>
-F: lib/librte_eal/bsdapp/nic_uio/
+F: kernel/freebsd/nic_uio/
 
 
 Core Libraries
@@ -325,7 +325,7 @@  F: doc/guides/nics/features/bonding.ini
 
 Linux KNI
 M: Ferruh Yigit <ferruh.yigit@intel.com>
-F: lib/librte_eal/linuxapp/kni/
+F: kernel/linux/kni/
 F: lib/librte_kni/
 F: doc/guides/prog_guide/kernel_nic_interface.rst
 F: test/test/test_kni.c
diff --git a/kernel/Makefile b/kernel/Makefile
new file mode 100644
index 0000000..8948d04
--- /dev/null
+++ b/kernel/Makefile
@@ -0,0 +1,9 @@ 
+# SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
+# Copyright 2017 NXP
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+DIRS-$(CONFIG_RTE_EXEC_ENV_LINUXAPP) += linux
+DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += freebsd
+
+include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/kernel/freebsd/Makefile b/kernel/freebsd/Makefile
new file mode 100644
index 0000000..c93d7a6
--- /dev/null
+++ b/kernel/freebsd/Makefile
@@ -0,0 +1,9 @@ 
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright 2017 NXP
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += contigmem
+DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += nic_uio
+
+include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/lib/librte_eal/bsdapp/contigmem/BSDmakefile b/kernel/freebsd/contigmem/BSDmakefile
similarity index 100%
rename from lib/librte_eal/bsdapp/contigmem/BSDmakefile
rename to kernel/freebsd/contigmem/BSDmakefile
diff --git a/lib/librte_eal/bsdapp/contigmem/Makefile b/kernel/freebsd/contigmem/Makefile
similarity index 100%
rename from lib/librte_eal/bsdapp/contigmem/Makefile
rename to kernel/freebsd/contigmem/Makefile
diff --git a/lib/librte_eal/bsdapp/contigmem/contigmem.c b/kernel/freebsd/contigmem/contigmem.c
similarity index 100%
rename from lib/librte_eal/bsdapp/contigmem/contigmem.c
rename to kernel/freebsd/contigmem/contigmem.c
diff --git a/lib/librte_eal/bsdapp/nic_uio/BSDmakefile b/kernel/freebsd/nic_uio/BSDmakefile
similarity index 100%
rename from lib/librte_eal/bsdapp/nic_uio/BSDmakefile
rename to kernel/freebsd/nic_uio/BSDmakefile
diff --git a/lib/librte_eal/bsdapp/nic_uio/Makefile b/kernel/freebsd/nic_uio/Makefile
similarity index 100%
rename from lib/librte_eal/bsdapp/nic_uio/Makefile
rename to kernel/freebsd/nic_uio/Makefile
diff --git a/lib/librte_eal/bsdapp/nic_uio/nic_uio.c b/kernel/freebsd/nic_uio/nic_uio.c
similarity index 100%
rename from lib/librte_eal/bsdapp/nic_uio/nic_uio.c
rename to kernel/freebsd/nic_uio/nic_uio.c
diff --git a/kernel/linux/Makefile b/kernel/linux/Makefile
new file mode 100644
index 0000000..c2c45a3
--- /dev/null
+++ b/kernel/linux/Makefile
@@ -0,0 +1,9 @@ 
+# SPDX-License-Identifier: GPL-2.0
+# Copyright 2017 NXP
+
+include $(RTE_SDK)/mk/rte.vars.mk
+
+DIRS-$(CONFIG_RTE_EAL_IGB_UIO) += igb_uio
+DIRS-$(CONFIG_RTE_KNI_KMOD) += kni
+
+include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/lib/librte_eal/linuxapp/igb_uio/Makefile b/kernel/linux/igb_uio/Makefile
similarity index 100%
rename from lib/librte_eal/linuxapp/igb_uio/Makefile
rename to kernel/linux/igb_uio/Makefile
diff --git a/lib/librte_eal/linuxapp/igb_uio/compat.h b/kernel/linux/igb_uio/compat.h
similarity index 100%
rename from lib/librte_eal/linuxapp/igb_uio/compat.h
rename to kernel/linux/igb_uio/compat.h
diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/kernel/linux/igb_uio/igb_uio.c
similarity index 100%
rename from lib/librte_eal/linuxapp/igb_uio/igb_uio.c
rename to kernel/linux/igb_uio/igb_uio.c
diff --git a/lib/librte_eal/linuxapp/kni/Makefile b/kernel/linux/kni/Makefile
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/Makefile
rename to kernel/linux/kni/Makefile
diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/kernel/linux/kni/compat.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/compat.h
rename to kernel/linux/kni/compat.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/README b/kernel/linux/kni/ethtool/README
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/README
rename to kernel/linux/kni/ethtool/README
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.c b/kernel/linux/kni/ethtool/igb/e1000_82575.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.c
rename to kernel/linux/kni/ethtool/igb/e1000_82575.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.h b/kernel/linux/kni/ethtool/igb/e1000_82575.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_82575.h
rename to kernel/linux/kni/ethtool/igb/e1000_82575.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.c b/kernel/linux/kni/ethtool/igb/e1000_api.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.c
rename to kernel/linux/kni/ethtool/igb/e1000_api.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h b/kernel/linux/kni/ethtool/igb/e1000_api.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_api.h
rename to kernel/linux/kni/ethtool/igb/e1000_api.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_defines.h b/kernel/linux/kni/ethtool/igb/e1000_defines.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_defines.h
rename to kernel/linux/kni/ethtool/igb/e1000_defines.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h b/kernel/linux/kni/ethtool/igb/e1000_hw.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_hw.h
rename to kernel/linux/kni/ethtool/igb/e1000_hw.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.c b/kernel/linux/kni/ethtool/igb/e1000_i210.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.c
rename to kernel/linux/kni/ethtool/igb/e1000_i210.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.h b/kernel/linux/kni/ethtool/igb/e1000_i210.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_i210.h
rename to kernel/linux/kni/ethtool/igb/e1000_i210.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.c b/kernel/linux/kni/ethtool/igb/e1000_mac.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.c
rename to kernel/linux/kni/ethtool/igb/e1000_mac.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.h b/kernel/linux/kni/ethtool/igb/e1000_mac.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mac.h
rename to kernel/linux/kni/ethtool/igb/e1000_mac.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.c b/kernel/linux/kni/ethtool/igb/e1000_manage.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.c
rename to kernel/linux/kni/ethtool/igb/e1000_manage.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.h b/kernel/linux/kni/ethtool/igb/e1000_manage.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_manage.h
rename to kernel/linux/kni/ethtool/igb/e1000_manage.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.c b/kernel/linux/kni/ethtool/igb/e1000_mbx.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.c
rename to kernel/linux/kni/ethtool/igb/e1000_mbx.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.h b/kernel/linux/kni/ethtool/igb/e1000_mbx.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_mbx.h
rename to kernel/linux/kni/ethtool/igb/e1000_mbx.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.c b/kernel/linux/kni/ethtool/igb/e1000_nvm.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.c
rename to kernel/linux/kni/ethtool/igb/e1000_nvm.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.h b/kernel/linux/kni/ethtool/igb/e1000_nvm.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_nvm.h
rename to kernel/linux/kni/ethtool/igb/e1000_nvm.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h b/kernel/linux/kni/ethtool/igb/e1000_osdep.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_osdep.h
rename to kernel/linux/kni/ethtool/igb/e1000_osdep.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c b/kernel/linux/kni/ethtool/igb/e1000_phy.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.c
rename to kernel/linux/kni/ethtool/igb/e1000_phy.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.h b/kernel/linux/kni/ethtool/igb/e1000_phy.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_phy.h
rename to kernel/linux/kni/ethtool/igb/e1000_phy.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_regs.h b/kernel/linux/kni/ethtool/igb/e1000_regs.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/e1000_regs.h
rename to kernel/linux/kni/ethtool/igb/e1000_regs.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h b/kernel/linux/kni/ethtool/igb/igb.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
rename to kernel/linux/kni/ethtool/igb/igb.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_ethtool.c b/kernel/linux/kni/ethtool/igb/igb_ethtool.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_ethtool.c
rename to kernel/linux/kni/ethtool/igb/igb_ethtool.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c b/kernel/linux/kni/ethtool/igb/igb_main.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
rename to kernel/linux/kni/ethtool/igb/igb_main.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_param.c b/kernel/linux/kni/ethtool/igb/igb_param.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_param.c
rename to kernel/linux/kni/ethtool/igb/igb_param.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_regtest.h b/kernel/linux/kni/ethtool/igb/igb_regtest.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_regtest.h
rename to kernel/linux/kni/ethtool/igb/igb_regtest.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.c b/kernel/linux/kni/ethtool/igb/igb_vmdq.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.c
rename to kernel/linux/kni/ethtool/igb/igb_vmdq.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.h b/kernel/linux/kni/ethtool/igb/igb_vmdq.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/igb_vmdq.h
rename to kernel/linux/kni/ethtool/igb/igb_vmdq.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/kernel/linux/kni/ethtool/igb/kcompat.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
rename to kernel/linux/kni/ethtool/igb/kcompat.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82598.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82598.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_82599.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_82599.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_api.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_api.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_api.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_api.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_api.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_common.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_common.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_common.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_common.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_common.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_dcb.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_dcb.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_dcb.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_dcb.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_ethtool.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_ethtool.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_ethtool.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_ethtool.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_fcoe.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_fcoe.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_fcoe.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_fcoe.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_main.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_main.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_main.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_main.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_mbx.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_mbx.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_mbx.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_mbx.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_osdep.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_osdep.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_osdep.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_osdep.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_phy.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_phy.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_type.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_type.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_type.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_type.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.c b/kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.c
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.h b/kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/ixgbe_x540.h
rename to kernel/linux/kni/ethtool/ixgbe/ixgbe_x540.h
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.c b/kernel/linux/kni/ethtool/ixgbe/kcompat.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.c
rename to kernel/linux/kni/ethtool/ixgbe/kcompat.c
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.h b/kernel/linux/kni/ethtool/ixgbe/kcompat.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/ethtool/ixgbe/kcompat.h
rename to kernel/linux/kni/ethtool/ixgbe/kcompat.h
diff --git a/lib/librte_eal/linuxapp/kni/kni_dev.h b/kernel/linux/kni/kni_dev.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/kni_dev.h
rename to kernel/linux/kni/kni_dev.h
diff --git a/lib/librte_eal/linuxapp/kni/kni_ethtool.c b/kernel/linux/kni/kni_ethtool.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/kni_ethtool.c
rename to kernel/linux/kni/kni_ethtool.c
diff --git a/lib/librte_eal/linuxapp/kni/kni_fifo.h b/kernel/linux/kni/kni_fifo.h
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/kni_fifo.h
rename to kernel/linux/kni/kni_fifo.h
diff --git a/lib/librte_eal/linuxapp/kni/kni_misc.c b/kernel/linux/kni/kni_misc.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/kni_misc.c
rename to kernel/linux/kni/kni_misc.c
diff --git a/lib/librte_eal/linuxapp/kni/kni_net.c b/kernel/linux/kni/kni_net.c
similarity index 100%
rename from lib/librte_eal/linuxapp/kni/kni_net.c
rename to kernel/linux/kni/kni_net.c
diff --git a/lib/librte_eal/bsdapp/Makefile b/lib/librte_eal/bsdapp/Makefile
index 9d8e247..5b06b21 100644
--- a/lib/librte_eal/bsdapp/Makefile
+++ b/lib/librte_eal/bsdapp/Makefile
@@ -4,7 +4,5 @@ 
 include $(RTE_SDK)/mk/rte.vars.mk
 
 DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += eal
-DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += contigmem
-DIRS-$(CONFIG_RTE_EXEC_ENV_BSDAPP) += nic_uio
 
 include $(RTE_SDK)/mk/rte.subdir.mk
diff --git a/lib/librte_eal/linuxapp/Makefile b/lib/librte_eal/linuxapp/Makefile
index 7e94e91..d3e30fd 100644
--- a/lib/librte_eal/linuxapp/Makefile
+++ b/lib/librte_eal/linuxapp/Makefile
@@ -4,8 +4,6 @@ 
 include $(RTE_SDK)/mk/rte.vars.mk
 
 DIRS-$(CONFIG_RTE_EXEC_ENV_LINUXAPP) += eal
-DIRS-$(CONFIG_RTE_EAL_IGB_UIO) += igb_uio
-DIRS-$(CONFIG_RTE_KNI_KMOD) += kni
 DEPDIRS-kni := eal
 
 include $(RTE_SDK)/mk/rte.subdir.mk