KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
endif
-LINUX_VERSION-4.14 = .152
+LINUX_VERSION-4.14 = .154
-LINUX_KERNEL_HASH-4.14.152 = d28f9b524b6056c8b5c807ad147d36b0ecdadb41963c08144b03d09d276a4f2d
+LINUX_KERNEL_HASH-4.14.154 = b02b04eb03b30d2f7072c1cfe79f62f687fe10ecc6fae30102e212d4b570
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -897,8 +897,6 @@ struct nft_stats {
+@@ -898,8 +898,6 @@ struct nft_stats {
struct u64_stats_sync syncp;
};
/**
* struct nft_base_chain - nf_tables base chain
*
-@@ -910,7 +908,7 @@ struct nft_stats {
+@@ -911,7 +909,7 @@ struct nft_stats {
* @dev_name: device name that this base chain is attached to (if any)
*/
struct nft_base_chain {
const struct nf_chain_type *type;
u8 policy;
u8 flags;
-@@ -971,8 +969,6 @@ enum nft_af_flags {
+@@ -972,8 +970,6 @@ enum nft_af_flags {
* @owner: module owner
* @tables: used internally
* @flags: family flags
* @hooks: hookfn overrides for packet validation
*/
struct nft_af_info {
-@@ -982,9 +978,6 @@ struct nft_af_info {
+@@ -983,9 +979,6 @@ struct nft_af_info {
struct module *owner;
struct list_head tables;
u32 flags;
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -875,7 +875,7 @@ enum nft_chain_type {
+@@ -876,7 +876,7 @@ enum nft_chain_type {
* @family: address family
* @owner: module owner
* @hook_mask: mask of valid hooks
*/
struct nf_chain_type {
const char *name;
-@@ -969,7 +969,6 @@ enum nft_af_flags {
+@@ -970,7 +970,6 @@ enum nft_af_flags {
* @owner: module owner
* @tables: used internally
* @flags: family flags
*/
struct nft_af_info {
struct list_head list;
-@@ -978,7 +977,6 @@ struct nft_af_info {
+@@ -979,7 +978,6 @@ struct nft_af_info {
struct module *owner;
struct list_head tables;
u32 flags;
#include <net/netlink.h>
#define NFT_JUMP_STACK_SIZE 16
-@@ -938,6 +939,7 @@ unsigned int nft_do_chain(struct nft_pkt
+@@ -939,6 +940,7 @@ unsigned int nft_do_chain(struct nft_pkt
* @chains: chains in the table
* @sets: sets in the table
* @objects: stateful objects in the table
* @hgenerator: handle generator state
* @use: number of chain references to this table
* @flags: table flag (see enum nft_table_flags)
-@@ -949,6 +951,7 @@ struct nft_table {
+@@ -950,6 +952,7 @@ struct nft_table {
struct list_head chains;
struct list_head sets;
struct list_head objects;
u64 hgenerator;
u32 use;
u16 flags:14,
-@@ -1080,6 +1083,44 @@ int nft_register_obj(struct nft_object_t
+@@ -1081,6 +1084,44 @@ int nft_register_obj(struct nft_object_t
void nft_unregister_obj(struct nft_object_type *obj_type);
/**
* struct nft_traceinfo - nft tracing information and state
*
* @pkt: pktinfo currently processed
-@@ -1315,4 +1356,11 @@ struct nft_trans_obj {
+@@ -1316,4 +1357,11 @@ struct nft_trans_obj {
#define nft_trans_obj(trans) \
(((struct nft_trans_obj *)trans->data)->obj)
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -968,7 +968,6 @@ enum nft_af_flags {
+@@ -969,7 +969,6 @@ enum nft_af_flags {
*
* @list: used internally
* @family: address family
* @owner: module owner
* @tables: used internally
* @flags: family flags
-@@ -976,7 +975,6 @@ enum nft_af_flags {
+@@ -977,7 +976,6 @@ enum nft_af_flags {
struct nft_af_info {
struct list_head list;
int family;
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -959,10 +959,6 @@ struct nft_table {
+@@ -960,10 +960,6 @@ struct nft_table {
char *name;
};
/**
* struct nft_af_info - nf_tables address family info
*
-@@ -970,14 +966,12 @@ enum nft_af_flags {
+@@ -971,14 +967,12 @@ enum nft_af_flags {
* @family: address family
* @owner: module owner
* @tables: used internally
bool report;
};
-@@ -944,6 +944,7 @@ unsigned int nft_do_chain(struct nft_pkt
+@@ -945,6 +945,7 @@ unsigned int nft_do_chain(struct nft_pkt
* @use: number of chain references to this table
* @flags: table flag (see enum nft_table_flags)
* @genmask: generation mask
* @name: name of the table
*/
struct nft_table {
-@@ -956,6 +957,7 @@ struct nft_table {
+@@ -957,6 +958,7 @@ struct nft_table {
u32 use;
u16 flags:14,
genmask:2;
char *name;
};
-@@ -965,13 +967,11 @@ struct nft_table {
+@@ -966,13 +968,11 @@ struct nft_table {
* @list: used internally
* @family: address family
* @owner: module owner
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -974,8 +974,8 @@ struct nft_af_info {
+@@ -975,8 +975,8 @@ struct nft_af_info {
struct module *owner;
};
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -955,28 +955,12 @@ struct nft_table {
+@@ -956,28 +956,12 @@ struct nft_table {
struct list_head flowtables;
u64 hgenerator;
u32 use;
int nft_register_chain_type(const struct nf_chain_type *);
void nft_unregister_chain_type(const struct nf_chain_type *);
-@@ -1144,9 +1128,6 @@ void nft_trace_notify(struct nft_tracein
+@@ -1145,9 +1129,6 @@ void nft_trace_notify(struct nft_tracein
#define nft_dereference(p) \
nfnl_dereference(p, NFNL_SUBSYS_NFTABLES)
u32 ktype;
u32 dtype;
u32 objtype;
-@@ -941,6 +943,7 @@ unsigned int nft_do_chain(struct nft_pkt
+@@ -942,6 +944,7 @@ unsigned int nft_do_chain(struct nft_pkt
* @objects: stateful objects in the table
* @flowtables: flow tables in the table
* @hgenerator: handle generator state
* @use: number of chain references to this table
* @flags: table flag (see enum nft_table_flags)
* @genmask: generation mask
-@@ -954,6 +957,7 @@ struct nft_table {
+@@ -955,6 +958,7 @@ struct nft_table {
struct list_head objects;
struct list_head flowtables;
u64 hgenerator;
u32 use;
u16 family:6,
flags:8,
-@@ -978,9 +982,9 @@ int nft_verdict_dump(struct sk_buff *skb
+@@ -979,9 +983,9 @@ int nft_verdict_dump(struct sk_buff *skb
* @name: name of this stateful object
* @genmask: generation mask
* @use: number of references to this stateful object
*/
struct nft_object {
struct list_head list;
-@@ -988,6 +992,7 @@ struct nft_object {
+@@ -989,6 +993,7 @@ struct nft_object {
struct nft_table *table;
u32 genmask:2,
use:30;
/* runtime data below here */
const struct nft_object_ops *ops ____cacheline_aligned;
unsigned char data[]
-@@ -1069,6 +1074,7 @@ void nft_unregister_obj(struct nft_objec
+@@ -1070,6 +1075,7 @@ void nft_unregister_obj(struct nft_objec
* @ops_len: number of hooks in array
* @genmask: generation mask
* @use: number of references to this flow table
* @data: rhashtable and garbage collector
* @ops: array of hooks
*/
-@@ -1081,6 +1087,7 @@ struct nft_flowtable {
+@@ -1082,6 +1088,7 @@ struct nft_flowtable {
int ops_len;
u32 genmask:2,
use:30;
struct delayed_work gc_work;
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
-@@ -1096,9 +1096,6 @@ struct nft_flowtable {
+@@ -1097,9 +1097,6 @@ struct nft_flowtable {
struct nft_flowtable *nf_tables_flowtable_lookup(const struct nft_table *table,
const struct nlattr *nla,
u8 genmask);
--- a/Makefile
+++ b/Makefile
-@@ -1243,7 +1243,6 @@ all: modules
+@@ -1252,7 +1252,6 @@ all: modules
PHONY += modules
modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin
@$(kecho) ' Building modules, stage 2.';
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
-@@ -1272,7 +1271,6 @@ _modinst_:
+@@ -1281,7 +1280,6 @@ _modinst_:
rm -f $(MODLIB)/build ; \
ln -s $(CURDIR) $(MODLIB)/build ; \
fi
*/
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2514,6 +2514,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -2530,6 +2530,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
-@@ -2645,16 +2649,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -2661,16 +2665,6 @@ static inline struct sk_buff *dev_alloc_
}
#endif
#ifdef CONFIG_PROC_FS
- proc_create("buddyinfo", 0444, NULL, &buddyinfo_file_operations);
-- proc_create("pagetypeinfo", 0444, NULL, &pagetypeinfo_file_operations);
+- proc_create("pagetypeinfo", 0400, NULL, &pagetypeinfo_file_operations);
+ if (!IS_ENABLED(CONFIG_PROC_STRIPPED)) {
+ proc_create("buddyinfo", 0444, NULL, &buddyinfo_file_operations);
-+ proc_create("pagetypeinfo", 0444, NULL, &pagetypeinfo_file_operations);
++ proc_create("pagetypeinfo", 0400, NULL, &pagetypeinfo_file_operations);
+ proc_create("zoneinfo", 0444, NULL, &zoneinfo_file_operations);
+ }
proc_create("vmstat", 0444, NULL, &vmstat_file_operations);
+MODULE_LICENSE("GPL");
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
-@@ -2164,6 +2164,7 @@ int wake_up_state(struct task_struct *p,
+@@ -2165,6 +2165,7 @@ int wake_up_state(struct task_struct *p,
{
return try_to_wake_up(p, state, 0);
}
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2478,7 +2478,7 @@ static inline int pskb_network_may_pull(
+@@ -2494,7 +2494,7 @@ static inline int pskb_network_may_pull(
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD