mirror of
https://github.com/openwrt/packages.git
synced 2026-05-27 23:00:49 +04:00
ovpn-dco: fix build on kernel 6.18.33
Kernel version 6.18.33 backports kmalloc_obj macros but GFP flags are required, which causes build failures as ovpn omits GFP flags. Undef those macros to fix the build. Signed-off-by: Qingfang Deng <dqfext@gmail.com>
This commit is contained in:
committed by
Alexandru Ardelean
parent
f10dfca2ba
commit
407e076759
@@ -0,0 +1,107 @@
|
||||
Subject: [PATCH] undef kmalloc_obj macros
|
||||
|
||||
Kernel version 6.18.33 backports kmalloc_obj macros but GFP flags are
|
||||
required, which causes build failures as ovpn omits GFP flags. Undef
|
||||
those macros to fix the build.
|
||||
|
||||
https://github.com/OpenVPN/ovpn-backports/issues/21
|
||||
|
||||
--- a/compat-include/linux/slab.h
|
||||
+++ b/compat-include/linux/slab.h
|
||||
@@ -4,15 +4,14 @@
|
||||
#include <linux/version.h>
|
||||
#include_next <linux/slab.h>
|
||||
|
||||
-#ifndef __alloc_objs
|
||||
+#undef __alloc_objs
|
||||
#define __alloc_objs(KMALLOC, GFP, TYPE, COUNT) \
|
||||
({ \
|
||||
const size_t __obj_size = size_mul(sizeof(TYPE), COUNT); \
|
||||
(TYPE *)KMALLOC(__obj_size, GFP); \
|
||||
})
|
||||
-#endif /* __alloc_objs */
|
||||
|
||||
-#ifndef __alloc_flex
|
||||
+#undef __alloc_flex
|
||||
#define __alloc_flex(KMALLOC, GFP, TYPE, FAM, COUNT) \
|
||||
({ \
|
||||
const size_t __count = (COUNT); \
|
||||
@@ -22,66 +21,53 @@
|
||||
__set_flex_counter(__obj_ptr->FAM, __count); \
|
||||
__obj_ptr; \
|
||||
})
|
||||
-#endif /* __alloc_flex */
|
||||
|
||||
-#ifndef kmalloc_obj
|
||||
+#undef kmalloc_obj
|
||||
#define kmalloc_obj(VAR_OR_TYPE, ...) \
|
||||
__alloc_objs(kmalloc, default_gfp(__VA_ARGS__), typeof(VAR_OR_TYPE), 1)
|
||||
-#endif /* kmalloc_obj */
|
||||
|
||||
-#ifndef kmalloc_objs
|
||||
+#undef kmalloc_objs
|
||||
#define kmalloc_objs(VAR_OR_TYPE, COUNT, ...) \
|
||||
__alloc_objs(kmalloc, default_gfp(__VA_ARGS__), typeof(VAR_OR_TYPE), COUNT)
|
||||
-#endif /* kmalloc_objs */
|
||||
|
||||
-#ifndef kmalloc_flex
|
||||
+#undef kmalloc_flex
|
||||
#define kmalloc_flex(VAR_OR_TYPE, FAM, COUNT, ...) \
|
||||
__alloc_flex(kmalloc, default_gfp(__VA_ARGS__), typeof(VAR_OR_TYPE), FAM, COUNT)
|
||||
-#endif /* kmalloc_flex */
|
||||
|
||||
-#ifndef kzalloc_obj
|
||||
+#undef kzalloc_obj
|
||||
#define kzalloc_obj(P, ...) \
|
||||
__alloc_objs(kzalloc, default_gfp(__VA_ARGS__), typeof(P), 1)
|
||||
-#endif /* kzalloc_obj */
|
||||
|
||||
-#ifndef kzalloc_objs
|
||||
+#undef kzalloc_objs
|
||||
#define kzalloc_objs(P, COUNT, ...) \
|
||||
__alloc_objs(kzalloc, default_gfp(__VA_ARGS__), typeof(P), COUNT)
|
||||
-#endif /* kzalloc_objs */
|
||||
|
||||
-#ifndef kzalloc_flex
|
||||
+#undef kzalloc_flex
|
||||
#define kzalloc_flex(P, FAM, COUNT, ...) \
|
||||
__alloc_flex(kzalloc, default_gfp(__VA_ARGS__), typeof(P), FAM, COUNT)
|
||||
-#endif /* kzalloc_flex */
|
||||
|
||||
-#ifndef kvmalloc_obj
|
||||
+#undef kvmalloc_obj
|
||||
#define kvmalloc_obj(P, ...) \
|
||||
__alloc_objs(kvmalloc, default_gfp(__VA_ARGS__), typeof(P), 1)
|
||||
-#endif /* kvmalloc_obj */
|
||||
|
||||
-#ifndef kvmalloc_objs
|
||||
+#undef kvmalloc_objs
|
||||
#define kvmalloc_objs(P, COUNT, ...) \
|
||||
__alloc_objs(kvmalloc, default_gfp(__VA_ARGS__), typeof(P), COUNT)
|
||||
-#endif /* kvmalloc_objs */
|
||||
|
||||
-#ifndef kvmalloc_flex
|
||||
+#undef kvmalloc_flex
|
||||
#define kvmalloc_flex(P, FAM, COUNT, ...) \
|
||||
__alloc_flex(kvmalloc, default_gfp(__VA_ARGS__), typeof(P), FAM, COUNT)
|
||||
-#endif /* kvmalloc_flex */
|
||||
|
||||
-#ifndef kvzalloc_obj
|
||||
+#undef kvzalloc_obj
|
||||
#define kvzalloc_obj(P, ...) \
|
||||
__alloc_objs(kvzalloc, default_gfp(__VA_ARGS__), typeof(P), 1)
|
||||
-#endif /* kvzalloc_obj */
|
||||
|
||||
-#ifndef kvzalloc_objs
|
||||
+#undef kvzalloc_objs
|
||||
#define kvzalloc_objs(P, COUNT, ...) \
|
||||
__alloc_objs(kvzalloc, default_gfp(__VA_ARGS__), typeof(P), COUNT)
|
||||
-#endif /* kvzalloc_objs */
|
||||
|
||||
-#ifndef kvzalloc_flex
|
||||
+#undef kvzalloc_flex
|
||||
#define kvzalloc_flex(P, FAM, COUNT, ...) \
|
||||
__alloc_flex(kvzalloc, default_gfp(__VA_ARGS__), typeof(P), FAM, COUNT)
|
||||
-#endif /* kvzalloc_flex */
|
||||
|
||||
#endif /* _NET_OVPN_LINUX_SLAB_H_ */
|
||||
Reference in New Issue
Block a user