From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferruh Yigit Subject: [PATCH v2] kni: fix build with kernel 4.11 Date: Tue, 21 Mar 2017 09:54:48 +0000 Message-ID: <20170321095448.13772-1-ferruh.yigit@intel.com> References: <20170320112208.7941-1-ferruh.yigit@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: dev@dpdk.org, stable@dpdk.org, Ferruh Yigit To: Jerin Jacob , Thomas Monjalon Return-path: In-Reply-To: <20170320112208.7941-1-ferruh.yigit@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" compile error: .../build/build/lib/librte_eal/linuxapp/kni/kni_net.c:124:6: error: implicit declaration of function ‘signal_pending’ [-Werror=implicit-function-declaration] if (signal_pending(current) || ret_val <= 0) { ^~~~~~~~~~~~~~ Linux 4.11 moves signal function declarations to its own header file: Linux: 174cd4b1e5fb ("sched/headers: Prepare to move signal wakeup & sigpending methods from into ") Use new header file "linux/sched/signal.h" to fix the build error. Cc: stable@dpdk.org Reported-by: Jerin Jacob Signed-off-by: Ferruh Yigit Tested-by: Jerin Jacob Tested-by: Pankaj Gupta --- v2: * update commit log User -> Use * CC: stable and Thomas --- lib/librte_eal/linuxapp/kni/compat.h | 6 ++++++ lib/librte_eal/linuxapp/kni/kni_dev.h | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/lib/librte_eal/linuxapp/kni/compat.h index 78da08e..d96275a 100644 --- a/lib/librte_eal/linuxapp/kni/compat.h +++ b/lib/librte_eal/linuxapp/kni/compat.h @@ -2,6 +2,8 @@ * Minimal wrappers to allow compiling kni on older kernels. */ +#include + #ifndef RHEL_RELEASE_VERSION #define RHEL_RELEASE_VERSION(a, b) (((a) << 8) + (b)) #endif @@ -67,3 +69,7 @@ (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34))) #undef NET_NAME_UNKNOWN #endif + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0) +#define HAVE_SIGNAL_FUNCTIONS_OWN_HEADER +#endif diff --git a/lib/librte_eal/linuxapp/kni/kni_dev.h b/lib/librte_eal/linuxapp/kni/kni_dev.h index 002e5fa..72385ab 100644 --- a/lib/librte_eal/linuxapp/kni/kni_dev.h +++ b/lib/librte_eal/linuxapp/kni/kni_dev.h @@ -30,9 +30,15 @@ #endif #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt +#include "compat.h" + #include #include +#ifdef HAVE_SIGNAL_FUNCTIONS_OWN_HEADER +#include +#else #include +#endif #include #include #include -- 2.9.3