mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-09-12 23:07:43 +03:00
Ref: http://lkml.org/lkml/2010/4/13/118 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22621 3c298f89-4303-0410-b956-a3cf2f4a3e73
51 lines
1.5 KiB
Diff
51 lines
1.5 KiB
Diff
--- a/include/linux/kernel.h
|
|
+++ b/include/linux/kernel.h
|
|
@@ -4,6 +4,8 @@
|
|
/*
|
|
* 'kernel.h' contains some often-used function prototypes etc
|
|
*/
|
|
+#define __ALIGN_KERNEL(x, a) __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
|
|
+#define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask))
|
|
|
|
#ifdef __KERNEL__
|
|
|
|
@@ -37,8 +39,8 @@ extern const char linux_proc_banner[];
|
|
|
|
#define STACK_MAGIC 0xdeadbeef
|
|
|
|
-#define ALIGN(x,a) __ALIGN_MASK(x,(typeof(x))(a)-1)
|
|
-#define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask))
|
|
+#define ALIGN(x, a) __ALIGN_KERNEL((x), (a))
|
|
+#define __ALIGN_MASK(x, mask) __ALIGN_KERNEL_MASK((x), (mask))
|
|
#define PTR_ALIGN(p, a) ((typeof(p))ALIGN((unsigned long)(p), (a)))
|
|
#define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0)
|
|
|
|
--- a/include/linux/netfilter/x_tables.h
|
|
+++ b/include/linux/netfilter/x_tables.h
|
|
@@ -1,6 +1,6 @@
|
|
#ifndef _X_TABLES_H
|
|
#define _X_TABLES_H
|
|
-
|
|
+#include <linux/kernel.h>
|
|
#include <linux/types.h>
|
|
|
|
#define XT_FUNCTION_MAXNAMELEN 30
|
|
@@ -93,7 +93,7 @@ struct _xt_align {
|
|
__u64 u64;
|
|
};
|
|
|
|
-#define XT_ALIGN(s) ALIGN((s), __alignof__(struct _xt_align))
|
|
+#define XT_ALIGN(s) __ALIGN_KERNEL((s), __alignof__(struct _xt_align))
|
|
|
|
/* Standard return verdict, or do jump. */
|
|
#define XT_STANDARD_TARGET ""
|
|
@@ -598,7 +598,7 @@ struct _compat_xt_align {
|
|
compat_u64 u64;
|
|
};
|
|
|
|
-#define COMPAT_XT_ALIGN(s) ALIGN((s), __alignof__(struct _compat_xt_align))
|
|
+#define COMPAT_XT_ALIGN(s) __ALIGN_KERNEL((s), __alignof__(struct _compat_xt_align))
|
|
|
|
extern void xt_compat_lock(u_int8_t af);
|
|
extern void xt_compat_unlock(u_int8_t af);
|