]> git.proxmox.com Git - mirror_ovs.git/commitdiff
datapath: Fix compiling error for 4.14.111+ kernel
authorYifeng Sun <pkusunyifeng@gmail.com>
Fri, 26 Apr 2019 21:42:07 +0000 (14:42 -0700)
committerBen Pfaff <blp@ovn.org>
Sun, 28 Apr 2019 05:15:00 +0000 (22:15 -0700)
Acked-by: Yi-Hung Wei <yihung.wei@gmail.com>
Tested-by: Greg Rose <gvrose8192@gmail.com>
Reviewed-by: Greg Rose <gvrose8192@gmail.com>
Fixes: f72469405eec9 ("datapath: meter: Use struct_size() in kzalloc()")
Signed-off-by: Yifeng Sun <pkusunyifeng@gmail.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
.travis.yml
acinclude.m4
datapath/linux/compat/include/linux/overflow.h
datapath/meter.c

index 32d5f1918495cfe696469efca128c1416efc5042..468c39ecd50569ceb2dce23c086f9e9d8d556656 100644 (file)
@@ -39,7 +39,7 @@ env:
   - KERNEL=4.17.19
   - KERNEL=4.16.18
   - KERNEL=4.15.18
-  - KERNEL=4.14.63
+  - KERNEL=4.14.111
   - KERNEL=4.9.149
   - KERNEL=4.4.148
   - KERNEL=3.19.8
index 301aeb70d82a21bc8e36c8064a852db2e1bfa00e..b532a457926698867e6573d10f77ddcb79c9df51 100644 (file)
@@ -920,6 +920,8 @@ AC_DEFUN([OVS_CHECK_LINUX_COMPAT], [
                         [OVS_DEFINE([HAVE_INET_FRAGS_RND])])
   OVS_GREP_IFELSE([$KSRC/include/linux/overflow.h], [__LINUX_OVERFLOW_H],
                   [OVS_DEFINE([HAVE_OVERFLOW_H])])
+  OVS_GREP_IFELSE([$KSRC/include/linux/overflow.h], [struct_size],
+                  [OVS_DEFINE([HAVE_STRUCT_SIZE])])
   OVS_GREP_IFELSE([$KSRC/include/linux/mm.h], [kvmalloc_array],
                   [OVS_DEFINE([HAVE_KVMALLOC_ARRAY])])
   OVS_GREP_IFELSE([$KSRC/include/linux/mm.h], [kvmalloc_node],
index ff84356db16c044d7e24c7aba4fd197201d4378d..13ae6cf6a94a8cbe945c8e93c7fa06fe0ea6b111 100644 (file)
@@ -1,5 +1,5 @@
 /* SPDX-License-Identifier: GPL-2.0 OR MIT */
-#ifdef HAVE_OVERFLOW_H
+#if defined(HAVE_OVERFLOW_H) && defined(HAVE_STRUCT_SIZE)
 #include_next <linux/overflow.h>
 #else
 #ifndef __LINUX_OVERFLOW_H
@@ -310,4 +310,4 @@ static inline __must_check size_t __ab_c_size(size_t n, size_t size, size_t c)
                    sizeof(*(p)))
 
 #endif /* __LINUX_OVERFLOW_H */
-#endif /* HAVE_OVERFLOW_H */
+#endif /* defined(HAVE_OVERFLOW_H) && defined(HAVE_STRUCT_SIZE) */
index 51ec1495033a864b595bf1e49d9eb3f24c1d7b09..eda14682fb96c77e3883d91306fceb450b65c203 100644 (file)
@@ -13,6 +13,7 @@
 #include <linux/ip.h>
 #include <linux/kernel.h>
 #include <linux/openvswitch.h>
+#include <linux/overflow.h>
 #include <linux/netlink.h>
 #include <linux/rculist.h>