Updated to version 4.15.2

Note: flex and bison are now required for the kernel build
unconditionally.
This commit is contained in:
Evgenii Shatokhin 2018-02-10 19:33:13 +03:00
parent 0670c06c58
commit cc4817f8f8
11 changed files with 572 additions and 302 deletions

View file

@ -1,3 +1,3 @@
sources:
linux-4.14.tar.xz: c64d80ad01a6a77bf46bce1bdc5c7f28bfb6bfd5
patch-4.14.17.xz: 692ee0872004e84fbb54bdf23e35a2f4f442f47c
linux-4.15.tar.xz: 5cf2693d2c6bf1e69a9216dceca6183c60eb11d5
patch-4.15.2.xz: b3395db9b90d9c2a16392aed77bd8a55299ac136

View file

@ -1,8 +1,8 @@
diff --git a/Makefile b/Makefile
index 781b12be59bf..a64a4e30a065 100644
index 54f1bc10b531..27186b379cbd 100644
--- a/Makefile
+++ b/Makefile
@@ -582,9 +582,7 @@ ifeq ($(KBUILD_EXTMOD),)
@@ -551,9 +551,7 @@ ifeq ($(KBUILD_EXTMOD),)
# Carefully list dependencies so we do not try to build scripts twice
# in parallel
PHONY += scripts
@ -13,22 +13,22 @@ index 781b12be59bf..a64a4e30a065 100644
# Objects we will link into vmlinux / subdirs we need to visit
init-y := init/
@@ -1096,7 +1094,7 @@ prepare0: archprepare gcc-plugins
@@ -1063,7 +1061,7 @@ prepare0: archprepare gcc-plugins
$(Q)$(MAKE) $(build)=.
# All the preparing..
-prepare: prepare0 prepare-objtool
+prepare:
PHONY += prepare-objtool
prepare-objtool: $(objtool_target)
@@ -1322,13 +1320,8 @@ endif # CONFIG_MODULES
# Support for using generic headers in asm-generic
PHONY += asm-generic uapi-asm-generic
@@ -1284,13 +1282,8 @@ endif # CONFIG_MODULES
CLEAN_DIRS += $(MODVERDIR)
# Directories & files removed with 'make mrproper'
-MRPROPER_DIRS += include/config usr/include include/generated \
- arch/*/include/generated .tmp_objdiff
-MRPROPER_FILES += .config .config.old .version .old_version \
-MRPROPER_FILES += .config .config.old .version \
- Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS \
- signing_key.pem signing_key.priv signing_key.x509 \
- x509.genkey extra_certificates signing_key.x509.keyid \
@ -38,7 +38,7 @@ index 781b12be59bf..a64a4e30a065 100644
# clean - Delete most, but leave enough to build external modules
#
@@ -1350,13 +1343,10 @@ clean: archclean vmlinuxclean
@@ -1312,13 +1305,10 @@ clean: archclean vmlinuxclean
#
mrproper: rm-dirs := $(wildcard $(MRPROPER_DIRS))
mrproper: rm-files := $(wildcard $(MRPROPER_FILES))
@ -55,10 +55,10 @@ index 781b12be59bf..a64a4e30a065 100644
$(call cmd,rmfiles)
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index eb8144643b78..904d6f0e0520 100644
index 297c1bf35140..bd051cecffcc 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -19,25 +19,16 @@ endif
@@ -20,25 +20,16 @@ endif
unexport CONFIG_
xconfig: $(obj)/qconf
@ -84,7 +84,7 @@ index eb8144643b78..904d6f0e0520 100644
localyesconfig localmodconfig: $(obj)/streamline_config.pl $(obj)/conf
$(Q)mkdir -p include/config include/generated
@@ -83,7 +74,6 @@ simple-targets := oldconfig allnoconfig allyesconfig allmodconfig \
@@ -84,7 +75,6 @@ simple-targets := oldconfig allnoconfig allyesconfig allmodconfig \
PHONY += $(simple-targets)
$(simple-targets): $(obj)/conf
@ -92,7 +92,7 @@ index eb8144643b78..904d6f0e0520 100644
PHONY += oldnoconfig savedefconfig defconfig
@@ -93,23 +83,10 @@ PHONY += oldnoconfig savedefconfig defconfig
@@ -94,23 +84,10 @@ PHONY += oldnoconfig savedefconfig defconfig
oldnoconfig: olddefconfig
savedefconfig: $(obj)/conf

View file

@ -1918,10 +1918,10 @@ index 000000000000..b7ba75d8843a
+Currently this approach is applied to address_space_operations for
+regular files only.
diff --git a/MAINTAINERS b/MAINTAINERS
index 2811a211632c..02b6deb1f5bc 100644
index 845fc25812f1..7dc28139b1c0 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2465,6 +2465,19 @@ F: include/linux/audit.h
@@ -2486,6 +2486,19 @@ F: include/linux/audit.h
F: include/uapi/linux/audit.h
F: kernel/audit*
@ -1942,10 +1942,10 @@ index 2811a211632c..02b6deb1f5bc 100644
M: Miguel Ojeda Sandonis <miguel.ojeda.sandonis@gmail.com>
W: http://miguelojeda.es/auxdisplay.htm
diff --git a/drivers/block/loop.c b/drivers/block/loop.c
index 85de67334695..d44de9dbaddf 100644
index d5fe720cf149..c292afa11a9c 100644
--- a/drivers/block/loop.c
+++ b/drivers/block/loop.c
@@ -686,6 +686,24 @@ static inline int is_loop_device(struct file *file)
@@ -691,6 +691,24 @@ static inline int is_loop_device(struct file *file)
return i && S_ISBLK(i->i_mode) && MAJOR(i->i_rdev) == LOOP_MAJOR;
}
@ -1993,10 +1993,11 @@ index ef772f1eaff8..51779e68c0d0 100644
+obj-$(CONFIG_AUFS_FS) += aufs/
diff --git a/fs/aufs/Kconfig b/fs/aufs/Kconfig
new file mode 100644
index 000000000000..bef60e2119bc
index 000000000000..9f436425716a
--- /dev/null
+++ b/fs/aufs/Kconfig
@@ -0,0 +1,198 @@
@@ -0,0 +1,199 @@
+# SPDX-License-Identifier: GPL-2.0
+config AUFS_FS
+ tristate "Aufs (Advanced multi layered unification filesystem) support"
+ help
@ -2197,10 +2198,11 @@ index 000000000000..bef60e2119bc
+endif
diff --git a/fs/aufs/Makefile b/fs/aufs/Makefile
new file mode 100644
index 000000000000..7c77aa196eac
index 000000000000..2c819a64935e
--- /dev/null
+++ b/fs/aufs/Makefile
@@ -0,0 +1,45 @@
@@ -0,0 +1,46 @@
+# SPDX-License-Identifier: GPL-2.0
+
+include ${src}/magic.mk
+ifeq (${CONFIG_AUFS_FS},m)
@ -4091,10 +4093,11 @@ index 000000000000..c09218b9686a
+#endif /* __AUFS_BRANCH_H__ */
diff --git a/fs/aufs/conf.mk b/fs/aufs/conf.mk
new file mode 100644
index 000000000000..bf3c3a4f1037
index 000000000000..12782f8e0f38
--- /dev/null
+++ b/fs/aufs/conf.mk
@@ -0,0 +1,39 @@
@@ -0,0 +1,40 @@
+# SPDX-License-Identifier: GPL-2.0
+
+AuConfStr = CONFIG_AUFS_FS=${CONFIG_AUFS_FS}
+
@ -4136,10 +4139,10 @@ index 000000000000..bf3c3a4f1037
+-include ${srctree}/${src}/conf_priv.mk
diff --git a/fs/aufs/cpup.c b/fs/aufs/cpup.c
new file mode 100644
index 000000000000..d201fc056979
index 000000000000..e096069a4e5a
--- /dev/null
+++ b/fs/aufs/cpup.c
@@ -0,0 +1,1443 @@
@@ -0,0 +1,1442 @@
+/*
+ * Copyright (C) 2005-2017 Junjiro R. Okajima
+ *
@ -4615,8 +4618,7 @@ index 000000000000..d201fc056979
+ if (tsk->flags & PF_KTHREAD)
+ __fput_sync(file[DST].file);
+ else {
+ WARN(1, "%pD\nPlease report this warning to aufs-users ML",
+ file[DST].file);
+ /* it happend actually */
+ fput(file[DST].file);
+ /*
+ * too bad.
@ -23187,10 +23189,11 @@ index 000000000000..9b02d32905f4
+#endif /* __AUFS_LOOP_H__ */
diff --git a/fs/aufs/magic.mk b/fs/aufs/magic.mk
new file mode 100644
index 000000000000..4f83bdf1dd12
index 000000000000..7bc9eef3ffec
--- /dev/null
+++ b/fs/aufs/magic.mk
@@ -0,0 +1,30 @@
@@ -0,0 +1,31 @@
+# SPDX-License-Identifier: GPL-2.0
+
+# defined in ${srctree}/fs/fuse/inode.c
+# tristate
@ -36962,7 +36965,7 @@ index 000000000000..6c12fe667a27
+ return err;
+}
diff --git a/fs/dcache.c b/fs/dcache.c
index f90141387f01..3203470c59c2 100644
index 5c7df1df81ff..10c1a6d60d6e 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -1197,7 +1197,7 @@ enum d_walk_ret {
@ -36982,7 +36985,7 @@ index f90141387f01..3203470c59c2 100644
struct check_mount {
struct vfsmount *mnt;
@@ -2894,6 +2895,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
@@ -2892,6 +2893,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
write_sequnlock(&rename_lock);
}
@ -36991,7 +36994,7 @@ index f90141387f01..3203470c59c2 100644
/**
* d_ancestor - search for an ancestor
diff --git a/fs/exec.c b/fs/exec.c
index 3e14ba25f678..6818b0170e80 100644
index 7eb8d21bcab9..56d79858451d 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -109,6 +109,7 @@ bool path_noexec(const struct path *path)
@ -37003,7 +37006,7 @@ index 3e14ba25f678..6818b0170e80 100644
#ifdef CONFIG_USELIB
/*
diff --git a/fs/fcntl.c b/fs/fcntl.c
index 8d78ffd7b399..725d19016c54 100644
index 0522e283a4f4..ec53ee19db42 100644
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -32,7 +32,7 @@
@ -37033,7 +37036,7 @@ index 8d78ffd7b399..725d19016c54 100644
static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
int force)
diff --git a/fs/file_table.c b/fs/file_table.c
index 61517f57f8ef..c6bab39c1813 100644
index 2dc9f38bd195..7bf57df4f5c0 100644
--- a/fs/file_table.c
+++ b/fs/file_table.c
@@ -148,6 +148,7 @@ struct file *get_empty_filp(void)
@ -37069,7 +37072,7 @@ index 61517f57f8ef..c6bab39c1813 100644
void __init files_init(void)
{
diff --git a/fs/inode.c b/fs/inode.c
index d1e35b53bb23..344ec5e135f7 100644
index 03102d6ef044..37ec793773eb 100644
--- a/fs/inode.c
+++ b/fs/inode.c
@@ -856,6 +856,8 @@ unsigned int get_next_ino(void)
@ -37108,7 +37111,7 @@ index d1e35b53bb23..344ec5e135f7 100644
/**
* touch_atime - update the access time
diff --git a/fs/namespace.c b/fs/namespace.c
index d18deb4c410b..6d0c37678aa5 100644
index 9d1374ab6e06..a4b9707369dc 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -517,6 +517,7 @@ void __mnt_drop_write(struct vfsmount *mnt)
@ -37142,7 +37145,7 @@ index d18deb4c410b..6d0c37678aa5 100644
static void cleanup_group_ids(struct mount *mnt, struct mount *end)
{
diff --git a/fs/notify/group.c b/fs/notify/group.c
index 32357534de18..14a2d48f3ce2 100644
index b7a4b6a69efa..5a69d6024c65 100644
--- a/fs/notify/group.c
+++ b/fs/notify/group.c
@@ -22,6 +22,7 @@
@ -37155,14 +37158,14 @@ index 32357534de18..14a2d48f3ce2 100644
#include "fsnotify.h"
@@ -109,6 +110,7 @@ void fsnotify_get_group(struct fsnotify_group *group)
{
atomic_inc(&group->refcnt);
refcount_inc(&group->refcnt);
}
+EXPORT_SYMBOL_GPL(fsnotify_get_group);
/*
* Drop a reference to a group. Free it if it's through.
@@ -118,6 +120,7 @@ void fsnotify_put_group(struct fsnotify_group *group)
if (atomic_dec_and_test(&group->refcnt))
if (refcount_dec_and_test(&group->refcnt))
fsnotify_final_destroy_group(group);
}
+EXPORT_SYMBOL_GPL(fsnotify_put_group);
@ -37178,7 +37181,7 @@ index 32357534de18..14a2d48f3ce2 100644
int fsnotify_fasync(int fd, struct file *file, int on)
{
diff --git a/fs/notify/mark.c b/fs/notify/mark.c
index 258d99087183..9a80ee8bdc8b 100644
index e9191b416434..6d7dd3d29d75 100644
--- a/fs/notify/mark.c
+++ b/fs/notify/mark.c
@@ -124,6 +124,7 @@ static void __fsnotify_recalc_mask(struct fsnotify_mark_connector *conn)
@ -37197,7 +37200,7 @@ index 258d99087183..9a80ee8bdc8b 100644
/*
* Sorting function for lists of fsnotify marks.
@@ -604,6 +606,7 @@ int fsnotify_add_mark_locked(struct fsnotify_mark *mark, struct inode *inode,
@@ -606,6 +608,7 @@ int fsnotify_add_mark_locked(struct fsnotify_mark *mark, struct inode *inode,
fsnotify_put_mark(mark);
return ret;
}
@ -37205,7 +37208,7 @@ index 258d99087183..9a80ee8bdc8b 100644
int fsnotify_add_mark(struct fsnotify_mark *mark, struct inode *inode,
struct vfsmount *mnt, int allow_dups)
@@ -739,6 +742,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
@@ -741,6 +744,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
fsnotify_get_group(group);
mark->group = group;
}
@ -37234,10 +37237,10 @@ index 7ea118471dce..6e2e2418a840 100644
static int do_dentry_open(struct file *f,
struct inode *inode,
diff --git a/fs/proc/base.c b/fs/proc/base.c
index 9d357b2ea6cb..11f4f23b803e 100644
index 60316b52d659..ce5314e4d878 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -1988,7 +1988,7 @@ static int map_files_get_link(struct dentry *dentry, struct path *path)
@@ -1987,7 +1987,7 @@ static int map_files_get_link(struct dentry *dentry, struct path *path)
down_read(&mm->mmap_sem);
vma = find_exact_vma(mm, vm_start, vm_end);
if (vma && vma->vm_file) {
@ -37263,10 +37266,10 @@ index 75634379f82e..7c0dc0ff4882 100644
ino = inode->i_ino;
}
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 6744bd706ecf..6d4dea31b008 100644
index 339e4c1c044d..113809869300 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -310,7 +310,10 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
@@ -306,7 +306,10 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
const char *name = NULL;
if (file) {
@ -37278,7 +37281,7 @@ index 6744bd706ecf..6d4dea31b008 100644
dev = inode->i_sb->s_dev;
ino = inode->i_ino;
pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
@@ -1739,7 +1742,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
@@ -1736,7 +1739,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
struct proc_maps_private *proc_priv = &numa_priv->proc_maps;
struct vm_area_struct *vma = v;
struct numa_maps *md = &numa_priv->md;
@ -37304,7 +37307,7 @@ index 5b62f57bd9bc..dfb4a3bd0fac 100644
ino = inode->i_ino;
pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
diff --git a/fs/read_write.c b/fs/read_write.c
index 0046d72efe94..b2a68e5d267e 100644
index f8547b82dfb3..d423a5fa3f5f 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -454,6 +454,7 @@ ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
@ -37355,7 +37358,7 @@ index 0046d72efe94..b2a68e5d267e 100644
static inline loff_t file_pos_read(struct file *file)
{
diff --git a/fs/splice.c b/fs/splice.c
index f3084cce0ea6..7ab89d239350 100644
index 39e2dc01ac12..ce01a7429add 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -837,8 +837,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
@ -37396,7 +37399,7 @@ index f3084cce0ea6..7ab89d239350 100644
/**
* splice_direct_to_actor - splices data directly between two non-pipes
diff --git a/fs/sync.c b/fs/sync.c
index 83ac79a960dd..e3386eabba81 100644
index 6e0a2cbaf6de..47a78bdd7fdd 100644
--- a/fs/sync.c
+++ b/fs/sync.c
@@ -28,7 +28,7 @@
@ -37441,7 +37444,7 @@ index 279720db984a..76e38eade225 100644
static inline void fput_light(struct file *file, int fput_needed)
{
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 885266aae2d7..e489e42d1a6d 100644
index 511fbaabf624..96e05b3431eb 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1265,6 +1265,7 @@ extern void fasync_free(struct fasync_struct *);
@ -37452,7 +37455,7 @@ index 885266aae2d7..e489e42d1a6d 100644
extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
extern int f_setown(struct file *filp, unsigned long arg, int force);
extern void f_delown(struct file *filp);
@@ -1711,6 +1712,7 @@ struct file_operations {
@@ -1712,6 +1713,7 @@ struct file_operations {
ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int);
unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, unsigned long);
int (*check_flags)(int);
@ -37460,7 +37463,7 @@ index 885266aae2d7..e489e42d1a6d 100644
int (*flock) (struct file *, int, struct file_lock *);
ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
@@ -1781,6 +1783,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
@@ -1782,6 +1784,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
struct iovec *fast_pointer,
struct iovec **ret_pointer);
@ -37473,7 +37476,7 @@ index 885266aae2d7..e489e42d1a6d 100644
extern ssize_t __vfs_read(struct file *, char __user *, size_t, loff_t *);
extern ssize_t vfs_read(struct file *, char __user *, size_t, loff_t *);
extern ssize_t vfs_write(struct file *, const char __user *, size_t, loff_t *);
@@ -2183,6 +2191,7 @@ extern int current_umask(void);
@@ -2201,6 +2209,7 @@ extern int current_umask(void);
extern void ihold(struct inode * inode);
extern void iput(struct inode *);
extern int generic_update_time(struct inode *, struct timespec *, int);
@ -37481,7 +37484,7 @@ index 885266aae2d7..e489e42d1a6d 100644
/* /sys/fs */
extern struct kobject *fs_kobj;
@@ -2463,6 +2472,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
@@ -2481,6 +2490,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
return false;
}
#endif
@ -37490,10 +37493,10 @@ index 885266aae2d7..e489e42d1a6d 100644
extern const struct file_operations def_blk_fops;
extern const struct file_operations def_chr_fops;
diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h
index f301d31b473c..c26f5b420464 100644
index 3251d9c0d313..036095249792 100644
--- a/include/linux/lockdep.h
+++ b/include/linux/lockdep.h
@@ -406,6 +406,8 @@ static inline int lockdep_match_key(struct lockdep_map *lock,
@@ -313,6 +313,8 @@ static inline int lockdep_match_key(struct lockdep_map *lock,
return lock->key == key;
}
@ -37502,7 +37505,7 @@ index f301d31b473c..c26f5b420464 100644
/*
* Acquire a lock.
*
@@ -530,6 +532,7 @@ struct lock_class_key { };
@@ -442,6 +444,7 @@ struct lockdep_map { };
#define lockdep_depth(tsk) (0)
@ -37511,10 +37514,10 @@ index f301d31b473c..c26f5b420464 100644
#define lockdep_assert_held(l) do { (void)(l); } while (0)
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 43edf659453b..3f9acd93ae28 100644
index ea818ff739cd..fbd47990e712 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -1349,6 +1349,28 @@ static inline int fixup_user_fault(struct task_struct *tsk,
@@ -1362,6 +1362,28 @@ static inline int fixup_user_fault(struct task_struct *tsk,
}
#endif
@ -37544,10 +37547,10 @@ index 43edf659453b..3f9acd93ae28 100644
unsigned int gup_flags);
extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index c85f11dafd56..a63875a76849 100644
index cfd0ac4e5e0e..135e11c291af 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -261,6 +261,7 @@ struct vm_region {
@@ -255,6 +255,7 @@ struct vm_region {
unsigned long vm_top; /* region allocated to here */
unsigned long vm_pgoff; /* the offset in vm_file corresponding to vm_start */
struct file *vm_file; /* the backing file or NULL */
@ -37555,7 +37558,7 @@ index c85f11dafd56..a63875a76849 100644
int vm_usage; /* region usage count (access under nommu_region_sem) */
bool vm_icache_flushed : 1; /* true if the icache has been flushed for
@@ -335,6 +336,7 @@ struct vm_area_struct {
@@ -329,6 +330,7 @@ struct vm_area_struct {
unsigned long vm_pgoff; /* Offset (within vm_file) in PAGE_SIZE
units */
struct file * vm_file; /* File we map to (can be NULL). */
@ -37599,7 +37602,7 @@ index 74b4911ac16d..19789fbea567 100644
#endif
diff --git a/include/uapi/linux/aufs_type.h b/include/uapi/linux/aufs_type.h
new file mode 100644
index 000000000000..560851e9b625
index 000000000000..82c2398b2039
--- /dev/null
+++ b/include/uapi/linux/aufs_type.h
@@ -0,0 +1,447 @@
@ -37644,7 +37647,7 @@ index 000000000000..560851e9b625
+
+#include <linux/limits.h>
+
+#define AUFS_VERSION "4.14-20171120"
+#define AUFS_VERSION "4.14-20171218"
+
+/* todo? move this to linux-2.6.19/include/magic.h */
+#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
@ -38051,7 +38054,7 @@ index 000000000000..560851e9b625
+
+#endif /* __AUFS_TYPE_H__ */
diff --git a/kernel/fork.c b/kernel/fork.c
index 07cc743698d3..b1d2b4381ab7 100644
index 2295fc69717f..80e1fee1187c 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -676,7 +676,7 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
@ -38064,10 +38067,10 @@ index 07cc743698d3..b1d2b4381ab7 100644
atomic_dec(&inode->i_writecount);
i_mmap_lock_write(mapping);
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
index e36e652d996f..895a1bad8b93 100644
index 521659044719..979db632ae64 100644
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -144,7 +144,7 @@ static struct lock_list list_entries[MAX_LOCKDEP_ENTRIES];
@@ -140,7 +140,7 @@ static struct lock_list list_entries[MAX_LOCKDEP_ENTRIES];
unsigned long nr_lock_classes;
static struct lock_class lock_classes[MAX_LOCKDEP_KEYS];
@ -38076,7 +38079,7 @@ index e36e652d996f..895a1bad8b93 100644
{
if (!hlock->class_idx) {
/*
@@ -155,6 +155,8 @@ static inline struct lock_class *hlock_class(struct held_lock *hlock)
@@ -151,6 +151,8 @@ static inline struct lock_class *hlock_class(struct held_lock *hlock)
}
return lock_classes + hlock->class_idx - 1;
}
@ -38086,7 +38089,7 @@ index e36e652d996f..895a1bad8b93 100644
#ifdef CONFIG_LOCK_STAT
static DEFINE_PER_CPU(struct lock_class_stats[MAX_LOCKDEP_KEYS], cpu_lock_stats);
diff --git a/kernel/task_work.c b/kernel/task_work.c
index 5718b3ea202a..e6c64d988f86 100644
index 0fef395662a6..83fb1ecfc33d 100644
--- a/kernel/task_work.c
+++ b/kernel/task_work.c
@@ -116,3 +116,4 @@ void task_work_run(void)
@ -38095,10 +38098,10 @@ index 5718b3ea202a..e6c64d988f86 100644
}
+EXPORT_SYMBOL_GPL(task_work_run);
diff --git a/mm/Makefile b/mm/Makefile
index 4659b93cba43..844888411196 100644
index e669f02c5a54..9c36567952c7 100644
--- a/mm/Makefile
+++ b/mm/Makefile
@@ -40,7 +40,7 @@ obj-y := filemap.o mempool.o oom_kill.o \
@@ -39,7 +39,7 @@ obj-y := filemap.o mempool.o oom_kill.o \
mm_init.o mmu_context.o percpu.o slab_common.o \
compaction.o vmacache.o swap_slots.o \
interval_tree.o list_lru.o workingset.o \
@ -38108,10 +38111,10 @@ index 4659b93cba43..844888411196 100644
obj-y += init-mm.o
diff --git a/mm/filemap.c b/mm/filemap.c
index 594d73fef8b4..7183aefa1551 100644
index ee83baaf855d..7677d137f754 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -2590,7 +2590,7 @@ int filemap_page_mkwrite(struct vm_fault *vmf)
@@ -2704,7 +2704,7 @@ int filemap_page_mkwrite(struct vm_fault *vmf)
int ret = VM_FAULT_LOCKED;
sb_start_pagefault(inode->i_sb);
@ -38121,7 +38124,7 @@ index 594d73fef8b4..7183aefa1551 100644
if (page->mapping != inode->i_mapping) {
unlock_page(page);
diff --git a/mm/mmap.c b/mm/mmap.c
index 680506faceae..081406a0aeec 100644
index 9efdc021ad22..d77f01f5380b 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -171,7 +171,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
@ -38142,7 +38145,7 @@ index 680506faceae..081406a0aeec 100644
}
if (next->anon_vma)
anon_vma_merge(vma, next);
@@ -1746,8 +1746,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
@@ -1761,8 +1761,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
return addr;
unmap_and_free_vma:
@ -38152,7 +38155,7 @@ index 680506faceae..081406a0aeec 100644
/* Undo any partial mapping done by a device driver. */
unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
@@ -2569,7 +2569,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
@@ -2586,7 +2586,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
goto out_free_mpol;
if (new->vm_file)
@ -38161,7 +38164,7 @@ index 680506faceae..081406a0aeec 100644
if (new->vm_ops && new->vm_ops->open)
new->vm_ops->open(new);
@@ -2588,7 +2588,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
@@ -2605,7 +2605,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
if (new->vm_ops && new->vm_ops->close)
new->vm_ops->close(new);
if (new->vm_file)
@ -38170,7 +38173,7 @@ index 680506faceae..081406a0aeec 100644
unlink_anon_vmas(new);
out_free_mpol:
mpol_put(vma_policy(new));
@@ -2750,7 +2750,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
@@ -2767,7 +2767,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
struct vm_area_struct *vma;
unsigned long populate = 0;
unsigned long ret = -EINVAL;
@ -38179,7 +38182,7 @@ index 680506faceae..081406a0aeec 100644
pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.txt.\n",
current->comm, current->pid);
@@ -2825,10 +2825,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
@@ -2842,10 +2842,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
}
}
@ -38208,7 +38211,7 @@ index 680506faceae..081406a0aeec 100644
out:
up_write(&mm->mmap_sem);
if (populate)
@@ -3136,7 +3153,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
@@ -3153,7 +3170,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
if (anon_vma_clone(new_vma, vma))
goto out_free_mempol;
if (new_vma->vm_file)
@ -38263,11 +38266,12 @@ index 17c00d93de2e..4bcdf9448dd0 100644
diff --git a/mm/prfile.c b/mm/prfile.c
new file mode 100644
index 000000000000..1ef053bf4f49
index 000000000000..3f5666999b7c
--- /dev/null
+++ b/mm/prfile.c
@@ -0,0 +1,85 @@
@@ -0,0 +1,86 @@
+/*
+ * SPDX-License-Identifier: GPL-2.0
+ * Mainly for aufs which mmap(2) different file and wants to print different
+ * path in /proc/PID/maps.
+ * Call these functions via macros defined in linux/mm.h.
@ -38353,10 +38357,10 @@ index 000000000000..1ef053bf4f49
+}
+#endif /* !CONFIG_MMU */
diff --git a/security/commoncap.c b/security/commoncap.c
index fc46f5b85251..90543ef89e00 100644
index 48620c93d697..49811041dbd3 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
@@ -1270,12 +1270,14 @@ int cap_mmap_addr(unsigned long addr)
@@ -1330,12 +1330,14 @@ int cap_mmap_addr(unsigned long addr)
}
return ret;
}
@ -38372,7 +38376,7 @@ index fc46f5b85251..90543ef89e00 100644
#ifdef CONFIG_SECURITY
diff --git a/security/device_cgroup.c b/security/device_cgroup.c
index 5ef7e5240563..e2e959dc0685 100644
index c65b39bafdfe..bb113e4bcf4a 100644
--- a/security/device_cgroup.c
+++ b/security/device_cgroup.c
@@ -8,6 +8,7 @@
@ -38383,19 +38387,19 @@ index 5ef7e5240563..e2e959dc0685 100644
#include <linux/list.h>
#include <linux/uaccess.h>
#include <linux/seq_file.h>
@@ -850,6 +851,7 @@ int __devcgroup_inode_permission(struct inode *inode, int mask)
return __devcgroup_check_permission(type, imajor(inode), iminor(inode),
access);
@@ -763,6 +764,7 @@ static ssize_t devcgroup_access_write(struct kernfs_open_file *of,
mutex_unlock(&devcgroup_mutex);
return retval ?: nbytes;
}
+EXPORT_SYMBOL_GPL(__devcgroup_inode_permission);
int devcgroup_inode_mknod(int mode, dev_t dev)
{
static struct cftype dev_cgroup_files[] = {
{
diff --git a/security/security.c b/security/security.c
index 4bf0f571b4ef..b30d1e17498f 100644
index 1cd8526cb0b7..f2e473650a56 100644
--- a/security/security.c
+++ b/security/security.c
@@ -530,6 +530,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
@@ -531,6 +531,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
return 0;
return call_int_hook(path_rmdir, 0, dir, dentry);
}
@ -38403,7 +38407,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_path_unlink(const struct path *dir, struct dentry *dentry)
{
@@ -546,6 +547,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
@@ -547,6 +548,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
return 0;
return call_int_hook(path_symlink, 0, dir, dentry, old_name);
}
@ -38411,7 +38415,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
struct dentry *new_dentry)
@@ -554,6 +556,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
@@ -555,6 +557,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
return 0;
return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry);
}
@ -38419,7 +38423,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_path_rename(const struct path *old_dir, struct dentry *old_dentry,
const struct path *new_dir, struct dentry *new_dentry,
@@ -581,6 +584,7 @@ int security_path_truncate(const struct path *path)
@@ -582,6 +585,7 @@ int security_path_truncate(const struct path *path)
return 0;
return call_int_hook(path_truncate, 0, path);
}
@ -38427,7 +38431,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_path_chmod(const struct path *path, umode_t mode)
{
@@ -588,6 +592,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
@@ -589,6 +593,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
return 0;
return call_int_hook(path_chmod, 0, path, mode);
}
@ -38435,7 +38439,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
{
@@ -595,6 +600,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
@@ -596,6 +601,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
return 0;
return call_int_hook(path_chown, 0, path, uid, gid);
}
@ -38443,7 +38447,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_path_chroot(const struct path *path)
{
@@ -680,6 +686,7 @@ int security_inode_readlink(struct dentry *dentry)
@@ -681,6 +687,7 @@ int security_inode_readlink(struct dentry *dentry)
return 0;
return call_int_hook(inode_readlink, 0, dentry);
}
@ -38451,7 +38455,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_inode_follow_link(struct dentry *dentry, struct inode *inode,
bool rcu)
@@ -695,6 +702,7 @@ int security_inode_permission(struct inode *inode, int mask)
@@ -696,6 +703,7 @@ int security_inode_permission(struct inode *inode, int mask)
return 0;
return call_int_hook(inode_permission, 0, inode, mask);
}
@ -38459,7 +38463,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
{
@@ -866,6 +874,7 @@ int security_file_permission(struct file *file, int mask)
@@ -867,6 +875,7 @@ int security_file_permission(struct file *file, int mask)
return fsnotify_perm(file, mask);
}
@ -38467,7 +38471,7 @@ index 4bf0f571b4ef..b30d1e17498f 100644
int security_file_alloc(struct file *file)
{
@@ -925,6 +934,7 @@ int security_mmap_file(struct file *file, unsigned long prot,
@@ -926,6 +935,7 @@ int security_mmap_file(struct file *file, unsigned long prot,
return ret;
return ima_file_mmap(file, prot);
}

View file

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 4.14.x-nrj-desktop Kernel Configuration
# Linux/x86 4.15.x-nrj-desktop Kernel Configuration
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@ -99,6 +99,7 @@ CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
CONFIG_CPU_ISOLATION=y
#
# RCU Subsystem
@ -212,7 +213,7 @@ CONFIG_SLAB_MERGE_DEFAULT=y
# CONFIG_SLAB_FREELIST_RANDOM is not set
# CONFIG_SLAB_FREELIST_HARDENED is not set
CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SYSTEM_DATA_VERIFICATION is not set
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_PROFILING=y
CONFIG_TRACEPOINTS=y
CONFIG_CRASH_CORE=y
@ -339,6 +340,7 @@ CONFIG_X86_FAST_FEATURE_TESTS=y
CONFIG_X86_MPPARSE=y
CONFIG_X86_BIGSMP=y
# CONFIG_GOLDFISH is not set
CONFIG_RETPOLINE=y
# CONFIG_INTEL_RDT is not set
CONFIG_X86_EXTENDED_PLATFORM=y
# CONFIG_X86_GOLDFISH is not set
@ -501,6 +503,7 @@ CONFIG_GENERIC_EARLY_IOREMAP=y
# CONFIG_IDLE_PAGE_TRACKING is not set
CONFIG_FRAME_VECTOR=y
# CONFIG_PERCPU_STATS is not set
# CONFIG_GUP_BENCHMARK is not set
# CONFIG_X86_PMEM_LEGACY is not set
# CONFIG_HIGHPTE is not set
CONFIG_X86_CHECK_BIOS_CORRUPTION=y
@ -514,6 +517,7 @@ CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
CONFIG_X86_PAT=y
CONFIG_ARCH_RANDOM=y
CONFIG_X86_SMAP=y
CONFIG_X86_INTEL_UMIP=y
CONFIG_EFI=y
CONFIG_EFI_STUB=y
CONFIG_SECCOMP=y
@ -609,6 +613,7 @@ CONFIG_PMIC_OPREGION=y
CONFIG_CRC_PMIC_OPREGION=y
CONFIG_XPOWER_PMIC_OPREGION=y
CONFIG_BXT_WC_PMIC_OPREGION=y
# CONFIG_CHT_DC_TI_PMIC_OPREGION is not set
CONFIG_ACPI_CONFIGFS=m
CONFIG_SFI=y
CONFIG_X86_APM_BOOT=y
@ -1323,6 +1328,8 @@ CONFIG_NET_DSA=m
CONFIG_NET_DSA_TAG_DSA=y
CONFIG_NET_DSA_TAG_EDSA=y
CONFIG_NET_DSA_TAG_KSZ=y
CONFIG_NET_DSA_TAG_LAN9303=y
CONFIG_NET_DSA_TAG_MTK=y
CONFIG_NET_DSA_TAG_TRAILER=y
CONFIG_NET_DSA_TAG_QCA=y
CONFIG_VLAN_8021Q=m
@ -1381,6 +1388,7 @@ CONFIG_NET_SCH_SFB=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_NETEM=m
@ -1452,6 +1460,7 @@ CONFIG_OPENVSWITCH_GRE=m
CONFIG_OPENVSWITCH_VXLAN=m
CONFIG_OPENVSWITCH_GENEVE=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKETS_DIAG=m
CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_VIRTIO_VSOCKETS=m
CONFIG_VIRTIO_VSOCKETS_COMMON=m
@ -1632,9 +1641,10 @@ CONFIG_CFG80211=m
# CONFIG_NL80211_TESTMODE is not set
# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
CONFIG_CFG80211_DEFAULT_PS=y
# CONFIG_CFG80211_DEBUGFS is not set
# CONFIG_CFG80211_INTERNAL_REGDB is not set
CONFIG_CFG80211_CRDA_SUPPORT=y
CONFIG_CFG80211_WEXT=y
CONFIG_CFG80211_WEXT_EXPORT=y
@ -1980,8 +1990,13 @@ CONFIG_VIRTIO_BLK=m
CONFIG_VIRTIO_BLK_SCSI=y
CONFIG_BLK_DEV_RBD=m
CONFIG_BLK_DEV_RSXX=m
CONFIG_NVME_CORE=m
CONFIG_BLK_DEV_NVME=m
#
# NVME Support
#
CONFIG_NVME_CORE=y
CONFIG_BLK_DEV_NVME=y
CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_FABRICS=m
CONFIG_NVME_FC=m
CONFIG_NVME_TARGET_FC=m
@ -2012,7 +2027,6 @@ CONFIG_SENSORS_BH1770=m
CONFIG_SENSORS_APDS990X=m
CONFIG_HMC6352=m
CONFIG_DS1682=m
CONFIG_TI_DAC7512=m
CONFIG_VMWARE_BALLOON=m
CONFIG_PCH_PHUB=m
CONFIG_USB_SWITCH_FSA9480=m
@ -2051,6 +2065,10 @@ CONFIG_INTEL_MEI_ME=m
CONFIG_INTEL_MEI_TXE=m
CONFIG_VMWARE_VMCI=m
#
# Intel MIC & related support
#
#
# Intel MIC Bus Driver
#
@ -2535,9 +2553,6 @@ CONFIG_NET_CADENCE=y
# CONFIG_MACB is not set
CONFIG_NET_VENDOR_BROADCOM=y
CONFIG_B44=m
CONFIG_B44_PCI_AUTOSELECT=y
CONFIG_B44_PCICORE_AUTOSELECT=y
CONFIG_B44_PCI=y
CONFIG_BNX2=m
CONFIG_CNIC=m
CONFIG_TIGON3=m
@ -2630,6 +2645,7 @@ CONFIG_MLX4_EN=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_CORE=m
# CONFIG_MLX4_DEBUG is not set
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX5_CORE=m
CONFIG_MLX5_ACCEL=y
CONFIG_MLX5_FPGA=y
@ -2698,6 +2714,7 @@ CONFIG_QED_SRIOV=y
CONFIG_QEDE=m
CONFIG_QED_ISCSI=y
CONFIG_QED_FCOE=y
CONFIG_QED_OOO=y
CONFIG_NET_VENDOR_QUALCOMM=y
CONFIG_QCOM_EMAC=m
CONFIG_RMNET=m
@ -2791,6 +2808,7 @@ CONFIG_BROADCOM_PHY=m
CONFIG_CICADA_PHY=m
CONFIG_CORTINA_PHY=m
CONFIG_DAVICOM_PHY=m
CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
CONFIG_DP83867_PHY=m
CONFIG_FIXED_PHY=y
@ -2806,6 +2824,7 @@ CONFIG_MICROSEMI_PHY=m
CONFIG_NATIONAL_PHY=m
CONFIG_QSEMI_PHY=m
CONFIG_REALTEK_PHY=m
CONFIG_RENESAS_PHY=m
CONFIG_ROCKCHIP_PHY=m
CONFIG_SMSC_PHY=m
CONFIG_STE10XP=m
@ -2936,8 +2955,6 @@ CONFIG_B43_SSB=y
CONFIG_B43_BUSES_BCMA_AND_SSB=y
# CONFIG_B43_BUSES_BCMA is not set
# CONFIG_B43_BUSES_SSB is not set
CONFIG_B43_PCI_AUTOSELECT=y
CONFIG_B43_PCICORE_AUTOSELECT=y
CONFIG_B43_SDIO=y
CONFIG_B43_BCMA_PIO=y
CONFIG_B43_PIO=y
@ -2949,8 +2966,6 @@ CONFIG_B43_LEDS=y
CONFIG_B43_HWRNG=y
# CONFIG_B43_DEBUG is not set
CONFIG_B43LEGACY=m
CONFIG_B43LEGACY_PCI_AUTOSELECT=y
CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
CONFIG_B43LEGACY_LEDS=y
CONFIG_B43LEGACY_HWRNG=y
# CONFIG_B43LEGACY_DEBUG is not set
@ -3146,6 +3161,7 @@ CONFIG_IEEE802154_CA8210=m
# CONFIG_IEEE802154_CA8210_DEBUGFS is not set
CONFIG_VMXNET3=m
CONFIG_FUJITSU_ES=m
CONFIG_THUNDERBOLT_NET=m
CONFIG_HYPERV_NET=m
CONFIG_ISDN=y
CONFIG_ISDN_I4L=m
@ -3425,9 +3441,12 @@ CONFIG_TOUCHSCREEN_DYNAPRO=m
CONFIG_TOUCHSCREEN_HAMPSHIRE=m
CONFIG_TOUCHSCREEN_EETI=m
CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
CONFIG_TOUCHSCREEN_EXC3000=m
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_HIDEEP=m
CONFIG_TOUCHSCREEN_ILI210X=m
CONFIG_TOUCHSCREEN_S6SY761=m
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_TOUCHSCREEN_EKTF2127=m
CONFIG_TOUCHSCREEN_ELAN=m
@ -3525,7 +3544,6 @@ CONFIG_INPUT_POWERMATE=m
CONFIG_INPUT_YEALINK=m
CONFIG_INPUT_CM109=m
CONFIG_INPUT_RETU_PWRBUTTON=m
# CONFIG_INPUT_TPS65218_PWRBUTTON is not set
# CONFIG_INPUT_AXP20X_PEK is not set
CONFIG_INPUT_TWL4030_PWRBUTTON=m
CONFIG_INPUT_TWL4030_VIBRA=m
@ -3690,6 +3708,7 @@ CONFIG_HVC_DRIVER=y
CONFIG_VIRTIO_CONSOLE=m
CONFIG_IPMI_HANDLER=m
CONFIG_IPMI_DMI_DECODE=y
CONFIG_IPMI_PROC_INTERFACE=y
CONFIG_IPMI_PANIC_EVENT=y
CONFIG_IPMI_PANIC_STRING=y
CONFIG_IPMI_DEVICE_INTERFACE=m
@ -3938,6 +3957,7 @@ CONFIG_PINCTRL_CHERRYVIEW=m
CONFIG_PINCTRL_INTEL=m
CONFIG_PINCTRL_BROXTON=m
CONFIG_PINCTRL_CANNONLAKE=m
CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_DENVERTON=m
CONFIG_PINCTRL_GEMINILAKE=m
CONFIG_PINCTRL_LEWISBURG=m
@ -3959,6 +3979,7 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GENERIC_PLATFORM is not set
CONFIG_GPIO_ICH=m
CONFIG_GPIO_LYNXPOINT=y
CONFIG_GPIO_MB86S7X=m
# CONFIG_GPIO_MOCKUP is not set
# CONFIG_GPIO_VX855 is not set
@ -3979,7 +4000,6 @@ CONFIG_GPIO_WS16C48=m
# CONFIG_GPIO_MAX732X is not set
# CONFIG_GPIO_PCA953X is not set
# CONFIG_GPIO_PCF857X is not set
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_TPIC2810 is not set
#
@ -3999,7 +4019,6 @@ CONFIG_GPIO_LP3943=m
CONFIG_GPIO_PALMAS=y
CONFIG_GPIO_RC5T583=y
CONFIG_GPIO_TPS65086=m
CONFIG_GPIO_TPS65218=m
CONFIG_GPIO_TPS6586X=y
CONFIG_GPIO_TPS65910=y
CONFIG_GPIO_TPS65912=m
@ -4023,6 +4042,7 @@ CONFIG_GPIO_RDC321X=m
#
# SPI GPIO expanders
#
CONFIG_GPIO_MAX3191X=m
CONFIG_GPIO_MAX7301=m
CONFIG_GPIO_MC33880=m
CONFIG_GPIO_PISOSR=m
@ -4064,6 +4084,7 @@ CONFIG_W1_SLAVE_DS2438=m
CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS28E04=m
CONFIG_W1_SLAVE_DS28E17=m
CONFIG_POWER_AVS=y
CONFIG_POWER_RESET=y
# CONFIG_POWER_RESET_RESTART is not set
@ -4082,6 +4103,7 @@ CONFIG_BATTERY_DS2781=m
CONFIG_BATTERY_DS2782=m
CONFIG_BATTERY_SBS=m
CONFIG_CHARGER_SBS=m
CONFIG_MANAGER_SBS=m
CONFIG_BATTERY_BQ27XXX=m
CONFIG_BATTERY_BQ27XXX_I2C=m
CONFIG_BATTERY_BQ27XXX_HDQ=m
@ -4116,7 +4138,6 @@ CONFIG_CHARGER_BQ24735=m
CONFIG_CHARGER_BQ25890=m
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
CONFIG_CHARGER_TPS65217=m
CONFIG_BATTERY_GAUGE_LTC2941=m
CONFIG_CHARGER_RT9455=m
CONFIG_HWMON=y
@ -4168,7 +4189,6 @@ CONFIG_SENSORS_GL518SM=m
CONFIG_SENSORS_GL520SM=m
# CONFIG_SENSORS_G760A is not set
CONFIG_SENSORS_G762=m
CONFIG_SENSORS_GPIO_FAN=m
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_IBMAEM=m
CONFIG_SENSORS_IBMPEX=m
@ -4193,6 +4213,7 @@ CONFIG_SENSORS_MAX1619=m
CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX31722=m
CONFIG_SENSORS_MAX6621=m
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@ -4236,6 +4257,7 @@ CONFIG_SENSORS_LTC2978=m
CONFIG_SENSORS_LTC3815=m
CONFIG_SENSORS_MAX16064=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31785=m
CONFIG_SENSORS_MAX34440=m
CONFIG_SENSORS_MAX8688=m
CONFIG_SENSORS_TPS40422=m
@ -4490,6 +4512,7 @@ CONFIG_LPC_SCH=m
CONFIG_INTEL_SOC_PMIC=y
CONFIG_INTEL_SOC_PMIC_BXTWC=m
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
CONFIG_MFD_INTEL_LPSS=m
CONFIG_MFD_INTEL_LPSS_ACPI=m
CONFIG_MFD_INTEL_LPSS_PCI=m
@ -4536,10 +4559,8 @@ CONFIG_MFD_PALMAS=y
# CONFIG_TPS6507X is not set
CONFIG_MFD_TPS65086=m
CONFIG_MFD_TPS65090=y
CONFIG_MFD_TPS65217=m
# CONFIG_MFD_TPS68470 is not set
# CONFIG_MFD_TI_LP873X is not set
CONFIG_MFD_TPS65218=m
CONFIG_MFD_TPS6586X=y
CONFIG_MFD_TPS65910=y
CONFIG_MFD_TPS65912=y
@ -4588,23 +4609,18 @@ CONFIG_IR_XMP_DECODER=m
CONFIG_RC_DEVICES=y
CONFIG_RC_ATI_REMOTE=m
CONFIG_IR_ENE=m
CONFIG_IR_HIX5HD2=m
CONFIG_IR_IMON=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_FINTEK=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_REDRAT3=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_IGORPLUGUSB=m
CONFIG_IR_IGUANA=m
CONFIG_IR_TTUSBIR=m
CONFIG_RC_LOOPBACK=m
CONFIG_IR_GPIO_CIR=m
CONFIG_IR_GPIO_TX=m
CONFIG_IR_PWM_TX=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SIR=m
@ -5336,9 +5352,26 @@ CONFIG_DRM_AMDGPU_USERPTR=y
# ACP (Audio CoProcessor) Configuration
#
CONFIG_DRM_AMD_ACP=y
#
# Display Engine Configuration
#
CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMD_DC_PRE_VEGA=y
# CONFIG_DRM_AMD_DC_FBC is not set
CONFIG_DRM_AMD_DC_DCN1_0=y
# CONFIG_DEBUG_KERNEL_DC is not set
#
# AMD Library routines
#
CONFIG_CHASH=m
# CONFIG_CHASH_STATS is not set
# CONFIG_CHASH_SELFTEST is not set
CONFIG_DRM_NOUVEAU=m
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_I915=m
# CONFIG_DRM_I915_ALPHA_SUPPORT is not set
@ -5374,6 +5407,7 @@ CONFIG_DRM_PANEL=y
#
# Display Panels
#
CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_BRIDGE=y
CONFIG_DRM_PANEL_BRIDGE=y
@ -5547,7 +5581,6 @@ CONFIG_BACKLIGHT_LP855X=m
CONFIG_BACKLIGHT_LP8788=m
# CONFIG_BACKLIGHT_OT200 is not set
CONFIG_BACKLIGHT_PANDORA=m
CONFIG_BACKLIGHT_TPS65217=m
CONFIG_BACKLIGHT_AS3711=m
CONFIG_BACKLIGHT_GPIO=m
CONFIG_BACKLIGHT_LV5207LP=m
@ -5805,7 +5838,9 @@ CONFIG_SND_SOC_AC97_BUS=y
CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
CONFIG_SND_SOC_COMPRESS=y
CONFIG_SND_SOC_TOPOLOGY=y
CONFIG_SND_SOC_ACPI=m
CONFIG_SND_SOC_AMD_ACP=m
CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
CONFIG_SND_ATMEL_SOC=m
CONFIG_SND_DESIGNWARE_I2S=m
# CONFIG_SND_DESIGNWARE_PCM is not set
@ -5831,17 +5866,20 @@ CONFIG_SND_SOC_IMG_PARALLEL_OUT=m
CONFIG_SND_SOC_IMG_SPDIF_IN=m
CONFIG_SND_SOC_IMG_SPDIF_OUT=m
CONFIG_SND_SOC_IMG_PISTACHIO_INTERNAL_DAC=m
CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
CONFIG_SND_SST_IPC=m
CONFIG_SND_SST_IPC_ACPI=m
CONFIG_SND_SOC_INTEL_COMMON=m
CONFIG_SND_SOC_INTEL_SST=m
CONFIG_SND_SOC_INTEL_SST_FIRMWARE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST_MATCH=m
CONFIG_SND_SOC_ACPI_INTEL_MATCH=m
CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_BAYTRAIL=m
CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_MACH=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m
CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m
CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
CONFIG_SND_SOC_INTEL_BYTCR_RT5640_MACH=m
@ -5852,12 +5890,13 @@ CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m
CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m
CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
#
# STMicroelectronics STM32 SOC audio support
@ -5940,6 +5979,7 @@ CONFIG_SND_SOC_RT286=m
CONFIG_SND_SOC_RT298=m
CONFIG_SND_SOC_RT5514=m
CONFIG_SND_SOC_RT5514_SPI=m
# CONFIG_SND_SOC_RT5514_SPI_BUILTIN is not set
CONFIG_SND_SOC_RT5616=m
CONFIG_SND_SOC_RT5631=m
CONFIG_SND_SOC_RT5640=m
@ -6496,9 +6536,12 @@ CONFIG_USB_G_WEBCAM=m
# USB Power Delivery and Type-C drivers
#
CONFIG_TYPEC=m
CONFIG_TYPEC_TCPM=m
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPEC_UCSI=m
CONFIG_UCSI_ACPI=m
CONFIG_TYPEC_TPS6598X=m
CONFIG_USB_LED_TRIG=y
CONFIG_USB_ULPI_BUS=m
CONFIG_UWB=m
@ -6561,6 +6604,7 @@ CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y
# LED drivers
#
CONFIG_LEDS_88PM860X=m
CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
CONFIG_LEDS_LM3530=m
CONFIG_LEDS_LM3642=m
@ -6619,6 +6663,7 @@ CONFIG_LEDS_TRIGGER_ONESHOT=m
CONFIG_LEDS_TRIGGER_HEARTBEAT=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CPU=y
CONFIG_LEDS_TRIGGER_ACTIVITY=m
# CONFIG_LEDS_TRIGGER_GPIO is not set
CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
@ -6698,6 +6743,7 @@ CONFIG_RTC_DRV_ISL12022=m
CONFIG_RTC_DRV_X1205=m
CONFIG_RTC_DRV_PCF8523=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF85363=m
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_M41T80=m
@ -6873,6 +6919,7 @@ CONFIG_VIRTIO_MMIO=m
# Microsoft Hyper-V guest support
#
CONFIG_HYPERV=m
# CONFIG_HYPERV_TSCPAGE is not set
CONFIG_HYPERV_UTILS=m
CONFIG_HYPERV_BALLOON=m
CONFIG_STAGING=y
@ -7195,17 +7242,15 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m
CONFIG_STAGING_MEDIA=y
CONFIG_INTEL_ATOMISP=y
CONFIG_VIDEO_ATOMISP=m
CONFIG_VIDEO_OV5693=m
CONFIG_VIDEO_IMX=m
CONFIG_VIDEO_OV2722=m
CONFIG_VIDEO_GC2235=m
CONFIG_VIDEO_OV8858=m
CONFIG_VIDEO_MSRLIST_HELPER=m
CONFIG_VIDEO_MT9M114=m
CONFIG_VIDEO_AP1302=m
CONFIG_VIDEO_GC0310=m
CONFIG_VIDEO_OV2680=m
CONFIG_VIDEO_LM3554=m
CONFIG_VIDEO_ATOMISP_OV5693=m
CONFIG_VIDEO_ATOMISP_OV2722=m
CONFIG_VIDEO_ATOMISP_GC2235=m
CONFIG_VIDEO_ATOMISP_OV8858=m
CONFIG_VIDEO_ATOMISP_MSRLIST_HELPER=m
CONFIG_VIDEO_ATOMISP_MT9M114=m
CONFIG_VIDEO_ATOMISP_GC0310=m
CONFIG_VIDEO_ATOMISP_OV2680=m
CONFIG_VIDEO_ATOMISP_LM3554=m
CONFIG_I2C_BCM2048=m
CONFIG_DVB_CXD2099=m
CONFIG_LIRC_STAGING=y
@ -7247,9 +7292,7 @@ CONFIG_HDM_USB=m
#
# USB Power Delivery and Type-C drivers
#
CONFIG_TYPEC_TCPM=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_FUSB302=m
CONFIG_DRM_VBOXVIDEO=m
CONFIG_PI433=m
CONFIG_X86_PLATFORM_DEVICES=y
@ -7258,8 +7301,11 @@ CONFIG_ACERHDF=m
CONFIG_ALIENWARE_WMI=m
CONFIG_ASUS_LAPTOP=m
CONFIG_DELL_SMBIOS=m
CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMBIOS_SMM=m
CONFIG_DELL_LAPTOP=m
CONFIG_DELL_WMI=m
CONFIG_DELL_WMI_DESCRIPTOR=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
CONFIG_DELL_SMO8800=m
@ -7294,6 +7340,7 @@ CONFIG_EEEPC_WMI=m
CONFIG_ASUS_WIRELESS=m
CONFIG_ACPI_WMI=m
CONFIG_WMI_BMOF=m
CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_MSI_WMI=m
CONFIG_PEAQ_WMI=m
CONFIG_TOPSTAR_LAPTOP=m
@ -7302,7 +7349,6 @@ CONFIG_TOSHIBA_BT_RFKILL=m
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA_WMI=m
CONFIG_ACPI_CMPC=m
CONFIG_INTEL_CHT_INT33FE=m
CONFIG_INTEL_INT0002_VGPIO=m
CONFIG_INTEL_HID_EVENT=m
CONFIG_INTEL_VBTN=m
@ -7350,7 +7396,7 @@ CONFIG_COMMON_CLK_PALMAS=m
CONFIG_COMMON_CLK_PWM=m
# CONFIG_COMMON_CLK_PXA is not set
# CONFIG_COMMON_CLK_PIC32 is not set
CONFIG_HWSPINLOCK=m
# CONFIG_HWSPINLOCK is not set
#
# Clock Source drivers
@ -7392,6 +7438,7 @@ CONFIG_RPMSG=m
CONFIG_RPMSG_CHAR=m
CONFIG_RPMSG_QCOM_GLINK_NATIVE=m
CONFIG_RPMSG_QCOM_GLINK_RPM=m
CONFIG_RPMSG_VIRTIO=m
#
# SOC (System On Chip) specific Drivers
@ -7478,6 +7525,7 @@ CONFIG_DA311=m
# CONFIG_DMARD09 is not set
CONFIG_DMARD10=m
CONFIG_HID_SENSOR_ACCEL_3D=m
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_ST_ACCEL_3AXIS=m
CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m
CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m
@ -7605,10 +7653,12 @@ CONFIG_AD5791=m
CONFIG_AD7303=m
# CONFIG_CIO_DAC is not set
CONFIG_AD8801=m
CONFIG_DS4424=m
CONFIG_M62332=m
CONFIG_MAX517=m
CONFIG_MCP4725=m
CONFIG_MCP4922=m
CONFIG_TI_DAC082S085=m
#
# IIO dummy driver
@ -7808,6 +7858,7 @@ CONFIG_IIO_CROS_EC_BARO=m
# Proximity and distance sensors
#
# CONFIG_LIDAR_LITE_V2 is not set
# CONFIG_RFD77402 is not set
CONFIG_SRF04=m
# CONFIG_SX9500 is not set
CONFIG_SRF08=m
@ -7824,6 +7875,7 @@ CONFIG_TSYS01=m
CONFIG_TSYS02D=m
CONFIG_NTB=m
CONFIG_NTB_IDT=m
CONFIG_NTB_SWITCHTEC=m
CONFIG_NTB_PINGPONG=m
CONFIG_NTB_TOOL=m
CONFIG_NTB_PERF=m
@ -7846,7 +7898,6 @@ CONFIG_VMIVME_7805=m
# VME Device Drivers
#
CONFIG_VME_USER=m
CONFIG_VME_PIO2=m
CONFIG_PWM=y
CONFIG_PWM_SYSFS=y
CONFIG_PWM_CRC=y
@ -7858,20 +7909,25 @@ CONFIG_PWM_LPSS_PLATFORM=m
CONFIG_PWM_PCA9685=m
CONFIG_PWM_TWL=m
CONFIG_PWM_TWL_LED=m
#
# IRQ chip support
#
CONFIG_ARM_GIC_MAX_NR=1
# CONFIG_ARM_GIC_V3_ITS is not set
CONFIG_IPACK_BUS=m
# CONFIG_BOARD_TPCI200 is not set
# CONFIG_SERIAL_IPOCTAL is not set
CONFIG_RESET_CONTROLLER=y
# CONFIG_RESET_ATH79 is not set
# CONFIG_RESET_AXS10X is not set
# CONFIG_RESET_BERLIN is not set
# CONFIG_RESET_IMX7 is not set
# CONFIG_RESET_LANTIQ is not set
# CONFIG_RESET_LPC18XX is not set
# CONFIG_RESET_MESON is not set
# CONFIG_RESET_PISTACHIO is not set
# CONFIG_RESET_SOCFPGA is not set
# CONFIG_RESET_STM32 is not set
# CONFIG_RESET_SIMPLE is not set
# CONFIG_RESET_SUNXI is not set
# CONFIG_RESET_TI_SYSCON is not set
# CONFIG_RESET_ZYNQ is not set
@ -8019,6 +8075,7 @@ CONFIG_XFS_FS=m
CONFIG_XFS_QUOTA=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_RT=y
# CONFIG_XFS_ONLINE_SCRUB is not set
# CONFIG_XFS_WARN is not set
# CONFIG_XFS_DEBUG is not set
CONFIG_GFS2_FS=m
@ -8035,6 +8092,7 @@ CONFIG_BTRFS_FS_POSIX_ACL=y
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BTRFS_DEBUG is not set
# CONFIG_BTRFS_ASSERT is not set
# CONFIG_BTRFS_FS_REF_VERIFY is not set
CONFIG_NILFS2_FS=m
CONFIG_F2FS_FS=m
CONFIG_F2FS_STAT_FS=y
@ -8070,6 +8128,7 @@ CONFIG_FUSE_FS=y
CONFIG_CUSE=m
CONFIG_OVERLAY_FS=m
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_INDEX is not set
#
@ -8163,6 +8222,7 @@ CONFIG_UBIFS_FS_ZLIB=y
CONFIG_UBIFS_FS_ENCRYPTION=y
CONFIG_UBIFS_FS_SECURITY=y
CONFIG_CRAMFS=y
CONFIG_CRAMFS_BLOCKDEV=y
CONFIG_SQUASHFS=y
# CONFIG_SQUASHFS_FILE_CACHE is not set
CONFIG_SQUASHFS_FILE_DIRECT=y
@ -8494,6 +8554,7 @@ CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
CONFIG_FUNCTION_TRACER=y
CONFIG_FUNCTION_GRAPH_TRACER=y
# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_IRQSOFF_TRACER is not set
# CONFIG_PREEMPT_TRACER is not set
CONFIG_SCHED_TRACER=y
@ -8552,6 +8613,7 @@ CONFIG_TEST_PRINTF=m
# CONFIG_TEST_LKM is not set
# CONFIG_TEST_USER_COPY is not set
# CONFIG_TEST_BPF is not set
# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_SYSCTL is not set
# CONFIG_TEST_UDELAY is not set
@ -8757,6 +8819,7 @@ CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_WP512=m
@ -8837,11 +8900,16 @@ CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_X509_CERTIFICATE_PARSER=y
CONFIG_PKCS7_MESSAGE_PARSER=y
# CONFIG_PKCS7_TEST_KEY is not set
# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
#
# Certificates for signature checking
#
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_SYSTEM_TRUSTED_KEYS=""
# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
%define kernelversion 4
%define patchlevel 14
%define patchlevel 15
# sublevel is now used for -stable patches
%define sublevel 17
%define sublevel 2
# Release number. Increase this before a rebuild.
%define rpmrel 1
@ -247,6 +247,9 @@ BuildRequires: pkgconfig(ncurses)
BuildRequires: kmod-devel kmod-compat
BuildRequires: bison
BuildRequires: flex
%ifarch x86_64
BuildRequires: numa-devel
%endif
@ -261,9 +264,7 @@ BuildRequires: pciutils-devel
BuildRequires: asciidoc
BuildRequires: audit-devel
BuildRequires: binutils-devel
BuildRequires: bison
BuildRequires: elfutils-devel
BuildRequires: flex
BuildRequires: libunwind-devel
BuildRequires: newt-devel
BuildRequires: perl-devel
@ -303,6 +304,7 @@ Provides: kernel-desktop \
%endif \
Requires(pre): %requires1 %requires2 %requires3 %requires4 \
Requires: %requires2 %requires5 \
Requires: wireless-regdb \
Provides: should-restart = system \
Suggests: crda \
%if %build_devel \

View file

@ -1,10 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJaCKNrAAoJEHm+PkMAQRiGk3wH/25Xuf371XGP7JO4Hda1hfhs
JccgBtDO2HjvoaJxhafu3SOVAwf4x0UiThPdyZgGQnCWc0zxFv7o1TkR6HcXB79w
RMGwHTgHm2cJHADXFOqF3oEL1r16zicsYyHbiZL3W3lLmdgRUL+C5kMS2j3g/RYY
8awQr9EXjdB3Q3fASLiigSANhrk6y6XEY1UYsBT2wVGyg25WmJEbnmhaYZmkjb4u
GZe6sbYdPTVrGgazj15nDZTpaoy6/1Gg2RbIT8fWjL2SfQEE51ZHRC2357d1WqY4
06cBlRX1FL8f1zHC2hV58Nn6biRHvwB1+pYV6sjWjF4T+MLPh9k5/+I58FgZdNc=
=xA/q
-----END PGP SIGNATURE-----

10
linux-4.15.tar.sign Normal file
View file

@ -0,0 +1,10 @@
-----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJabj8CAAoJEHm+PkMAQRiGx1EH/iTIZo0E/0Zdfb/JlrJ5zyDm
UnBAU30zo3pVHGtugmoPuCHhI0xsAVt/8bP7m2OgCyzp1AbBpWuulmJO7K1/sH2l
Syjvt+bFvhAsv57TNd42NNXFJh8Wu38BB92i2JnORTyLfTLknzjzpil6f5PSC9r2
mpCYv5ckbQFMc7Lvp8aFDn1QjxL3eAk23ClhYdg8BcEhNXZO7aNOkzrirTNvs5Cs
DxHc3AvnHbdwtg+AtPiDLyVlinBij9Sr/PcGiKQBSF/IvkzdrY8e8AJdxHcAORFc
8GKoiIw5nw+F+rB0n6TujcJg09Dt1VTFEsV4hgXyYSdyYUUhiwbmDwfwdqy3S7c=
=UC6R
-----END PGP SIGNATURE-----

View file

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIyBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAlp15eAACgkQONu9yGCS
aT4YUQ/3TjR0FoPtWpNJo3zVLaFK8JAnfAzjjn0M/yCfVLhWXGIiiLjdDiBwvIRE
nUGGG1ZxyRmnXJderoIEL7vdBhWz/3qopbhPpx/jYmI7pqImunxKfjsslozYtiud
Ph/SInC6ekKGjPeF/fhpPXJOmKeqnxb+VKjFvtrOX9frtDWAffDLZdcROI6/JRPN
FAcYljI2cK1u8KqwhevuyyGklVk0YgLiOfddLBJCHTYzq2YTyca6Kmlt/kz2e9nG
r4zgdT46+ixqzlZ35kgm2dPrIs5/f28zfJ3v/T3D25LO38NlPhPJo3kvCCGTD6Wa
TuxJgVXX/XC8+tdJpSU7gk21RI9YoTMYK2apMOnM6vnUfRn/vcAsi9I1KPafW6DK
S0A3mcxRYBrNGlk4vbtpI9r9u9cURDRGEmWMXzuxbJ1FSPFIKW5MrSmViuBGVK0G
Rt1+2LNx8zfolVPWhgJveM1AfoseSTmUUiNQuVWaiG/6yfAcodjB03Tu1SeccoGJ
Pl48SZKPVqoDllJ3zNaSiONxNWTj4FcUsXVStvJKjarZwT2NakHbKSG4TKmJptEi
OAPwgPbu5rQ/fOOQdAgs0HVzXr556G1UMhFfP2CN5itlBC3yfjVIKreguYhwu/HZ
r0DbZLlRiRjWvDN3wcGfK+qQIztl0sLevQFtQrGj8WtiAWE1+w==
=sjbP
-----END PGP SIGNATURE-----

16
patch-4.15.2.sign Normal file
View file

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAlp7UCkACgkQONu9yGCS
aT6c0hAAzMXK2qJoL/8yxtqMMmR0k85qlgS8JsMQCRyQ7KQFiqcPDwCdu0QNc7/V
uw87hzE5QW4w6yhiV7eZY7JZwiQMIa8Rmlpizy4Dg72rSAMZrho8agimq0C2uVTc
r9x/PoS8sWk2kuj9wAF8+ujtltn0L6bKTPr6fw3uo36AfyAEGjpuccGvCWV6gEVg
xMLjYUT5njzo5Eq4FvXIkL71OQmTrXddj3OvrXtdpfXqMewIy6B7F5DAIhc89JSx
idwyXK03CdT5ON1IH7yDCcJd0IK6jRhWm2NO4QS8gUJL/518s08Rikz3ATTmLLX1
xOY+3i0MPHZR5mqBcu6N7It+J7ifslbPPvFsGHTjHXb5bvTnWZCvW3xNgYPw/Qal
tMINX8mhIzJQBLnyeKC9okuU6aTKRF4zkO9RAQpC5NdWsHZRNClIs1YsRw5ipnld
49DO0udflmLk0qd9gEeLCq18Q7pq7EfQlF1lWFoW4VKzuCvpyG2w53kCp4Wgvg5I
GAbEZiDDWkZMeTJ02HHh5fcGfddpoc8VeYYQEt9QJskNo4k0be1Q9yEXMqADgDZs
bNca3oaiBMpya0jsPMNBRsT0SJ2uQ1DVL9jeGxN1Y0wJtRkCCX11ZwAubi+PkZVl
ncra/XCqzAvOIORUZ89Ex/BbsIhGzQ9YHiwYNWxcl0ayvSqkyBA=
=zzsA
-----END PGP SIGNATURE-----

View file

@ -1,8 +1,8 @@
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index f8ce2089146c..f2bc10404fb5 100644
index 1e762c210f1b..9b434ad7dadd 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -2878,6 +2878,10 @@
@@ -2924,6 +2924,10 @@
the specified number of seconds. This is to be used if
your oopses keep scrolling off the screen.
@ -14,10 +14,10 @@ index f8ce2089146c..f2bc10404fb5 100644
pcd. [PARIDE]
diff --git a/fs/buffer.c b/fs/buffer.c
index 5715dac7821f..2bf48d430e4b 100644
index 0736a6a2e2f0..2f25f9d07fb5 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -3620,7 +3620,7 @@ void __init buffer_init(void)
@@ -3578,7 +3578,7 @@ void __init buffer_init(void)
bh_cachep = kmem_cache_create("buffer_head",
sizeof(struct buffer_head), 0,
(SLAB_RECLAIM_ACCOUNT|SLAB_PANIC|
@ -27,10 +27,10 @@ index 5715dac7821f..2bf48d430e4b 100644
/*
diff --git a/fs/dcache.c b/fs/dcache.c
index 3203470c59c2..a6facbd5ab80 100644
index 10c1a6d60d6e..c323d1426b6b 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -3644,7 +3644,8 @@ void __init vfs_caches_init_early(void)
@@ -3642,7 +3642,8 @@ void __init vfs_caches_init_early(void)
void __init vfs_caches_init(void)
{
names_cachep = kmem_cache_create("names_cache", PATH_MAX, 0,
@ -41,30 +41,31 @@ index 3203470c59c2..a6facbd5ab80 100644
dcache_init();
inode_init();
diff --git a/include/linux/slab.h b/include/linux/slab.h
index 41473df6dfb0..cd59ae945f19 100644
index 50697a1d6621..d5473371939e 100644
--- a/include/linux/slab.h
+++ b/include/linux/slab.h
@@ -23,6 +23,13 @@
#define SLAB_CONSISTENCY_CHECKS 0x00000100UL /* DEBUG: Perform (expensive) checks on alloc/free */
#define SLAB_RED_ZONE 0x00000400UL /* DEBUG: Red zone objs in a cache */
#define SLAB_POISON 0x00000800UL /* DEBUG: Poison objects */
@@ -27,6 +27,14 @@
#define SLAB_RED_ZONE ((slab_flags_t __force)0x00000400U)
/* DEBUG: Poison objects */
#define SLAB_POISON ((slab_flags_t __force)0x00000800U)
+
+#ifdef CONFIG_PAX_MEMORY_SANITIZE
+#define SLAB_NO_SANITIZE 0x00001000UL /* PaX: Do not sanitize objs on free */
+/* PaX: Do not sanitize objs on free */
+#define SLAB_NO_SANITIZE ((slab_flags_t __force)0x00001000U)
+#else
+#define SLAB_NO_SANITIZE 0x00000000UL
+#define SLAB_NO_SANITIZE ((slab_flags_t __force)0x00000000U)
+#endif
+
#define SLAB_HWCACHE_ALIGN 0x00002000UL /* Align objs on cache lines */
#define SLAB_CACHE_DMA 0x00004000UL /* Use GFP_DMA memory */
#define SLAB_STORE_USER 0x00010000UL /* DEBUG: Store the last owner for bug hunting */
/* Align objs on cache lines */
#define SLAB_HWCACHE_ALIGN ((slab_flags_t __force)0x00002000U)
/* Use GFP_DMA memory */
diff --git a/kernel/fork.c b/kernel/fork.c
index 9ee3c7cc9850..be8222fd2ed9 100644
index 80e1fee1187c..b398613cf6d2 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -2228,7 +2228,7 @@ void __init proc_caches_init(void)
sizeof(struct mm_struct), ARCH_MIN_MMSTRUCT_ALIGN,
SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_NOTRACK|SLAB_ACCOUNT,
SLAB_HWCACHE_ALIGN|SLAB_PANIC|SLAB_ACCOUNT,
NULL);
- vm_area_cachep = KMEM_CACHE(vm_area_struct, SLAB_PANIC|SLAB_ACCOUNT);
+ vm_area_cachep = KMEM_CACHE(vm_area_struct, SLAB_PANIC|SLAB_ACCOUNT|SLAB_NO_SANITIZE);
@ -72,10 +73,10 @@ index 9ee3c7cc9850..be8222fd2ed9 100644
nsproxy_cache_init();
}
diff --git a/mm/rmap.c b/mm/rmap.c
index c570f82e6827..513beb423b95 100644
index 47db27f8049e..328a8f009438 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -430,10 +430,10 @@ static void anon_vma_ctor(void *data)
@@ -431,10 +431,10 @@ static void anon_vma_ctor(void *data)
void __init anon_vma_init(void)
{
anon_vma_cachep = kmem_cache_create("anon_vma", sizeof(struct anon_vma),
@ -89,10 +90,10 @@ index c570f82e6827..513beb423b95 100644
/*
diff --git a/mm/slab.c b/mm/slab.c
index 04dec48c3ed7..7d8855264cee 100644
index 4e51ef954026..f75bb31f8a1b 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -3512,6 +3512,17 @@ void ___cache_free(struct kmem_cache *cachep, void *objp,
@@ -3497,6 +3497,17 @@ void ___cache_free(struct kmem_cache *cachep, void *objp,
struct array_cache *ac = cpu_cache_get(cachep);
check_irq_off();
@ -111,10 +112,10 @@ index 04dec48c3ed7..7d8855264cee 100644
objp = cache_free_debugcheck(cachep, objp, caller);
diff --git a/mm/slab.h b/mm/slab.h
index 6885e1192ec5..1b12bf41d45f 100644
index ad657ffa44e5..07a64aaf1f4f 100644
--- a/mm/slab.h
+++ b/mm/slab.h
@@ -77,6 +77,15 @@ extern const struct kmalloc_info_struct {
@@ -78,6 +78,15 @@ extern const struct kmalloc_info_struct {
unsigned long size;
} kmalloc_info[];
@ -127,14 +128,14 @@ index 6885e1192ec5..1b12bf41d45f 100644
+extern bool pax_sanitize_slab;
+#endif
+
unsigned long calculate_alignment(unsigned long flags,
unsigned long calculate_alignment(slab_flags_t flags,
unsigned long align, unsigned long size);
diff --git a/mm/slab_common.c b/mm/slab_common.c
index 904a83be82de..9128ed200740 100644
index c8cb36774ba1..89839f6a55cc 100644
--- a/mm/slab_common.c
+++ b/mm/slab_common.c
@@ -48,7 +48,11 @@ static DECLARE_WORK(slab_caches_to_rcu_destroy_work,
@@ -49,7 +49,11 @@ static DECLARE_WORK(slab_caches_to_rcu_destroy_work,
/*
* Merge control. If this is set then no merging of slab caches will occur.
*/
@ -146,7 +147,7 @@ index 904a83be82de..9128ed200740 100644
static int __init setup_slab_nomerge(char *str)
{
@@ -71,6 +75,20 @@ unsigned int kmem_cache_size(struct kmem_cache *s)
@@ -72,6 +76,20 @@ unsigned int kmem_cache_size(struct kmem_cache *s)
}
EXPORT_SYMBOL(kmem_cache_size);
@ -167,7 +168,7 @@ index 904a83be82de..9128ed200740 100644
#ifdef CONFIG_DEBUG_VM
static int kmem_cache_sanity_check(const char *name, size_t size)
{
@@ -263,7 +281,11 @@ static inline void memcg_unlink_cache(struct kmem_cache *s)
@@ -272,7 +290,11 @@ static inline void memcg_unlink_cache(struct kmem_cache *s)
*/
int slab_unmergeable(struct kmem_cache *s)
{
@ -180,7 +181,7 @@ index 904a83be82de..9128ed200740 100644
return 1;
if (!is_root_cache(s))
@@ -286,7 +308,11 @@ struct kmem_cache *find_mergeable(size_t size, size_t align,
@@ -295,7 +317,11 @@ struct kmem_cache *find_mergeable(size_t size, size_t align,
{
struct kmem_cache *s;
@ -193,7 +194,7 @@ index 904a83be82de..9128ed200740 100644
return NULL;
if (ctor)
@@ -453,6 +479,11 @@ kmem_cache_create(const char *name, size_t size, size_t align,
@@ -462,6 +488,11 @@ kmem_cache_create(const char *name, size_t size, size_t align,
*/
flags &= CACHE_CREATE_MASK;
@ -206,10 +207,10 @@ index 904a83be82de..9128ed200740 100644
if (s)
goto out_unlock;
diff --git a/mm/slob.c b/mm/slob.c
index 1bae78d71096..a76c903104c9 100644
index 623e8a5c46ce..1f2985096f84 100644
--- a/mm/slob.c
+++ b/mm/slob.c
@@ -365,6 +365,11 @@ static void slob_free(void *block, int size)
@@ -366,6 +366,11 @@ static void slob_free(void *block, int size)
return;
}
@ -222,10 +223,10 @@ index 1bae78d71096..a76c903104c9 100644
/* This slob page is about to become partially free. Easy! */
sp->units = units;
diff --git a/mm/slub.c b/mm/slub.c
index e8b4e31162ca..4eadfbb4ec40 100644
index cfd56e5a35fb..8b0b41e477e7 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -2953,6 +2953,23 @@ static __always_inline void slab_free(struct kmem_cache *s, struct page *page,
@@ -2966,6 +2966,23 @@ static __always_inline void slab_free(struct kmem_cache *s, struct page *page,
unsigned long addr)
{
slab_free_freelist_hook(s, head, tail);
@ -249,7 +250,7 @@ index e8b4e31162ca..4eadfbb4ec40 100644
/*
* slab_free_freelist_hook() could have put the items into quarantine.
* If so, no need to free them.
@@ -3483,6 +3500,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order)
@@ -3496,6 +3513,9 @@ static int calculate_sizes(struct kmem_cache *s, int forced_order)
s->inuse = size;
if (((flags & (SLAB_TYPESAFE_BY_RCU | SLAB_POISON)) ||
@ -260,10 +261,10 @@ index e8b4e31162ca..4eadfbb4ec40 100644
/*
* Relocate free pointer after the object if it is not
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index e07556606284..65666fa3e1c8 100644
index 08f574081315..77d017ef9bf5 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -3512,12 +3512,14 @@ void __init skb_init(void)
@@ -3893,12 +3893,14 @@ void __init skb_init(void)
skbuff_head_cache = kmem_cache_create("skbuff_head_cache",
sizeof(struct sk_buff),
0,
@ -281,7 +282,7 @@ index e07556606284..65666fa3e1c8 100644
}
diff --git a/security/Kconfig b/security/Kconfig
index 7d0038156c66..3926ec3bc8b9 100644
index b0cb9a5f9448..63d764a926c6 100644
--- a/security/Kconfig
+++ b/security/Kconfig
@@ -6,6 +6,37 @@ menu "Security options"