[packages/kernel] - started working on 4.18

arekm arekm at pld-linux.org
Mon Aug 13 00:27:19 CEST 2018


commit cd7a4cd993fd096faee514fee7ef72486f9cf447
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Mon Aug 13 00:27:07 2018 +0200

    - started working on 4.18

 kernel-aufs4.patch       | 566 +++++++++++++++++++++++------------------------
 kernel-multiarch.config  | 364 ++++++++++++++++++------------
 kernel-small_fixes.patch |  37 +---
 kernel.spec              |   8 +-
 4 files changed, 511 insertions(+), 464 deletions(-)
---
diff --git a/kernel.spec b/kernel.spec
index 98148a6f..f22a1ea5 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -67,9 +67,9 @@
 %define		have_pcmcia	0
 %endif
 
-%define		rel		1
-%define		basever		4.17
-%define		postver		.14
+%define		rel		0.1
+%define		basever		4.18
+%define		postver		.0
 
 # define this to '-%{basever}' for longterm branch
 %define		versuffix	%{nil}
@@ -118,7 +118,7 @@ Epoch:		3
 License:	GPL v2
 Group:		Base/Kernel
 Source0:	https://www.kernel.org/pub/linux/kernel/v4.x/linux-%{basever}.tar.xz
-# Source0-md5:	5bb13a03274b66b56c85b26682e407d7
+# Source0-md5:	bee5fe53ee1c3142b8f0c12c0d3348f9
 %if "%{postver}" != ".0"
 Patch0:		https://www.kernel.org/pub/linux/kernel/v4.x/patch-%{version}.xz
 # Patch0-md5:	ad9acd78874e9ad9a5a0cd3c28d9d941
diff --git a/kernel-aufs4.patch b/kernel-aufs4.patch
index be2b4fca..a29568ea 100644
--- a/kernel-aufs4.patch
+++ b/kernel-aufs4.patch
@@ -1,11 +1,11 @@
 SPDX-License-Identifier: GPL-2.0
-aufs4.17 kbuild patch
+aufs4.x-rcN kbuild patch
 
 diff --git a/fs/Kconfig b/fs/Kconfig
-index bc821a8..7ae814c 100644
+index ac474a6..284cee9 100644
 --- a/fs/Kconfig
 +++ b/fs/Kconfig
-@@ -251,6 +251,7 @@ source "fs/pstore/Kconfig"
+@@ -255,6 +255,7 @@ source "fs/pstore/Kconfig"
  source "fs/sysv/Kconfig"
  source "fs/ufs/Kconfig"
  source "fs/exofs/Kconfig"
@@ -14,7 +14,7 @@ index bc821a8..7ae814c 100644
  endif # MISC_FILESYSTEMS
  
 diff --git a/fs/Makefile b/fs/Makefile
-index c9375fd..8af5671 100644
+index 293733f..12d19d0 100644
 --- a/fs/Makefile
 +++ b/fs/Makefile
 @@ -128,3 +128,4 @@ obj-y				+= exofs/ # Multiple modules
@@ -23,13 +23,13 @@ index c9375fd..8af5671 100644
  obj-$(CONFIG_EFIVAR_FS)		+= efivarfs/
 +obj-$(CONFIG_AUFS_FS)           += aufs/
 SPDX-License-Identifier: GPL-2.0
-aufs4.17 base patch
+aufs4.x-rcN base patch
 
 diff --git a/MAINTAINERS b/MAINTAINERS
-index 9c125f7..4616bbf 100644
+index 0fe4228..52cedab 100644
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -2519,6 +2519,19 @@ F:	include/linux/audit.h
+@@ -2541,6 +2541,19 @@ F:	include/linux/audit.h
  F:	include/uapi/linux/audit.h
  F:	kernel/audit*
  
@@ -48,13 +48,13 @@ index 9c125f7..4616bbf 100644
 +
  AUXILIARY DISPLAY DRIVERS
  M:	Miguel Ojeda Sandonis <miguel.ojeda.sandonis at gmail.com>
- W:	http://miguelojeda.es/auxdisplay.htm
+ S:	Maintained
 diff --git a/drivers/block/loop.c b/drivers/block/loop.c
-index 55cf554..bc965e5 100644
+index 4cb1d1b..5678bf8 100644
 --- a/drivers/block/loop.c
 +++ b/drivers/block/loop.c
-@@ -713,6 +713,24 @@ static inline int is_loop_device(struct file *file)
- 	return i && S_ISBLK(i->i_mode) && MAJOR(i->i_rdev) == LOOP_MAJOR;
+@@ -741,6 +741,24 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+ 	return error;
  }
  
 +/*
@@ -79,20 +79,20 @@ index 55cf554..bc965e5 100644
  
  static ssize_t loop_attr_show(struct device *dev, char *page,
 diff --git a/fs/dcache.c b/fs/dcache.c
-index 2acfc69..ff338e2 100644
+index 0e8e5de..88de3b6 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
-@@ -1234,7 +1234,7 @@ enum d_walk_ret {
+@@ -1240,7 +1240,7 @@ enum d_walk_ret {
   *
-  * The @enter() and @finish() callbacks are called with d_lock held.
+  * The @enter() callbacks are called with d_lock held.
   */
 -static void d_walk(struct dentry *parent, void *data,
 +void d_walk(struct dentry *parent, void *data,
- 		   enum d_walk_ret (*enter)(void *, struct dentry *),
- 		   void (*finish)(void *))
+ 		   enum d_walk_ret (*enter)(void *, struct dentry *))
  {
+ 	struct dentry *this_parent;
 diff --git a/fs/fcntl.c b/fs/fcntl.c
-index d737ff0..7550799 100644
+index 12273b6..545e686 100644
 --- a/fs/fcntl.c
 +++ b/fs/fcntl.c
 @@ -32,7 +32,7 @@
@@ -114,20 +114,20 @@ index d737ff0..7550799 100644
  		return error;
  
 diff --git a/fs/inode.c b/fs/inode.c
-index 3b55391..e0c5255 100644
+index 8c86c80..af894e7 100644
 --- a/fs/inode.c
 +++ b/fs/inode.c
-@@ -1663,7 +1663,7 @@ EXPORT_SYMBOL(generic_update_time);
+@@ -1649,7 +1649,7 @@ EXPORT_SYMBOL(generic_update_time);
   * This does the actual work of updating an inodes time or version.  Must have
   * had called mnt_want_write() before calling this.
   */
--static int update_time(struct inode *inode, struct timespec *time, int flags)
-+int update_time(struct inode *inode, struct timespec *time, int flags)
+-static int update_time(struct inode *inode, struct timespec64 *time, int flags)
++int update_time(struct inode *inode, struct timespec64 *time, int flags)
  {
- 	int (*update_time)(struct inode *, struct timespec *, int);
+ 	int (*update_time)(struct inode *, struct timespec64 *, int);
  
 diff --git a/fs/namespace.c b/fs/namespace.c
-index 5f75969..61129ff 100644
+index 8ddd148..ee649e0 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
 @@ -846,6 +846,12 @@ static inline int check_mnt(struct mount *mnt)
@@ -144,7 +144,7 @@ index 5f75969..61129ff 100644
   * vfsmount lock must be held for write
   */
 diff --git a/fs/read_write.c b/fs/read_write.c
-index c4eabbf..ddd6e67 100644
+index 153f8f6..ccc5bc8 100644
 --- a/fs/read_write.c
 +++ b/fs/read_write.c
 @@ -489,6 +489,28 @@ ssize_t __vfs_write(struct file *file, const char __user *p, size_t count,
@@ -177,10 +177,10 @@ index c4eabbf..ddd6e67 100644
  {
  	mm_segment_t old_fs;
 diff --git a/fs/splice.c b/fs/splice.c
-index 005d09c..f617ab0 100644
+index b3daa97..1dd7f96 100644
 --- a/fs/splice.c
 +++ b/fs/splice.c
-@@ -837,8 +837,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
+@@ -838,8 +838,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
  /*
   * Attempt to initiate a splice from pipe to file.
   */
@@ -191,7 +191,7 @@ index 005d09c..f617ab0 100644
  {
  	ssize_t (*splice_write)(struct pipe_inode_info *, struct file *,
  				loff_t *, size_t, unsigned int);
-@@ -854,9 +854,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+@@ -855,9 +855,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
  /*
   * Attempt to initiate a splice from a file to a pipe.
   */
@@ -230,10 +230,10 @@ index 279720d..76e38ea 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 760d8da..09a2542 100644
+index 805bf22..0d0d247f 100644
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -1270,6 +1270,7 @@ extern void fasync_free(struct fasync_struct *);
+@@ -1273,6 +1273,7 @@ extern void fasync_free(struct fasync_struct *);
  /* can be called from interrupts */
  extern void kill_fasync(struct fasync_struct **, int, int);
  
@@ -241,7 +241,7 @@ index 760d8da..09a2542 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);
-@@ -1724,6 +1725,7 @@ struct file_operations {
+@@ -1733,6 +1734,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);
@@ -249,7 +249,7 @@ index 760d8da..09a2542 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);
-@@ -1794,6 +1796,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
+@@ -1803,6 +1805,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
  			      struct iovec *fast_pointer,
  			      struct iovec **ret_pointer);
  
@@ -262,15 +262,15 @@ index 760d8da..09a2542 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 *);
-@@ -2199,6 +2207,7 @@ extern int current_umask(void);
+@@ -2218,6 +2226,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);
-+extern int update_time(struct inode *, struct timespec *, int);
+ extern int generic_update_time(struct inode *, struct timespec64 *, int);
++extern int update_time(struct inode *, struct timespec64 *, int);
  
  /* /sys/fs */
  extern struct kobject *fs_kobj;
-@@ -2485,6 +2494,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
+@@ -2505,6 +2514,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
  	return false;
  }
  #endif
@@ -334,7 +334,7 @@ index 74b4911..19789fb 100644
 +			 unsigned int flags);
  #endif
 diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
-index 0233863..06e0d7a 100644
+index 5fa4d31..720f070 100644
 --- a/kernel/locking/lockdep.c
 +++ b/kernel/locking/lockdep.c
 @@ -140,7 +140,7 @@ static struct lock_list list_entries[MAX_LOCKDEP_ENTRIES];
@@ -355,13 +355,13 @@ index 0233863..06e0d7a 100644
  #ifdef CONFIG_LOCK_STAT
  static DEFINE_PER_CPU(struct lock_class_stats[MAX_LOCKDEP_KEYS], cpu_lock_stats);
 SPDX-License-Identifier: GPL-2.0
-aufs4.17 mmap patch
+aufs4.x-rcN mmap patch
 
 diff --git a/fs/proc/base.c b/fs/proc/base.c
-index 1a76d75..77f698e 100644
+index aaffc0c..ab72941 100644
 --- a/fs/proc/base.c
 +++ b/fs/proc/base.c
-@@ -2024,7 +2024,7 @@ static int map_files_get_link(struct dentry *dentry, struct path *path)
+@@ -2004,7 +2004,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) {
@@ -371,7 +371,7 @@ index 1a76d75..77f698e 100644
  		rc = 0;
  	}
 diff --git a/fs/proc/nommu.c b/fs/proc/nommu.c
-index 7563437..7c0dc0f 100644
+index 3b63be6..fb9913b 100644
 --- a/fs/proc/nommu.c
 +++ b/fs/proc/nommu.c
 @@ -45,7 +45,10 @@ static int nommu_region_show(struct seq_file *m, struct vm_region *region)
@@ -387,10 +387,10 @@ index 7563437..7c0dc0f 100644
  		ino = inode->i_ino;
  	}
 diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
-index c486ad4..76b71f8 100644
+index dfd73a4..ed2ce10 100644
 --- a/fs/proc/task_mmu.c
 +++ b/fs/proc/task_mmu.c
-@@ -305,7 +305,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) {
@@ -402,7 +402,7 @@ index c486ad4..76b71f8 100644
  		dev = inode->i_sb->s_dev;
  		ino = inode->i_ino;
  		pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
-@@ -1726,7 +1729,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
+@@ -1734,7 +1737,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;
@@ -428,10 +428,10 @@ index 5b62f57..dfb4a3b 100644
  		ino = inode->i_ino;
  		pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
 diff --git a/include/linux/mm.h b/include/linux/mm.h
-index 02a616e..01b3bb9 100644
+index d3a3842..c4664f2 100644
 --- a/include/linux/mm.h
 +++ b/include/linux/mm.h
-@@ -1380,6 +1380,28 @@ static inline void unmap_shared_mapping_range(struct address_space *mapping,
+@@ -1431,6 +1431,28 @@ static inline void unmap_shared_mapping_range(struct address_space *mapping,
  	unmap_mapping_range(mapping, holebegin, holelen, 0);
  }
  
@@ -461,10 +461,10 @@ index 02a616e..01b3bb9 100644
  		void *buf, int len, 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 2161234..78aa367 100644
+index 99ce070..8babe35 100644
 --- a/include/linux/mm_types.h
 +++ b/include/linux/mm_types.h
-@@ -251,6 +251,7 @@ struct vm_region {
+@@ -236,6 +236,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 */
@@ -472,7 +472,7 @@ index 2161234..78aa367 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
-@@ -325,6 +326,7 @@ struct vm_area_struct {
+@@ -310,6 +311,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). */
@@ -481,10 +481,10 @@ index 2161234..78aa367 100644
  
  	atomic_long_t swap_readahead_info;
 diff --git a/kernel/fork.c b/kernel/fork.c
-index a5d21c4..e965e09 100644
+index a191c05..d88ee5a 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
-@@ -473,7 +473,7 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
+@@ -506,7 +506,7 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
  			struct inode *inode = file_inode(file);
  			struct address_space *mapping = file->f_mapping;
  
@@ -494,7 +494,7 @@ index a5d21c4..e965e09 100644
  				atomic_dec(&inode->i_writecount);
  			i_mmap_lock_write(mapping);
 diff --git a/mm/Makefile b/mm/Makefile
-index b4e54a9a..77892ae 100644
+index 8716bda..68afd6d 100644
 --- a/mm/Makefile
 +++ b/mm/Makefile
 @@ -39,7 +39,7 @@ obj-y			:= filemap.o mempool.o oom_kill.o \
@@ -507,11 +507,11 @@ index b4e54a9a..77892ae 100644
  obj-y += init-mm.o
  
 diff --git a/mm/filemap.c b/mm/filemap.c
-index 0604cb0..45d2369 100644
+index 52517f2..250f675 100644
 --- a/mm/filemap.c
 +++ b/mm/filemap.c
-@@ -2700,7 +2700,7 @@ int filemap_page_mkwrite(struct vm_fault *vmf)
- 	int ret = VM_FAULT_LOCKED;
+@@ -2700,7 +2700,7 @@ vm_fault_t filemap_page_mkwrite(struct vm_fault *vmf)
+ 	vm_fault_t ret = VM_FAULT_LOCKED;
  
  	sb_start_pagefault(inode->i_sb);
 -	file_update_time(vmf->vma->vm_file);
@@ -520,7 +520,7 @@ index 0604cb0..45d2369 100644
  	if (page->mapping != inode->i_mapping) {
  		unlock_page(page);
 diff --git a/mm/mmap.c b/mm/mmap.c
-index fc41c05..e376869 100644
+index ff1944d..88abe2d 100644
 --- a/mm/mmap.c
 +++ b/mm/mmap.c
 @@ -180,7 +180,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
@@ -530,7 +530,7 @@ index fc41c05..e376869 100644
 -		fput(vma->vm_file);
 +		vma_fput(vma);
  	mpol_put(vma_policy(vma));
- 	kmem_cache_free(vm_area_cachep, vma);
+ 	vm_area_free(vma);
  	return next;
 @@ -905,7 +905,7 @@ int __vma_adjust(struct vm_area_struct *vma, unsigned long start,
  	if (remove_next) {
@@ -541,7 +541,7 @@ index fc41c05..e376869 100644
  		}
  		if (next->anon_vma)
  			anon_vma_merge(vma, next);
-@@ -1820,8 +1820,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1818,8 +1818,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
  	return addr;
  
  unmap_and_free_vma:
@@ -551,7 +551,7 @@ index fc41c05..e376869 100644
  
  	/* Undo any partial mapping done by a device driver. */
  	unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
-@@ -2645,7 +2645,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2638,7 +2638,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
  		goto out_free_mpol;
  
  	if (new->vm_file)
@@ -560,7 +560,7 @@ index fc41c05..e376869 100644
  
  	if (new->vm_ops && new->vm_ops->open)
  		new->vm_ops->open(new);
-@@ -2664,7 +2664,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2657,7 +2657,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)
@@ -569,16 +569,16 @@ index fc41c05..e376869 100644
  	unlink_anon_vmas(new);
   out_free_mpol:
  	mpol_put(vma_policy(new));
-@@ -2826,7 +2826,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
+@@ -2819,7 +2819,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;
 -	struct file *file;
 +	struct file *file, *prfile;
  
- 	pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.txt.\n",
+ 	pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.rst.\n",
  		     current->comm, current->pid);
-@@ -2901,10 +2901,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
+@@ -2894,10 +2894,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
  		}
  	}
  
@@ -607,7 +607,7 @@ index fc41c05..e376869 100644
  out:
  	up_write(&mm->mmap_sem);
  	if (populate)
-@@ -3220,7 +3237,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
+@@ -3204,7 +3221,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)
@@ -617,7 +617,7 @@ index fc41c05..e376869 100644
  			new_vma->vm_ops->open(new_vma);
  		vma_link(mm, new_vma, prev, rb_link, rb_parent);
 diff --git a/mm/nommu.c b/mm/nommu.c
-index 1372373..6362dde 100644
+index 1d22fdb..2b608be 100644
 --- a/mm/nommu.c
 +++ b/mm/nommu.c
 @@ -629,7 +629,7 @@ static void __put_nommu_region(struct vm_region *region)
@@ -636,9 +636,9 @@ index 1372373..6362dde 100644
 -		fput(vma->vm_file);
 +		vma_fput(vma);
  	put_nommu_region(vma->vm_region);
- 	kmem_cache_free(vm_area_cachep, vma);
+ 	vm_area_free(vma);
  }
-@@ -1289,7 +1289,7 @@ unsigned long do_mmap(struct file *file,
+@@ -1288,7 +1288,7 @@ unsigned long do_mmap(struct file *file,
  					goto error_just_free;
  				}
  			}
@@ -647,7 +647,7 @@ index 1372373..6362dde 100644
  			kmem_cache_free(vm_region_jar, region);
  			region = pregion;
  			result = start;
-@@ -1364,10 +1364,10 @@ unsigned long do_mmap(struct file *file,
+@@ -1363,7 +1363,7 @@ unsigned long do_mmap(struct file *file,
  	up_write(&nommu_region_sem);
  error:
  	if (region->vm_file)
@@ -655,18 +655,14 @@ index 1372373..6362dde 100644
 +		vmr_fput(region);
  	kmem_cache_free(vm_region_jar, region);
  	if (vma->vm_file)
--		fput(vma->vm_file);
-+		vma_fput(vma);
- 	kmem_cache_free(vm_area_cachep, vma);
- 	return ret;
- 
+ 		fput(vma->vm_file);
 diff --git a/mm/prfile.c b/mm/prfile.c
 new file mode 100644
-index 0000000..37e95e1
+index 0000000..a27ac36
 --- /dev/null
 +++ b/mm/prfile.c
 @@ -0,0 +1,86 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Mainly for aufs which mmap(2) different file and wants to print different
 + * path in /proc/PID/maps.
@@ -753,13 +749,13 @@ index 0000000..37e95e1
 +}
 +#endif /* !CONFIG_MMU */
 SPDX-License-Identifier: GPL-2.0
-aufs4.17 standalone patch
+aufs4.x-rcN standalone patch
 
 diff --git a/fs/dcache.c b/fs/dcache.c
-index ff338e2..3e2bae8 100644
+index 88de3b6..de0091a 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
-@@ -1342,6 +1342,7 @@ void d_walk(struct dentry *parent, void *data,
+@@ -1345,6 +1345,7 @@ void d_walk(struct dentry *parent, void *data,
  	seq = 1;
  	goto again;
  }
@@ -767,7 +763,7 @@ index ff338e2..3e2bae8 100644
  
  struct check_mount {
  	struct vfsmount *mnt;
-@@ -2942,6 +2943,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
+@@ -2891,6 +2892,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
  
  	write_sequnlock(&rename_lock);
  }
@@ -776,7 +772,7 @@ index ff338e2..3e2bae8 100644
  /**
   * d_ancestor - search for an ancestor
 diff --git a/fs/exec.c b/fs/exec.c
-index 183059c..35adee4 100644
+index 72e961a..adc7329 100644
 --- a/fs/exec.c
 +++ b/fs/exec.c
 @@ -109,6 +109,7 @@ bool path_noexec(const struct path *path)
@@ -788,7 +784,7 @@ index 183059c..35adee4 100644
  #ifdef CONFIG_USELIB
  /*
 diff --git a/fs/fcntl.c b/fs/fcntl.c
-index 7550799..d403576 100644
+index 545e686..0237ad7 100644
 --- a/fs/fcntl.c
 +++ b/fs/fcntl.c
 @@ -85,6 +85,7 @@ int setfl(int fd, struct file * filp, unsigned long arg)
@@ -836,10 +832,10 @@ index 7ec0b3e..819ee07 100644
  void __init files_init(void)
  {
 diff --git a/fs/inode.c b/fs/inode.c
-index e0c5255..ff36056 100644
+index af894e7..169811b 100644
 --- a/fs/inode.c
 +++ b/fs/inode.c
-@@ -1672,6 +1672,7 @@ int update_time(struct inode *inode, struct timespec *time, int flags)
+@@ -1658,6 +1658,7 @@ int update_time(struct inode *inode, struct timespec64 *time, int flags)
  
  	return update_time(inode, time, flags);
  }
@@ -848,7 +844,7 @@ index e0c5255..ff36056 100644
  /**
   *	touch_atime	-	update the access time
 diff --git a/fs/namespace.c b/fs/namespace.c
-index 61129ff..5d3e0382 100644
+index ee649e0..10923cb 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
 @@ -517,6 +517,7 @@ void __mnt_drop_write(struct vfsmount *mnt)
@@ -876,7 +872,7 @@ index 61129ff..5d3e0382 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 b7a4b6a..5a69d60 100644
+index aa5468f2..b38d224 100644
 --- a/fs/notify/group.c
 +++ b/fs/notify/group.c
 @@ -22,6 +22,7 @@
@@ -912,18 +908,18 @@ index b7a4b6a..5a69d60 100644
  int fsnotify_fasync(int fd, struct file *file, int on)
  {
 diff --git a/fs/notify/mark.c b/fs/notify/mark.c
-index e9191b4..1f8ccfa 100644
+index 61f4c5f..855c655 100644
 --- a/fs/notify/mark.c
 +++ b/fs/notify/mark.c
-@@ -108,6 +108,7 @@ void fsnotify_get_mark(struct fsnotify_mark *mark)
- 	WARN_ON_ONCE(!refcount_read(&mark->refcnt));
- 	refcount_inc(&mark->refcnt);
+@@ -245,6 +245,7 @@ void fsnotify_put_mark(struct fsnotify_mark *mark)
+ 	queue_delayed_work(system_unbound_wq, &reaper_work,
+ 			   FSNOTIFY_REAPER_DELAY);
  }
 +EXPORT_SYMBOL_GPL(fsnotify_put_mark);
  
- static void __fsnotify_recalc_mask(struct fsnotify_mark_connector *conn)
- {
-@@ -392,6 +393,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark,
+ /*
+  * Get mark reference when we found the mark via lockless traversal of object
+@@ -399,6 +400,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark,
  	mutex_unlock(&group->mark_mutex);
  	fsnotify_free_mark(mark);
  }
@@ -931,15 +927,15 @@ index e9191b4..1f8ccfa 100644
  
  /*
   * Sorting function for lists of fsnotify marks.
-@@ -606,6 +608,7 @@ int fsnotify_add_mark_locked(struct fsnotify_mark *mark, struct inode *inode,
- 	fsnotify_put_mark(mark);
+@@ -624,6 +626,7 @@ int fsnotify_add_mark(struct fsnotify_mark *mark, struct inode *inode,
+ 	mutex_unlock(&group->mark_mutex);
  	return ret;
  }
 +EXPORT_SYMBOL_GPL(fsnotify_add_mark);
  
- int fsnotify_add_mark(struct fsnotify_mark *mark, struct inode *inode,
- 		      struct vfsmount *mnt, int allow_dups)
-@@ -741,6 +744,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
+ /*
+  * Given a list of marks, find the mark associated with given group. If found
+@@ -747,6 +750,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
  	fsnotify_get_group(group);
  	mark->group = group;
  }
@@ -968,7 +964,7 @@ index d0e955b..527bc1a 100644
  int open_check_o_direct(struct file *f)
  {
 diff --git a/fs/read_write.c b/fs/read_write.c
-index ddd6e67..aabf92d 100644
+index ccc5bc8..36f52f4 100644
 --- a/fs/read_write.c
 +++ b/fs/read_write.c
 @@ -459,6 +459,7 @@ ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
@@ -1004,10 +1000,10 @@ index ddd6e67..aabf92d 100644
  static inline loff_t file_pos_read(struct file *file)
  {
 diff --git a/fs/splice.c b/fs/splice.c
-index f617ab0..ec0ad02 100644
+index 1dd7f96..a5e3bcb 100644
 --- a/fs/splice.c
 +++ b/fs/splice.c
-@@ -850,6 +850,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+@@ -851,6 +851,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
  
  	return splice_write(pipe, out, ppos, len, flags);
  }
@@ -1015,7 +1011,7 @@ index f617ab0..ec0ad02 100644
  
  /*
   * Attempt to initiate a splice from a file to a pipe.
-@@ -879,6 +880,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
+@@ -880,6 +881,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
  
  	return splice_read(in, ppos, pipe, len, flags);
  }
@@ -1036,10 +1032,10 @@ index 2860782..ffd7ea4 100644
  /*
   * Write out and wait upon all dirty data associated with this
 diff --git a/fs/xattr.c b/fs/xattr.c
-index 61cd28b..35570cd 100644
+index f9cb1db..000b62b 100644
 --- a/fs/xattr.c
 +++ b/fs/xattr.c
-@@ -297,6 +297,7 @@ vfs_getxattr_alloc(struct dentry *dentry, const char *name, char **xattr_value,
+@@ -296,6 +296,7 @@ vfs_getxattr_alloc(struct dentry *dentry, const char *name, char **xattr_value,
  	*xattr_value = value;
  	return error;
  }
@@ -1048,7 +1044,7 @@ index 61cd28b..35570cd 100644
  ssize_t
  __vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name,
 diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
-index 06e0d7a..6af91bd 100644
+index 720f070..4f58215 100644
 --- a/kernel/locking/lockdep.c
 +++ b/kernel/locking/lockdep.c
 @@ -151,6 +151,7 @@ inline struct lock_class *lockdep_hlock_class(struct held_lock *hlock)
@@ -1069,10 +1065,10 @@ index 0fef395..83fb1ec 100644
  }
 +EXPORT_SYMBOL_GPL(task_work_run);
 diff --git a/security/commoncap.c b/security/commoncap.c
-index 1ce701f..a0d106e 100644
+index f4c33ab..70563f1 100644
 --- a/security/commoncap.c
 +++ b/security/commoncap.c
-@@ -1332,12 +1332,14 @@ int cap_mmap_addr(unsigned long addr)
+@@ -1336,12 +1336,14 @@ int cap_mmap_addr(unsigned long addr)
  	}
  	return ret;
  }
@@ -1088,7 +1084,7 @@ index 1ce701f..a0d106e 100644
  #ifdef CONFIG_SECURITY
  
 diff --git a/security/device_cgroup.c b/security/device_cgroup.c
-index c65b39b..e363d22 100644
+index cd97929..424fd23 100644
 --- a/security/device_cgroup.c
 +++ b/security/device_cgroup.c
 @@ -8,6 +8,7 @@
@@ -1105,7 +1101,7 @@ index c65b39b..e363d22 100644
  }
 +EXPORT_SYMBOL_GPL(__devcgroup_check_permission);
 diff --git a/security/security.c b/security/security.c
-index 7bc2fde..6bd0468 100644
+index 68f46d8..3bc1348 100644
 --- a/security/security.c
 +++ b/security/security.c
 @@ -537,6 +537,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
@@ -1190,7 +1186,7 @@ index 7bc2fde..6bd0468 100644
  {
 diff -urN /usr/share/empty/Documentation/ABI/testing/debugfs-aufs linux/Documentation/ABI/testing/debugfs-aufs
 --- /usr/share/empty/Documentation/ABI/testing/debugfs-aufs	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/ABI/testing/debugfs-aufs	2018-07-19 09:46:13.053314374 +0200
++++ linux/Documentation/ABI/testing/debugfs-aufs	2018-08-12 23:43:05.450124426 +0200
 @@ -0,0 +1,55 @@
 +What:		/debug/aufs/si_<id>/
 +Date:		March 2009
@@ -3080,7 +3076,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/README linux/Documenta
 +# End: ;
 diff -urN /usr/share/empty/fs/aufs/aufs.h linux/fs/aufs/aufs.h
 --- /usr/share/empty/fs/aufs/aufs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/aufs.h	2018-07-19 09:46:13.053314374 +0200
++++ linux/fs/aufs/aufs.h	2018-08-12 23:43:05.450124426 +0200
 @@ -0,0 +1,61 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -3145,9 +3141,9 @@ diff -urN /usr/share/empty/fs/aufs/aufs.h linux/fs/aufs/aufs.h
 +#endif /* __AUFS_H__ */
 diff -urN /usr/share/empty/fs/aufs/branch.c linux/fs/aufs/branch.c
 --- /usr/share/empty/fs/aufs/branch.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/branch.c	2018-07-19 09:46:13.053314374 +0200
++++ linux/fs/aufs/branch.c	2018-08-12 23:43:05.450124426 +0200
 @@ -0,0 +1,1422 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -4571,7 +4567,7 @@ diff -urN /usr/share/empty/fs/aufs/branch.c linux/fs/aufs/branch.c
 +}
 diff -urN /usr/share/empty/fs/aufs/branch.h linux/fs/aufs/branch.h
 --- /usr/share/empty/fs/aufs/branch.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/branch.h	2018-07-19 09:46:13.053314374 +0200
++++ linux/fs/aufs/branch.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,374 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -4993,9 +4989,9 @@ diff -urN /usr/share/empty/fs/aufs/conf.mk linux/fs/aufs/conf.mk
 +-include ${srctree}/${src}/conf_priv.mk
 diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 --- /usr/share/empty/fs/aufs/cpup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/cpup.c	2018-07-19 09:46:13.056647808 +0200
-@@ -0,0 +1,1442 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++++ linux/fs/aufs/cpup.c	2018-08-12 23:43:05.453457863 +0200
+@@ -0,0 +1,1441 @@
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -5673,8 +5669,7 @@ diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 +	switch (mode & S_IFMT) {
 +	case S_IFREG:
 +		isreg = 1;
-+		err = vfsub_create(h_dir, &h_path, S_IRUSR | S_IWUSR,
-+				   /*want_excl*/true);
++		err = vfsub_create(h_dir, &h_path, 0600, /*want_excl*/true);
 +		if (!err)
 +			err = au_do_cpup_regular(cpg, h_src_attr);
 +		break;
@@ -6439,7 +6434,7 @@ diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 +}
 diff -urN /usr/share/empty/fs/aufs/cpup.h linux/fs/aufs/cpup.h
 --- /usr/share/empty/fs/aufs/cpup.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/cpup.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/cpup.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,100 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -6533,7 +6528,7 @@ diff -urN /usr/share/empty/fs/aufs/cpup.h linux/fs/aufs/cpup.h
 +struct au_dtime {
 +	struct dentry *dt_dentry;
 +	struct path dt_h_path;
-+	struct timespec dt_atime, dt_mtime;
++	struct timespec64 dt_atime, dt_mtime;
 +};
 +void au_dtime_store(struct au_dtime *dt, struct dentry *dentry,
 +		    struct path *h_path);
@@ -6543,9 +6538,9 @@ diff -urN /usr/share/empty/fs/aufs/cpup.h linux/fs/aufs/cpup.h
 +#endif /* __AUFS_CPUP_H__ */
 diff -urN /usr/share/empty/fs/aufs/dbgaufs.c linux/fs/aufs/dbgaufs.c
 --- /usr/share/empty/fs/aufs/dbgaufs.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dbgaufs.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dbgaufs.c	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,478 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -6575,7 +6570,7 @@ diff -urN /usr/share/empty/fs/aufs/dbgaufs.c linux/fs/aufs/dbgaufs.c
 +#endif
 +
 +static struct dentry *dbgaufs;
-+static const mode_t dbgaufs_mode = S_IRUSR | S_IRGRP | S_IROTH;
++static const mode_t dbgaufs_mode = 0444;
 +
 +/* 20 is max digits length of ulong 64 */
 +struct dbgaufs_arg {
@@ -7025,7 +7020,7 @@ diff -urN /usr/share/empty/fs/aufs/dbgaufs.c linux/fs/aufs/dbgaufs.c
 +}
 diff -urN /usr/share/empty/fs/aufs/dbgaufs.h linux/fs/aufs/dbgaufs.h
 --- /usr/share/empty/fs/aufs/dbgaufs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dbgaufs.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dbgaufs.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,53 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -7082,9 +7077,9 @@ diff -urN /usr/share/empty/fs/aufs/dbgaufs.h linux/fs/aufs/dbgaufs.h
 +#endif /* __DBGAUFS_H__ */
 diff -urN /usr/share/empty/fs/aufs/dcsub.c linux/fs/aufs/dcsub.c
 --- /usr/share/empty/fs/aufs/dcsub.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dcsub.c	2018-07-19 09:46:13.056647808 +0200
-@@ -0,0 +1,226 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++++ linux/fs/aufs/dcsub.c	2018-08-12 23:43:05.453457863 +0200
+@@ -0,0 +1,225 @@
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -7203,8 +7198,7 @@ diff -urN /usr/share/empty/fs/aufs/dcsub.c linux/fs/aufs/dcsub.c
 +};
 +
 +extern void d_walk(struct dentry *parent, void *data,
-+		   enum d_walk_ret (*enter)(void *, struct dentry *),
-+		   void (*finish)(void *));
++		   enum d_walk_ret (*enter)(void *, struct dentry *));
 +
 +struct ac_dpages_arg {
 +	int err;
@@ -7244,7 +7238,7 @@ diff -urN /usr/share/empty/fs/aufs/dcsub.c linux/fs/aufs/dcsub.c
 +		.arg	= arg
 +	};
 +
-+	d_walk(root, &args, au_call_dpages_append, NULL);
++	d_walk(root, &args, au_call_dpages_append);
 +
 +	return args.err;
 +}
@@ -7312,7 +7306,7 @@ diff -urN /usr/share/empty/fs/aufs/dcsub.c linux/fs/aufs/dcsub.c
 +}
 diff -urN /usr/share/empty/fs/aufs/dcsub.h linux/fs/aufs/dcsub.h
 --- /usr/share/empty/fs/aufs/dcsub.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dcsub.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dcsub.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,137 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -7453,9 +7447,9 @@ diff -urN /usr/share/empty/fs/aufs/dcsub.h linux/fs/aufs/dcsub.h
 +#endif /* __AUFS_DCSUB_H__ */
 diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 --- /usr/share/empty/fs/aufs/debug.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/debug.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/debug.c	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,441 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -7511,7 +7505,7 @@ diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 +
 +atomic_t aufs_debug = ATOMIC_INIT(0);
 +MODULE_PARM_DESC(debug, "debug print");
-+module_param_named(debug, aufs_debug, atomic_t, S_IRUGO | S_IWUSR | S_IWGRP);
++module_param_named(debug, aufs_debug, atomic_t, 0664);
 +
 +DEFINE_MUTEX(au_dbg_mtx);	/* just to serialize the dbg msgs */
 +char *au_plevel = KERN_DEBUG;
@@ -7588,7 +7582,7 @@ diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 +	     inode->i_ino, inode->i_sb ? au_sbtype(inode->i_sb) : "??",
 +	     atomic_read(&inode->i_count), inode->i_nlink, inode->i_mode,
 +	     i_size_read(inode), (unsigned long long)inode->i_blocks,
-+	     hn, (long long)timespec_to_ns(&inode->i_ctime) & 0x0ffff,
++	     hn, (long long)timespec64_to_ns(&inode->i_ctime) & 0x0ffff,
 +	     inode->i_mapping ? inode->i_mapping->nrpages : 0,
 +	     inode->i_state, inode->i_flags, inode_peek_iversion(inode),
 +	     inode->i_generation,
@@ -7898,7 +7892,7 @@ diff -urN /usr/share/empty/fs/aufs/debug.c linux/fs/aufs/debug.c
 +}
 diff -urN /usr/share/empty/fs/aufs/debug.h linux/fs/aufs/debug.h
 --- /usr/share/empty/fs/aufs/debug.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/debug.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/debug.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,226 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -8128,9 +8122,9 @@ diff -urN /usr/share/empty/fs/aufs/debug.h linux/fs/aufs/debug.h
 +#endif /* __AUFS_DEBUG_H__ */
 diff -urN /usr/share/empty/fs/aufs/dentry.c linux/fs/aufs/dentry.c
 --- /usr/share/empty/fs/aufs/dentry.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dentry.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dentry.c	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,1153 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -9285,7 +9279,7 @@ diff -urN /usr/share/empty/fs/aufs/dentry.c linux/fs/aufs/dentry.c
 +};
 diff -urN /usr/share/empty/fs/aufs/dentry.h linux/fs/aufs/dentry.h
 --- /usr/share/empty/fs/aufs/dentry.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dentry.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dentry.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,267 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -9556,9 +9550,9 @@ diff -urN /usr/share/empty/fs/aufs/dentry.h linux/fs/aufs/dentry.h
 +#endif /* __AUFS_DENTRY_H__ */
 diff -urN /usr/share/empty/fs/aufs/dinfo.c linux/fs/aufs/dinfo.c
 --- /usr/share/empty/fs/aufs/dinfo.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dinfo.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dinfo.c	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,554 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -10114,9 +10108,9 @@ diff -urN /usr/share/empty/fs/aufs/dinfo.c linux/fs/aufs/dinfo.c
 +}
 diff -urN /usr/share/empty/fs/aufs/dir.c linux/fs/aufs/dir.c
 --- /usr/share/empty/fs/aufs/dir.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dir.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dir.c	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,760 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -10262,7 +10256,7 @@ diff -urN /usr/share/empty/fs/aufs/dir.c linux/fs/aufs/dir.c
 +	au_hn_inode_lock_nested(hdir, AuLsc_I_PARENT);
 +	h_dir = au_h_iptr(dir, btop);
 +	if (h_dir->i_nlink
-+	    && timespec_compare(&h_dir->i_mtime, &dt.dt_mtime) < 0) {
++	    && timespec64_compare(&h_dir->i_mtime, &dt.dt_mtime) < 0) {
 +		dt.dt_h_path = h_path;
 +		au_dtime_revert(&dt);
 +	}
@@ -10878,7 +10872,7 @@ diff -urN /usr/share/empty/fs/aufs/dir.c linux/fs/aufs/dir.c
 +};
 diff -urN /usr/share/empty/fs/aufs/dir.h linux/fs/aufs/dir.h
 --- /usr/share/empty/fs/aufs/dir.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dir.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dir.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,132 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -11014,9 +11008,9 @@ diff -urN /usr/share/empty/fs/aufs/dir.h linux/fs/aufs/dir.h
 +#endif /* __AUFS_DIR_H__ */
 diff -urN /usr/share/empty/fs/aufs/dirren.c linux/fs/aufs/dirren.c
 --- /usr/share/empty/fs/aufs/dirren.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dirren.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dirren.c	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,1316 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2017-2018 Junjiro R. Okajima
 + *
@@ -12334,7 +12328,7 @@ diff -urN /usr/share/empty/fs/aufs/dirren.c linux/fs/aufs/dirren.c
 +}
 diff -urN /usr/share/empty/fs/aufs/dirren.h linux/fs/aufs/dirren.h
 --- /usr/share/empty/fs/aufs/dirren.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dirren.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dirren.h	2018-08-12 23:43:05.453457863 +0200
 @@ -0,0 +1,140 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -12478,9 +12472,9 @@ diff -urN /usr/share/empty/fs/aufs/dirren.h linux/fs/aufs/dirren.h
 +#endif /* __AUFS_DIRREN_H__ */
 diff -urN /usr/share/empty/fs/aufs/dynop.c linux/fs/aufs/dynop.c
 --- /usr/share/empty/fs/aufs/dynop.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dynop.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dynop.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,370 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2010-2018 Junjiro R. Okajima
 + *
@@ -12852,7 +12846,7 @@ diff -urN /usr/share/empty/fs/aufs/dynop.c linux/fs/aufs/dynop.c
 +}
 diff -urN /usr/share/empty/fs/aufs/dynop.h linux/fs/aufs/dynop.h
 --- /usr/share/empty/fs/aufs/dynop.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/dynop.h	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/dynop.h	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,75 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -12931,9 +12925,9 @@ diff -urN /usr/share/empty/fs/aufs/dynop.h linux/fs/aufs/dynop.h
 +#endif /* __AUFS_DYNOP_H__ */
 diff -urN /usr/share/empty/fs/aufs/export.c linux/fs/aufs/export.c
 --- /usr/share/empty/fs/aufs/export.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/export.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/export.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,838 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -13773,9 +13767,9 @@ diff -urN /usr/share/empty/fs/aufs/export.c linux/fs/aufs/export.c
 +}
 diff -urN /usr/share/empty/fs/aufs/fhsm.c linux/fs/aufs/fhsm.c
 --- /usr/share/empty/fs/aufs/fhsm.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/fhsm.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/fhsm.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,427 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2011-2018 Junjiro R. Okajima
 + *
@@ -14204,9 +14198,9 @@ diff -urN /usr/share/empty/fs/aufs/fhsm.c linux/fs/aufs/fhsm.c
 +}
 diff -urN /usr/share/empty/fs/aufs/file.c linux/fs/aufs/file.c
 --- /usr/share/empty/fs/aufs/file.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/file.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/file.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,857 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -15065,7 +15059,7 @@ diff -urN /usr/share/empty/fs/aufs/file.c linux/fs/aufs/file.c
 +};
 diff -urN /usr/share/empty/fs/aufs/file.h linux/fs/aufs/file.h
 --- /usr/share/empty/fs/aufs/file.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/file.h	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/file.h	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,341 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -15162,7 +15156,7 @@ diff -urN /usr/share/empty/fs/aufs/file.h linux/fs/aufs/file.h
 +
 +/* poll.c */
 +#ifdef CONFIG_AUFS_POLL
-+__poll_t aufs_poll(struct file *file, poll_table *wait);
++__poll_t aufs_poll(struct file *file, struct poll_table_struct *pt);
 +#endif
 +
 +#ifdef CONFIG_AUFS_BR_HFSPLUS
@@ -15410,9 +15404,9 @@ diff -urN /usr/share/empty/fs/aufs/file.h linux/fs/aufs/file.h
 +#endif /* __AUFS_FILE_H__ */
 diff -urN /usr/share/empty/fs/aufs/finfo.c linux/fs/aufs/finfo.c
 --- /usr/share/empty/fs/aufs/finfo.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/finfo.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/finfo.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,149 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -15563,9 +15557,9 @@ diff -urN /usr/share/empty/fs/aufs/finfo.c linux/fs/aufs/finfo.c
 +}
 diff -urN /usr/share/empty/fs/aufs/f_op.c linux/fs/aufs/f_op.c
 --- /usr/share/empty/fs/aufs/f_op.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/f_op.c	2018-07-19 09:46:13.056647808 +0200
++++ linux/fs/aufs/f_op.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,818 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -16385,7 +16379,7 @@ diff -urN /usr/share/empty/fs/aufs/f_op.c linux/fs/aufs/f_op.c
 +};
 diff -urN /usr/share/empty/fs/aufs/fstype.h linux/fs/aufs/fstype.h
 --- /usr/share/empty/fs/aufs/fstype.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/fstype.h	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/fstype.h	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,401 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -16790,7 +16784,7 @@ diff -urN /usr/share/empty/fs/aufs/fstype.h linux/fs/aufs/fstype.h
 +#endif /* __AUFS_FSTYPE_H__ */
 diff -urN /usr/share/empty/fs/aufs/hbl.h linux/fs/aufs/hbl.h
 --- /usr/share/empty/fs/aufs/hbl.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/hbl.h	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/hbl.h	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,65 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -16859,9 +16853,9 @@ diff -urN /usr/share/empty/fs/aufs/hbl.h linux/fs/aufs/hbl.h
 +#endif /* __AUFS_HBL_H__ */
 diff -urN /usr/share/empty/fs/aufs/hfsnotify.c linux/fs/aufs/hfsnotify.c
 --- /usr/share/empty/fs/aufs/hfsnotify.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/hfsnotify.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/hfsnotify.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,290 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -17025,8 +17019,6 @@ diff -urN /usr/share/empty/fs/aufs/hfsnotify.c linux/fs/aufs/hfsnotify.c
 +
 +static int au_hfsn_handle_event(struct fsnotify_group *group,
 +				struct inode *inode,
-+				struct fsnotify_mark *inode_mark,
-+				struct fsnotify_mark *vfsmount_mark,
 +				u32 mask, const void *data, int data_type,
 +				const unsigned char *file_name, u32 cookie,
 +				struct fsnotify_iter_info *iter_info)
@@ -17035,6 +17027,7 @@ diff -urN /usr/share/empty/fs/aufs/hfsnotify.c linux/fs/aufs/hfsnotify.c
 +	struct au_hnotify *hnotify;
 +	struct inode *h_dir, *h_inode;
 +	struct qstr h_child_qstr = QSTR_INIT(file_name, strlen(file_name));
++	struct fsnotify_mark *inode_mark;
 +
 +	AuDebugOn(data_type != FSNOTIFY_EVENT_INODE);
 +
@@ -17058,6 +17051,7 @@ diff -urN /usr/share/empty/fs/aufs/hfsnotify.c linux/fs/aufs/hfsnotify.c
 +	au_debug_off();
 +#endif
 +
++	inode_mark = fsnotify_iter_inode_mark(iter_info);
 +	AuDebugOn(!inode_mark);
 +	hnotify = container_of(inode_mark, struct au_hnotify, hn_mark);
 +	err = au_hnotify(h_dir, hnotify, mask, &h_child_qstr, h_inode);
@@ -17153,9 +17147,9 @@ diff -urN /usr/share/empty/fs/aufs/hfsnotify.c linux/fs/aufs/hfsnotify.c
 +};
 diff -urN /usr/share/empty/fs/aufs/hfsplus.c linux/fs/aufs/hfsplus.c
 --- /usr/share/empty/fs/aufs/hfsplus.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/hfsplus.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/hfsplus.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,57 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2010-2018 Junjiro R. Okajima
 + *
@@ -17214,9 +17208,9 @@ diff -urN /usr/share/empty/fs/aufs/hfsplus.c linux/fs/aufs/hfsplus.c
 +}
 diff -urN /usr/share/empty/fs/aufs/hnotify.c linux/fs/aufs/hnotify.c
 --- /usr/share/empty/fs/aufs/hnotify.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/hnotify.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/hnotify.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,720 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -17938,9 +17932,9 @@ diff -urN /usr/share/empty/fs/aufs/hnotify.c linux/fs/aufs/hnotify.c
 +}
 diff -urN /usr/share/empty/fs/aufs/iinfo.c linux/fs/aufs/iinfo.c
 --- /usr/share/empty/fs/aufs/iinfo.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/iinfo.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/iinfo.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,286 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -18228,9 +18222,9 @@ diff -urN /usr/share/empty/fs/aufs/iinfo.c linux/fs/aufs/iinfo.c
 +}
 diff -urN /usr/share/empty/fs/aufs/inode.c linux/fs/aufs/inode.c
 --- /usr/share/empty/fs/aufs/inode.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/inode.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/inode.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,528 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -18760,7 +18754,7 @@ diff -urN /usr/share/empty/fs/aufs/inode.c linux/fs/aufs/inode.c
 +}
 diff -urN /usr/share/empty/fs/aufs/inode.h linux/fs/aufs/inode.h
 --- /usr/share/empty/fs/aufs/inode.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/inode.h	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/inode.h	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,696 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -19460,9 +19454,9 @@ diff -urN /usr/share/empty/fs/aufs/inode.h linux/fs/aufs/inode.h
 +#endif /* __AUFS_INODE_H__ */
 diff -urN /usr/share/empty/fs/aufs/ioctl.c linux/fs/aufs/ioctl.c
 --- /usr/share/empty/fs/aufs/ioctl.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/ioctl.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/ioctl.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,220 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -19684,9 +19678,9 @@ diff -urN /usr/share/empty/fs/aufs/ioctl.c linux/fs/aufs/ioctl.c
 +#endif
 diff -urN /usr/share/empty/fs/aufs/i_op_add.c linux/fs/aufs/i_op_add.c
 --- /usr/share/empty/fs/aufs/i_op_add.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op_add.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/i_op_add.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,921 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -20609,9 +20603,9 @@ diff -urN /usr/share/empty/fs/aufs/i_op_add.c linux/fs/aufs/i_op_add.c
 +}
 diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 --- /usr/share/empty/fs/aufs/i_op.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/i_op.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,1460 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -20653,7 +20647,7 @@ diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 +	if (((mask & MAY_EXEC)
 +	     && S_ISREG(h_inode->i_mode)
 +	     && (path_noexec(h_path)
-+		 || !(h_inode->i_mode & S_IXUGO))))
++		 || !(h_inode->i_mode & 0111))))
 +		goto out;
 +
 +	/*
@@ -21948,7 +21942,7 @@ diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 +	return (inode->i_mode & (S_IFBLK | S_IFCHR | S_IFIFO | S_IFSOCK));
 +}
 +
-+static int aufs_update_time(struct inode *inode, struct timespec *ts, int flags)
++static int aufs_update_time(struct inode *inode, struct timespec64 *ts, int flags)
 +{
 +	int err;
 +	aufs_bindex_t bindex;
@@ -22073,9 +22067,9 @@ diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 +};
 diff -urN /usr/share/empty/fs/aufs/i_op_del.c linux/fs/aufs/i_op_del.c
 --- /usr/share/empty/fs/aufs/i_op_del.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op_del.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/i_op_del.c	2018-08-12 23:43:05.456791299 +0200
 @@ -0,0 +1,512 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -22589,9 +22583,9 @@ diff -urN /usr/share/empty/fs/aufs/i_op_del.c linux/fs/aufs/i_op_del.c
 +}
 diff -urN /usr/share/empty/fs/aufs/i_op_ren.c linux/fs/aufs/i_op_ren.c
 --- /usr/share/empty/fs/aufs/i_op_ren.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/i_op_ren.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/i_op_ren.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,1247 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -24043,9 +24037,9 @@ diff -urN /usr/share/empty/fs/aufs/Kconfig linux/fs/aufs/Kconfig
 +endif
 diff -urN /usr/share/empty/fs/aufs/loop.c linux/fs/aufs/loop.c
 --- /usr/share/empty/fs/aufs/loop.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/loop.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/loop.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,148 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -24195,7 +24189,7 @@ diff -urN /usr/share/empty/fs/aufs/loop.c linux/fs/aufs/loop.c
 +}
 diff -urN /usr/share/empty/fs/aufs/loop.h linux/fs/aufs/loop.h
 --- /usr/share/empty/fs/aufs/loop.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/loop.h	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/loop.h	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,53 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -24337,9 +24331,9 @@ diff -urN /usr/share/empty/fs/aufs/Makefile linux/fs/aufs/Makefile
 +aufs-$(CONFIG_AUFS_MAGIC_SYSRQ) += sysrq.o
 diff -urN /usr/share/empty/fs/aufs/module.c linux/fs/aufs/module.c
 --- /usr/share/empty/fs/aufs/module.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/module.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/module.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,273 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -24491,12 +24485,12 @@ diff -urN /usr/share/empty/fs/aufs/module.c linux/fs/aufs/module.c
 +/* this module parameter has no meaning when SYSFS is disabled */
 +int sysaufs_brs = 1;
 +MODULE_PARM_DESC(brs, "use <sysfs>/fs/aufs/si_*/brN");
-+module_param_named(brs, sysaufs_brs, int, S_IRUGO);
++module_param_named(brs, sysaufs_brs, int, 0444);
 +
 +/* this module parameter has no meaning when USER_NS is disabled */
 +bool au_userns;
 +MODULE_PARM_DESC(allow_userns, "allow unprivileged to mount under userns");
-+module_param_named(allow_userns, au_userns, bool, S_IRUGO);
++module_param_named(allow_userns, au_userns, bool, 0444);
 +
 +/* ---------------------------------------------------------------------- */
 +
@@ -24614,7 +24608,7 @@ diff -urN /usr/share/empty/fs/aufs/module.c linux/fs/aufs/module.c
 +module_exit(aufs_exit);
 diff -urN /usr/share/empty/fs/aufs/module.h linux/fs/aufs/module.h
 --- /usr/share/empty/fs/aufs/module.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/module.h	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/module.h	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,102 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -24720,9 +24714,9 @@ diff -urN /usr/share/empty/fs/aufs/module.h linux/fs/aufs/module.h
 +#endif /* __AUFS_MODULE_H__ */
 diff -urN /usr/share/empty/fs/aufs/mvdown.c linux/fs/aufs/mvdown.c
 --- /usr/share/empty/fs/aufs/mvdown.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/mvdown.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/mvdown.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,705 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2011-2018 Junjiro R. Okajima
 + *
@@ -25429,9 +25423,9 @@ diff -urN /usr/share/empty/fs/aufs/mvdown.c linux/fs/aufs/mvdown.c
 +}
 diff -urN /usr/share/empty/fs/aufs/opts.c linux/fs/aufs/opts.c
 --- /usr/share/empty/fs/aufs/opts.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/opts.c	2018-07-19 09:46:13.059981241 +0200
++++ linux/fs/aufs/opts.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,1891 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -27324,7 +27318,7 @@ diff -urN /usr/share/empty/fs/aufs/opts.c linux/fs/aufs/opts.c
 +}
 diff -urN /usr/share/empty/fs/aufs/opts.h linux/fs/aufs/opts.h
 --- /usr/share/empty/fs/aufs/opts.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/opts.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/opts.h	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,225 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -27553,9 +27547,9 @@ diff -urN /usr/share/empty/fs/aufs/opts.h linux/fs/aufs/opts.h
 +#endif /* __AUFS_OPTS_H__ */
 diff -urN /usr/share/empty/fs/aufs/plink.c linux/fs/aufs/plink.c
 --- /usr/share/empty/fs/aufs/plink.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/plink.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/plink.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,516 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -28073,9 +28067,9 @@ diff -urN /usr/share/empty/fs/aufs/plink.c linux/fs/aufs/plink.c
 +}
 diff -urN /usr/share/empty/fs/aufs/poll.c linux/fs/aufs/poll.c
 --- /usr/share/empty/fs/aufs/poll.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/poll.c	2018-07-19 09:46:13.063314675 +0200
-@@ -0,0 +1,54 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++++ linux/fs/aufs/poll.c	2018-08-12 23:43:05.460124736 +0200
+@@ -0,0 +1,51 @@
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -28100,7 +28094,7 @@ diff -urN /usr/share/empty/fs/aufs/poll.c linux/fs/aufs/poll.c
 +
 +#include "aufs.h"
 +
-+__poll_t aufs_poll(struct file *file, poll_table *wait)
++__poll_t aufs_poll(struct file *file, struct poll_table_struct *pt)
 +{
 +	__poll_t mask;
 +	struct file *h_file;
@@ -28117,10 +28111,7 @@ diff -urN /usr/share/empty/fs/aufs/poll.c linux/fs/aufs/poll.c
 +		goto out;
 +	}
 +
-+	/* it is not an error if h_file has no operation */
-+	mask = DEFAULT_POLLMASK;
-+	if (h_file->f_op->poll)
-+		mask = h_file->f_op->poll(h_file, wait);
++	mask = vfs_poll(h_file, pt);
 +	fput(h_file); /* instead of au_read_post() */
 +
 +out:
@@ -28131,9 +28122,9 @@ diff -urN /usr/share/empty/fs/aufs/poll.c linux/fs/aufs/poll.c
 +}
 diff -urN /usr/share/empty/fs/aufs/posix_acl.c linux/fs/aufs/posix_acl.c
 --- /usr/share/empty/fs/aufs/posix_acl.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/posix_acl.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/posix_acl.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,103 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2014-2018 Junjiro R. Okajima
 + *
@@ -28238,9 +28229,9 @@ diff -urN /usr/share/empty/fs/aufs/posix_acl.c linux/fs/aufs/posix_acl.c
 +}
 diff -urN /usr/share/empty/fs/aufs/procfs.c linux/fs/aufs/procfs.c
 --- /usr/share/empty/fs/aufs/procfs.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/procfs.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/procfs.c	2018-08-12 23:43:05.460124736 +0200
 @@ -0,0 +1,171 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2010-2018 Junjiro R. Okajima
 + *
@@ -28397,7 +28388,7 @@ diff -urN /usr/share/empty/fs/aufs/procfs.c linux/fs/aufs/procfs.c
 +	if (unlikely(!au_procfs_dir))
 +		goto out;
 +
-+	entry = proc_create(AUFS_PLINK_MAINT_NAME, S_IFREG | S_IWUSR,
++	entry = proc_create(AUFS_PLINK_MAINT_NAME, S_IFREG | 0200,
 +			    au_procfs_dir, &au_procfs_plm_fop);
 +	if (unlikely(!entry))
 +		goto out_dir;
@@ -28413,9 +28404,9 @@ diff -urN /usr/share/empty/fs/aufs/procfs.c linux/fs/aufs/procfs.c
 +}
 diff -urN /usr/share/empty/fs/aufs/rdu.c linux/fs/aufs/rdu.c
 --- /usr/share/empty/fs/aufs/rdu.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/rdu.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/rdu.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,382 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -28799,7 +28790,7 @@ diff -urN /usr/share/empty/fs/aufs/rdu.c linux/fs/aufs/rdu.c
 +#endif
 diff -urN /usr/share/empty/fs/aufs/rwsem.h linux/fs/aufs/rwsem.h
 --- /usr/share/empty/fs/aufs/rwsem.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/rwsem.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/rwsem.h	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,73 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -28876,9 +28867,9 @@ diff -urN /usr/share/empty/fs/aufs/rwsem.h linux/fs/aufs/rwsem.h
 +#endif /* __AUFS_RWSEM_H__ */
 diff -urN /usr/share/empty/fs/aufs/sbinfo.c linux/fs/aufs/sbinfo.c
 --- /usr/share/empty/fs/aufs/sbinfo.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/sbinfo.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/sbinfo.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,312 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -29192,9 +29183,9 @@ diff -urN /usr/share/empty/fs/aufs/sbinfo.c linux/fs/aufs/sbinfo.c
 +}
 diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
 --- /usr/share/empty/fs/aufs/super.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/super.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/super.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,1043 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -30239,7 +30230,7 @@ diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
 +};
 diff -urN /usr/share/empty/fs/aufs/super.h linux/fs/aufs/super.h
 --- /usr/share/empty/fs/aufs/super.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/super.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/super.h	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,627 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -30870,9 +30861,9 @@ diff -urN /usr/share/empty/fs/aufs/super.h linux/fs/aufs/super.h
 +#endif /* __AUFS_SUPER_H__ */
 diff -urN /usr/share/empty/fs/aufs/sysaufs.c linux/fs/aufs/sysaufs.c
 --- /usr/share/empty/fs/aufs/sysaufs.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/sysaufs.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/sysaufs.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,93 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -30967,7 +30958,7 @@ diff -urN /usr/share/empty/fs/aufs/sysaufs.c linux/fs/aufs/sysaufs.c
 +}
 diff -urN /usr/share/empty/fs/aufs/sysaufs.h linux/fs/aufs/sysaufs.h
 --- /usr/share/empty/fs/aufs/sysaufs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/sysaufs.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/sysaufs.h	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,102 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -31073,9 +31064,9 @@ diff -urN /usr/share/empty/fs/aufs/sysaufs.h linux/fs/aufs/sysaufs.h
 +#endif /* __SYSAUFS_H__ */
 diff -urN /usr/share/empty/fs/aufs/sysfs.c linux/fs/aufs/sysfs.c
 --- /usr/share/empty/fs/aufs/sysfs.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/sysfs.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/sysfs.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,373 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -31391,7 +31382,7 @@ diff -urN /usr/share/empty/fs/aufs/sysfs.c linux/fs/aufs/sysfs.c
 +		attr = &br_sysfs->attr;
 +		sysfs_attr_init(attr);
 +		attr->name = br_sysfs->name;
-+		attr->mode = S_IRUGO;
++		attr->mode = 0444;
 +		br_sysfs++;
 +	}
 +}
@@ -31450,9 +31441,9 @@ diff -urN /usr/share/empty/fs/aufs/sysfs.c linux/fs/aufs/sysfs.c
 +}
 diff -urN /usr/share/empty/fs/aufs/sysrq.c linux/fs/aufs/sysrq.c
 --- /usr/share/empty/fs/aufs/sysrq.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/sysrq.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/sysrq.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,160 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -31565,7 +31556,7 @@ diff -urN /usr/share/empty/fs/aufs/sysrq.c linux/fs/aufs/sysrq.c
 +
 +/* module parameter */
 +static char *aufs_sysrq_key = "a";
-+module_param_named(sysrq, aufs_sysrq_key, charp, S_IRUGO);
++module_param_named(sysrq, aufs_sysrq_key, charp, 0444);
 +MODULE_PARM_DESC(sysrq, "MagicSysRq key for " AUFS_NAME);
 +
 +static void au_sysrq(int key __maybe_unused)
@@ -31614,9 +31605,9 @@ diff -urN /usr/share/empty/fs/aufs/sysrq.c linux/fs/aufs/sysrq.c
 +}
 diff -urN /usr/share/empty/fs/aufs/vdir.c linux/fs/aufs/vdir.c
 --- /usr/share/empty/fs/aufs/vdir.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vdir.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/vdir.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,894 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -32512,9 +32503,9 @@ diff -urN /usr/share/empty/fs/aufs/vdir.c linux/fs/aufs/vdir.c
 +}
 diff -urN /usr/share/empty/fs/aufs/vfsub.c linux/fs/aufs/vfsub.c
 --- /usr/share/empty/fs/aufs/vfsub.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vfsub.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/vfsub.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,895 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -33411,7 +33402,7 @@ diff -urN /usr/share/empty/fs/aufs/vfsub.c linux/fs/aufs/vfsub.c
 +}
 diff -urN /usr/share/empty/fs/aufs/vfsub.h linux/fs/aufs/vfsub.h
 --- /usr/share/empty/fs/aufs/vfsub.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/vfsub.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/vfsub.h	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,355 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -33642,8 +33633,8 @@ diff -urN /usr/share/empty/fs/aufs/vfsub.h linux/fs/aufs/vfsub.h
 +}
 +#endif
 +
-+static inline int vfsub_update_time(struct inode *h_inode, struct timespec *ts,
-+				    int flags)
++static inline int vfsub_update_time(struct inode *h_inode,
++				    struct timespec64 *ts, int flags)
 +{
 +	return update_time(h_inode, ts, flags);
 +	/* no vfsub_update_h_iattr() since we don't have struct path */
@@ -33770,9 +33761,9 @@ diff -urN /usr/share/empty/fs/aufs/vfsub.h linux/fs/aufs/vfsub.h
 +#endif /* __AUFS_VFSUB_H__ */
 diff -urN /usr/share/empty/fs/aufs/wbr_policy.c linux/fs/aufs/wbr_policy.c
 --- /usr/share/empty/fs/aufs/wbr_policy.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/wbr_policy.c	2018-07-19 09:46:13.063314675 +0200
-@@ -0,0 +1,831 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++++ linux/fs/aufs/wbr_policy.c	2018-08-12 23:43:05.463458173 +0200
+@@ -0,0 +1,830 @@
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -33901,8 +33892,7 @@ diff -urN /usr/share/empty/fs/aufs/wbr_policy.c linux/fs/aufs/wbr_policy.c
 +		goto out;
 +	h_path.dentry = au_h_dptr(dentry, bdst);
 +	h_path.mnt = au_sbr_mnt(dentry->d_sb, bdst);
-+	err = vfsub_sio_mkdir(au_h_iptr(dir, bdst), &h_path,
-+			      S_IRWXU | S_IRUGO | S_IXUGO);
++	err = vfsub_sio_mkdir(au_h_iptr(dir, bdst), &h_path, 0755);
 +	if (unlikely(err))
 +		goto out_put;
 +	au_fset_cpdown(*flags, MADE_DIR);
@@ -34605,9 +34595,9 @@ diff -urN /usr/share/empty/fs/aufs/wbr_policy.c linux/fs/aufs/wbr_policy.c
 +};
 diff -urN /usr/share/empty/fs/aufs/whout.c linux/fs/aufs/whout.c
 --- /usr/share/empty/fs/aufs/whout.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/whout.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/whout.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,1062 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -34631,7 +34621,7 @@ diff -urN /usr/share/empty/fs/aufs/whout.c linux/fs/aufs/whout.c
 +
 +#include "aufs.h"
 +
-+#define WH_MASK			S_IRUGO
++#define WH_MASK			0444
 +
 +/*
 + * If a directory contains this file, then it is opaque.  We start with the
@@ -34924,10 +34914,10 @@ diff -urN /usr/share/empty/fs/aufs/whout.c linux/fs/aufs/whout.c
 +
 +	err = -EEXIST;
 +	if (d_is_negative(path->dentry)) {
-+		int mode = S_IRWXU;
++		int mode = 0700;
 +
 +		if (au_test_nfs(path->dentry->d_sb))
-+			mode |= S_IXUGO;
++			mode |= 0111;
 +		err = vfsub_mkdir(h_dir, path, mode);
 +	} else if (d_is_dir(path->dentry))
 +		err = 0;
@@ -35671,7 +35661,7 @@ diff -urN /usr/share/empty/fs/aufs/whout.c linux/fs/aufs/whout.c
 +}
 diff -urN /usr/share/empty/fs/aufs/whout.h linux/fs/aufs/whout.h
 --- /usr/share/empty/fs/aufs/whout.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/whout.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/whout.h	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,86 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -35761,9 +35751,9 @@ diff -urN /usr/share/empty/fs/aufs/whout.h linux/fs/aufs/whout.h
 +#endif /* __AUFS_WHOUT_H__ */
 diff -urN /usr/share/empty/fs/aufs/wkq.c linux/fs/aufs/wkq.c
 --- /usr/share/empty/fs/aufs/wkq.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/wkq.c	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/wkq.c	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,391 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -36156,7 +36146,7 @@ diff -urN /usr/share/empty/fs/aufs/wkq.c linux/fs/aufs/wkq.c
 +}
 diff -urN /usr/share/empty/fs/aufs/wkq.h linux/fs/aufs/wkq.h
 --- /usr/share/empty/fs/aufs/wkq.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/wkq.h	2018-07-19 09:46:13.063314675 +0200
++++ linux/fs/aufs/wkq.h	2018-08-12 23:43:05.463458173 +0200
 @@ -0,0 +1,94 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -36254,9 +36244,9 @@ diff -urN /usr/share/empty/fs/aufs/wkq.h linux/fs/aufs/wkq.h
 +#endif /* __AUFS_WKQ_H__ */
 diff -urN /usr/share/empty/fs/aufs/xattr.c linux/fs/aufs/xattr.c
 --- /usr/share/empty/fs/aufs/xattr.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/xattr.c	2018-07-19 09:46:13.066648108 +0200
++++ linux/fs/aufs/xattr.c	2018-08-12 23:43:05.466791610 +0200
 @@ -0,0 +1,356 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2014-2018 Junjiro R. Okajima
 + *
@@ -36614,9 +36604,9 @@ diff -urN /usr/share/empty/fs/aufs/xattr.c linux/fs/aufs/xattr.c
 +}
 diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 --- /usr/share/empty/fs/aufs/xino.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/xino.c	2018-07-19 09:46:13.066648108 +0200
++++ linux/fs/aufs/xino.c	2018-08-12 23:43:05.466791610 +0200
 @@ -0,0 +1,1593 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
++// SPDX-License-Identifier: GPL-2.0
 +/*
 + * Copyright (C) 2005-2018 Junjiro R. Okajima
 + *
@@ -36773,7 +36763,7 @@ diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 +	 */
 +	file = vfsub_filp_open(fpath, O_RDWR | O_CREAT | O_EXCL | O_LARGEFILE
 +			       /* | __FMODE_NONOTIFY */,
-+			       S_IRUGO | S_IWUGO);
++			       0666);
 +	if (IS_ERR(file)) {
 +		if (!silent)
 +			pr_err("open %s(%ld)\n", fpath, PTR_ERR(file));
@@ -36849,7 +36839,7 @@ diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 +	}
 +
 +	/* no need to mnt_want_write() since we call dentry_open() later */
-+	err = vfs_create(dir, path.dentry, S_IRUGO | S_IWUGO, NULL);
++	err = vfs_create(dir, path.dentry, 0666, NULL);
 +	if (unlikely(err)) {
 +		file = ERR_PTR(err);
 +		pr_err("%pd create err %d\n", dentry, err);
@@ -38211,7 +38201,7 @@ diff -urN /usr/share/empty/fs/aufs/xino.c linux/fs/aufs/xino.c
 +}
 diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/linux/aufs_type.h
 --- /usr/share/empty/include/uapi/linux/aufs_type.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux/include/uapi/linux/aufs_type.h	2018-07-19 09:46:13.066648108 +0200
++++ linux/include/uapi/linux/aufs_type.h	2018-08-12 23:43:05.466791610 +0200
 @@ -0,0 +1,448 @@
 +/* SPDX-License-Identifier: GPL-2.0 */
 +/*
@@ -38255,7 +38245,7 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +
 +#include <linux/limits.h>
 +
-+#define AUFS_VERSION	"4.17-20180716"
++#define AUFS_VERSION	"4.x-rcN-20180730"
 +
 +/* todo? move this to linux-2.6.19/include/magic.h */
 +#define AUFS_SUPER_MAGIC	('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
@@ -38662,13 +38652,13 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +
 +#endif /* __AUFS_TYPE_H__ */
 SPDX-License-Identifier: GPL-2.0
-aufs4.17 loopback patch
+aufs4.x-rcN loopback patch
 
 diff --git a/drivers/block/loop.c b/drivers/block/loop.c
-index bc965e5..852868a 100644
+index 5678bf8..ec9c4fb 100644
 --- a/drivers/block/loop.c
 +++ b/drivers/block/loop.c
-@@ -622,6 +622,15 @@ static inline void loop_update_dio(struct loop_device *lo)
+@@ -626,6 +626,15 @@ static inline void loop_update_dio(struct loop_device *lo)
  			lo->use_dio);
  }
  
@@ -38684,7 +38674,7 @@ index bc965e5..852868a 100644
  static void loop_reread_partitions(struct loop_device *lo,
  				   struct block_device *bdev)
  {
-@@ -656,6 +665,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -690,6 +699,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
  			  unsigned int arg)
  {
  	struct file	*file, *old_file;
@@ -38692,10 +38682,10 @@ index bc965e5..852868a 100644
  	struct inode	*inode;
  	int		error;
  
-@@ -672,9 +682,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
- 	error = loop_validate_file(file, bdev);
- 	if (error)
- 		goto out_putf;
+@@ -706,6 +716,12 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+ 	file = fget(arg);
+ 	if (!file)
+ 		goto out;
 +	f = loop_real_file(file);
 +	if (f) {
 +		virt_file = file;
@@ -38703,13 +38693,17 @@ index bc965e5..852868a 100644
 +		get_file(file);
 +	}
  
+ 	error = loop_validate_file(file, bdev);
+ 	if (error)
+@@ -713,6 +729,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+ 
  	inode = file->f_mapping->host;
  	old_file = lo->lo_backing_file;
 +	old_virt_file = lo->lo_backing_virt_file;
  
  	error = -EINVAL;
  
-@@ -689,6 +706,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -724,6 +741,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
  	blk_mq_freeze_queue(lo->lo_queue);
  	mapping_set_gfp_mask(old_file->f_mapping, lo->old_gfp_mask);
  	lo->lo_backing_file = file;
@@ -38717,7 +38711,7 @@ index bc965e5..852868a 100644
  	lo->old_gfp_mask = mapping_gfp_mask(file->f_mapping);
  	mapping_set_gfp_mask(file->f_mapping,
  			     lo->old_gfp_mask & ~(__GFP_IO|__GFP_FS));
-@@ -696,12 +714,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -731,12 +749,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
  	blk_mq_unfreeze_queue(lo->lo_queue);
  
  	fput(old_file);
@@ -38734,7 +38728,7 @@ index bc965e5..852868a 100644
   out:
  	return error;
  }
-@@ -895,7 +917,7 @@ static int loop_prepare_queue(struct loop_device *lo)
+@@ -924,7 +946,7 @@ static int loop_prepare_queue(struct loop_device *lo)
  static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  		       struct block_device *bdev, unsigned int arg)
  {
@@ -38743,7 +38737,7 @@ index bc965e5..852868a 100644
  	struct inode	*inode;
  	struct address_space *mapping;
  	int		lo_flags = 0;
-@@ -909,6 +931,12 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
+@@ -938,6 +960,12 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  	file = fget(arg);
  	if (!file)
  		goto out;
@@ -38756,7 +38750,7 @@ index bc965e5..852868a 100644
  
  	error = -EBUSY;
  	if (lo->lo_state != Lo_unbound)
-@@ -957,6 +985,7 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
+@@ -970,6 +998,7 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  	lo->lo_device = bdev;
  	lo->lo_flags = lo_flags;
  	lo->lo_backing_file = file;
@@ -38764,7 +38758,7 @@ index bc965e5..852868a 100644
  	lo->transfer = NULL;
  	lo->ioctl = NULL;
  	lo->lo_sizelimit = 0;
-@@ -990,6 +1019,8 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
+@@ -1003,6 +1032,8 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  
   out_putf:
  	fput(file);
@@ -38773,7 +38767,7 @@ index bc965e5..852868a 100644
   out:
  	/* This is safe: open() is still holding a reference. */
  	module_put(THIS_MODULE);
-@@ -1036,6 +1067,7 @@ loop_init_xfer(struct loop_device *lo, struct loop_func_table *xfer,
+@@ -1049,6 +1080,7 @@ loop_init_xfer(struct loop_device *lo, struct loop_func_table *xfer,
  static int loop_clr_fd(struct loop_device *lo)
  {
  	struct file *filp = lo->lo_backing_file;
@@ -38781,7 +38775,7 @@ index bc965e5..852868a 100644
  	gfp_t gfp = lo->old_gfp_mask;
  	struct block_device *bdev = lo->lo_device;
  
-@@ -1067,6 +1099,7 @@ static int loop_clr_fd(struct loop_device *lo)
+@@ -1080,6 +1112,7 @@ static int loop_clr_fd(struct loop_device *lo)
  	spin_lock_irq(&lo->lo_lock);
  	lo->lo_state = Lo_rundown;
  	lo->lo_backing_file = NULL;
@@ -38789,7 +38783,7 @@ index bc965e5..852868a 100644
  	spin_unlock_irq(&lo->lo_lock);
  
  	loop_release_xfer(lo);
-@@ -1115,6 +1148,8 @@ static int loop_clr_fd(struct loop_device *lo)
+@@ -1128,6 +1161,8 @@ static int loop_clr_fd(struct loop_device *lo)
  	 * bd_mutex which is usually taken before lo_ctl_mutex.
  	 */
  	fput(filp);
@@ -38799,7 +38793,7 @@ index bc965e5..852868a 100644
  }
  
 diff --git a/drivers/block/loop.h b/drivers/block/loop.h
-index b78de98..2bbbd92 100644
+index 4d42c7a..a4974ee 100644
 --- a/drivers/block/loop.h
 +++ b/drivers/block/loop.h
 @@ -46,7 +46,7 @@ struct loop_device {
@@ -38812,7 +38806,7 @@ index b78de98..2bbbd92 100644
  	void		*key_data; 
  
 diff --git a/fs/aufs/f_op.c b/fs/aufs/f_op.c
-index 7ca7f67..3d4e90d 100644
+index 937a20d..1355656 100644
 --- a/fs/aufs/f_op.c
 +++ b/fs/aufs/f_op.c
 @@ -358,7 +358,7 @@ static ssize_t aufs_read_iter(struct kiocb *kio, struct iov_iter *iov_iter)
@@ -38825,7 +38819,7 @@ index 7ca7f67..3d4e90d 100644
  		if (file->f_mapping != h_file->f_mapping) {
  			file->f_mapping = h_file->f_mapping;
 diff --git a/fs/aufs/loop.c b/fs/aufs/loop.c
-index 2d65b8f..5ed7903 100644
+index 3d84349..a642de5 100644
 --- a/fs/aufs/loop.c
 +++ b/fs/aufs/loop.c
 @@ -133,3 +133,19 @@ void au_loopback_fin(void)
@@ -38874,7 +38868,7 @@ index 05d703d..6bb23c8 100644
  
  #endif /* __KERNEL__ */
 diff --git a/fs/aufs/super.c b/fs/aufs/super.c
-index eed37ba..a3a5cd7 100644
+index 4020639..13e315f 100644
 --- a/fs/aufs/super.c
 +++ b/fs/aufs/super.c
 @@ -840,7 +840,10 @@ static const struct super_operations aufs_sop = {
@@ -38890,10 +38884,10 @@ index eed37ba..a3a5cd7 100644
  
  /* ---------------------------------------------------------------------- */
 diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 09a2542..11a6346 100644
+index 0d0d247f..50d77f8 100644
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -1852,6 +1852,10 @@ struct super_operations {
+@@ -1861,6 +1861,10 @@ struct super_operations {
  				  struct shrink_control *);
  	long (*free_cached_objects)(struct super_block *,
  				    struct shrink_control *);
diff --git a/kernel-multiarch.config b/kernel-multiarch.config
index d1bf19ef..b42326e8 100644
--- a/kernel-multiarch.config
+++ b/kernel-multiarch.config
@@ -3,10 +3,6 @@
 #- *** FILE: arch/* - ARCH SPECIFIC OPTIONS ***
 #-
 ARCH_MEMORY_PROBE all=n
-CC_STACKPROTECTOR_AUTO all=n
-CC_STACKPROTECTOR_NONE all=n
-CC_STACKPROTECTOR_REGULAR all=n
-CC_STACKPROTECTOR_STRONG all=y
 DEBUG_ENTRY all=n
 DEBUG_IMR_SELFTEST all=n
 DEBUG_WX all=y
@@ -41,6 +37,8 @@ RANDOMIZE_MEMORY all=y
 RAS_CEC all=y
 REFCOUNT_FULL all=n
 SCHED_MC_PRIO all=y
+STACKPROTECTOR all=y
+STACKPROTECTOR_STRONG all=y
 STATIC_KEYS_SELFTEST all=y
 UNWINDER_FRAME_POINTER all=n
 UNWINDER_ORC all=y
@@ -162,6 +160,17 @@ CRYPTO_TEST all=m
 CRYPTO_CCM all=m
 CRYPTO_GCM all=m
 CRYPTO_CHACHA20POLY1305 all=m
+CRYPTO_AEGIS128 all=m
+CRYPTO_AEGIS128L all=m
+CRYPTO_AEGIS256 all=m
+CRYPTO_AEGIS128_AESNI_SSE2 all=m
+CRYPTO_AEGIS128L_AESNI_SSE2 all=m
+CRYPTO_AEGIS256_AESNI_SSE2 all=m
+CRYPTO_MORUS640 all=m
+CRYPTO_MORUS640_SSE2 all=m
+CRYPTO_MORUS1280 all=m
+CRYPTO_MORUS1280_SSE2 all=m
+CRYPTO_MORUS1280_AVX2 all=m
 CRYPTO_SEQIV all=m
 CRYPTO_ECHAINIV all=m
 #- Block modes
@@ -233,8 +242,6 @@ CRYPTO_DES3_EDE_X86_64 all=m
 CRYPTO_FCRYPT all=m
 CRYPTO_KHAZAD all=m
 CRYPTO_SALSA20 all=m
-CRYPTO_SALSA20_586 all=m
-CRYPTO_SALSA20_X86_64 x86_64=m
 CRYPTO_CHACHA20 all=m
 CRYPTO_CHACHA20_X86_64 all=m
 CRYPTO_SEED all=m
@@ -257,6 +264,7 @@ CRYPTO_LZO all=y
 CRYPTO_842 all=m
 CRYPTO_LZ4 all=m
 CRYPTO_LZ4HC all=m
+CRYPTO_ZSTD all=m
 #- Random Number Generation
 CRYPTO_ANSI_CPRNG all=m
 CRYPTO_DRBG_MENU all=m
@@ -515,9 +523,7 @@ DEVTMPFS all=y
 DEVTMPFS_MOUNT all=y
 STANDALONE all=n
 PREVENT_FIRMWARE_BUILD all=y
-EXTRA_FIRMWARE all=""
-FW_LOADER_USER_HELPER all=y
-FW_LOADER_USER_HELPER_FALLBACK all=n
+#- file drivers/base/firmware_loader/Kconfig goes here
 WANT_DEV_COREDUMP all=y
 DEV_COREDUMP all=y
 DEBUG_DRIVER all=n
@@ -535,6 +541,13 @@ CMA_SIZE_SEL_MIN all=n
 CMA_SIZE_SEL_MAX all=n
 CMA_ALIGNMENT all=8
 
+#-
+#- *** FILE: drivers/base/firmware_loader/Kconfig ***
+#-
+EXTRA_FIRMWARE all=""
+FW_LOADER_USER_HELPER all=y
+FW_LOADER_USER_HELPER_FALLBACK all=n
+
 #-
 #- *** FILE: drivers/base/regmap/Kconfig ***
 #-
@@ -639,6 +652,7 @@ PARIDE_ON26 all=m
 #-
 ZRAM all=m
 ZRAM_WRITEBACK all=y
+ZRAM_MEMORY_TRACKING all=y
 
 #-
 #- *** FILE: drivers/bluetooth/Kconfig ***
@@ -762,7 +776,6 @@ HW_RANDOM_EXYNOS all=m
 #- *** FILE: drivers/char/ipmi/Kconfig ***
 #-
 IPMI_HANDLER all=m
-IPMI_PROC_INTERFACE all=y
 IPMI_PANIC_EVENT all=n
 IPMI_DEVICE_INTERFACE all=m
 IPMI_SI all=m
@@ -824,6 +837,7 @@ COMMON_CLK_CDCE706 all=m
 COMMON_CLK_CS2000_CP all=m
 COMMON_CLK_PWM all=m
 COMMON_CLK_OXNAS all=n
+#- file drivers/clk/actions/Kconfig goes here
 #- file drivers/clk/bcm/Kconfig goes here
 #- file drivers/clk/hisilicon/Kconfig goes here
 #- file drivers/clk/imgtec/Kconfig goes here
@@ -1010,6 +1024,7 @@ TIMB_DMA all=m
 #- file drivers/dma/dw/Kconfig goes here
 #- file drivers/dma/hsu/Kconfig goes here
 #- file drivers/dma/sh/Kconfig goes here
+#- file drivers/dma/ti/Kconfig goes here
 #- DMA Clients
 ASYNC_TX_DMA all=y
 DMATEST all=n
@@ -1145,6 +1160,7 @@ GOOGLE_SMI all=m
 GOOGLE_COREBOOT_TABLE_ACPI all=m
 GOOGLE_MEMCONSOLE all=m
 GOOGLE_MEMCONSOLE_X86_LEGACY all=m
+GOOGLE_FRAMEBUFFER_COREBOOT all=m
 GOOGLE_MEMCONSOLE_COREBOOT all=m
 GOOGLE_VPD all=m
 
@@ -1166,6 +1182,7 @@ FPGA_MGR_ALTERA_PS_SPI all=m
 FPGA_MGR_ALTERA_CVP all=m
 FPGA_MGR_ZYNQ_FPGA all=m
 FPGA_MGR_XILINX_SPI all=m
+FPGA_MGR_MACHXO2_SPI all=m
 FPGA_BRIDGE all=m
 XILINX_PR_DECOUPLER all=m
 FPGA_REGION all=m
@@ -1182,6 +1199,7 @@ FSI_SCOM all=m
 #- *** FILE: drivers/gpio/Kconfig ***
 #-
 GPIOLIB all=y
+GPIOLIB_FASTPATH_LIMIT all=512
 DEBUG_GPIO all=n
 GPIO_SYSFS all=y
 GPIO_AMDPT all=m
@@ -1255,7 +1273,7 @@ GPIO_VIPERBOARD all=m
 #-
 DRM all=m
 DRM_DP_AUX_CHARDEV all=y
-DRM_DEBUG_MM_SELFTEST all=m
+DRM_DEBUG_SELFTEST all=n
 DRM_FBDEV_EMULATION all=y
 DRM_FBDEV_OVERALLOC all=100
 DRM_LOAD_EDID_FIRMWARE all=y
@@ -1296,6 +1314,7 @@ DRM_VGEM all=m
 #- file drivers/gpu/drm/sti/Kconfig goes here
 #- file drivers/gpu/drm/amd/amdkfd/Kconfig goes here
 #- file drivers/gpu/drm/imx/Kconfig goes here
+#- file drivers/gpu/drm/v3d/Kconfig goes here
 #- file drivers/gpu/drm/vc4/Kconfig goes here
 #- file drivers/gpu/drm/etnaviv/Kconfig goes here
 #- file drivers/gpu/drm/arc/Kconfig goes here
@@ -1307,6 +1326,7 @@ DRM_VGEM all=m
 #- file drivers/gpu/drm/tinydrm/Kconfig goes here
 #- file drivers/gpu/drm/pl111/Kconfig goes here
 #- file drivers/gpu/drm/tve200/Kconfig goes here
+#- file drivers/gpu/drm/xen/Kconfig goes here
 DRM_LEGACY all=n
 DRM_TDFX all=m
 DRM_R128 all=m
@@ -1340,7 +1360,6 @@ HSA_AMD all=m
 #- *** FILE: drivers/gpu/drm/amd/display/Kconfig ***
 #-
 DRM_AMD_DC all=y
-DRM_AMD_DC_PRE_VEGA all=y
 DRM_AMD_DC_FBC all=y
 DRM_AMD_DC_DCN1_0 all=y
 DEBUG_KERNEL_DC all=n
@@ -1397,6 +1416,7 @@ DRM_HISI_HIBMC all=m
 DRM_I2C_CH7006 all=m
 DRM_I2C_SIL164 all=m
 DRM_I2C_NXP_TDA998X all=m
+DRM_I2C_NXP_TDA9950 all=m
 
 #-
 #- *** FILE: drivers/gpu/drm/i915/Kconfig ***
@@ -1465,6 +1485,12 @@ DRM_VIRTIO_GPU all=m
 DRM_VMWGFX all=m
 DRM_VMWGFX_FBCON all=y
 
+#-
+#- *** FILE: drivers/gpu/drm/xen/Kconfig ***
+#-
+DRM_XEN all=y
+DRM_XEN_FRONTEND all=m
+
 #-
 #- *** FILE: drivers/gpu/vga/Kconfig ***
 #-
@@ -1531,6 +1557,7 @@ LOGIG940_FF all=y
 LOGIWHEELS_FF all=y
 HID_MAGICMOUSE all=m
 HID_MAYFLASH all=m
+HID_REDRAGON all=m
 HID_MICROSOFT all=m
 HID_MONTEREY all=m
 HID_MULTITOUCH all=m
@@ -1555,6 +1582,7 @@ HID_SAMSUNG all=m
 HID_SONY all=m
 SONY_FF all=y
 HID_SPEEDLINK all=m
+HID_STEAM all=m
 HID_STEELSERIES all=m
 HID_SUNPLUS all=m
 HID_RMI all=m
@@ -2020,6 +2048,7 @@ IIO_SW_DEVICE all=m
 IIO_SW_TRIGGER all=m
 #- file drivers/iio/accel/Kconfig goes here
 #- file drivers/iio/adc/Kconfig goes here
+#- file drivers/iio/afe/Kconfig goes here
 #- file drivers/iio/amplifiers/Kconfig goes here
 #- file drivers/iio/chemical/Kconfig goes here
 #- file drivers/iio/common/Kconfig goes here
@@ -2040,11 +2069,14 @@ IIO_SW_TRIGGER all=m
 #- file drivers/iio/potentiostat/Kconfig goes here
 #- file drivers/iio/pressure/Kconfig goes here
 #- file drivers/iio/proximity/Kconfig goes here
+#- file drivers/iio/resolver/Kconfig goes here
 #- file drivers/iio/temperature/Kconfig goes here
 
 #-
 #- *** FILE: drivers/iio/accel/Kconfig ***
 #-
+ADIS16201 all=m
+ADIS16209 all=m
 BMA180 all=m
 BMA220 all=m
 BMC150_ACCEL all=m
@@ -2173,6 +2205,8 @@ AD5504 all=m
 AD5624R_SPI all=m
 LTC2632 all=m
 AD5686 all=m
+AD5686_SPI all=m
+AD5696_I2C all=m
 AD5755 all=m
 AD5761 all=m
 AD5764 all=m
@@ -2186,6 +2220,7 @@ MAX517 all=m
 MCP4725 all=m
 MCP4922 all=m
 TI_DAC082S085 all=m
+TI_DAC5571 all=m
 
 #-
 #- *** FILE: drivers/iio/dummy/Kconfig ***
@@ -2300,6 +2335,7 @@ TCS3414 all=m
 TCS3472 all=m
 SENSORS_TSL2563 all=m
 TSL2583 all=m
+TSL2772 all=m
 TSL4531 all=m
 US5182D all=m
 VCNL4000 all=m
@@ -2377,6 +2413,11 @@ SRF04 all=m
 SX9500 all=m
 SRF08 all=m
 
+#-
+#- *** FILE: drivers/iio/resolver/Kconfig ***
+#-
+AD2S1200 all=m
+
 #-
 #- *** FILE: drivers/iio/temperature/Kconfig ***
 #-
@@ -2662,6 +2703,7 @@ KEYBOARD_TM2_TOUCHKEY all=m
 KEYBOARD_TWL4030 powerpc=m
 KEYBOARD_XTKBD all=m
 KEYBOARD_CROS_EC all=m
+KEYBOARD_MTK_PMIC all=m
 
 #-
 #- *** FILE: drivers/input/misc/Kconfig ***
@@ -2812,6 +2854,7 @@ TOUCHSCREEN_ATMEL_MXT all=m
 TOUCHSCREEN_ATMEL_MXT_T37 all=y
 TOUCHSCREEN_AUO_PIXCIR all=m
 TOUCHSCREEN_BU21013 all=m
+TOUCHSCREEN_CHIPONE_ICN8505 all=m
 TOUCHSCREEN_CY8CTMG110 all=m
 TOUCHSCREEN_CYTTSP_CORE all=m
 TOUCHSCREEN_CYTTSP_I2C all=m
@@ -3053,6 +3096,7 @@ LEDS_AS3645A all=m
 LEDS_LM3530 all=m
 LEDS_LM3533 all=m
 LEDS_LM3642 all=m
+LEDS_LM3601X all=m
 LEDS_MT6323 all=m
 LEDS_NET48XX i386=m
 LEDS_WRAP i386=m
@@ -3188,6 +3232,7 @@ DM_SNAPSHOT all=m
 DM_THIN_PROVISIONING all=m
 DM_CACHE all=m
 DM_CACHE_SMQ all=m
+DM_WRITECACHE all=m
 DM_ERA all=m
 DM_MIRROR all=m
 DM_LOG_USERSPACE all=m
@@ -3465,7 +3510,6 @@ MEDIA_PCI_SUPPORT all=y
 #- file drivers/media/pci/tw5864/Kconfig goes here
 #- file drivers/media/pci/tw68/Kconfig goes here
 #- file drivers/media/pci/tw686x/Kconfig goes here
-#- file drivers/media/pci/zoran/Kconfig goes here
 #- Media capture/analog TV support
 #- file drivers/media/pci/ivtv/Kconfig goes here
 #- file drivers/media/pci/saa7146/Kconfig goes here
@@ -3661,24 +3705,13 @@ VIDEO_TW68 all=m
 #-
 VIDEO_TW686X all=m
 
-#-
-#- *** FILE: drivers/media/pci/zoran/Kconfig ***
-#-
-VIDEO_ZORAN all=m ppc=n sparc=n
-VIDEO_ZORAN_DC30 all=m
-VIDEO_ZORAN_ZR36060 all=m
-VIDEO_ZORAN_BUZ all=m
-VIDEO_ZORAN_DC10 all=m
-VIDEO_ZORAN_LML33 all=m
-VIDEO_ZORAN_LML33R10 all=m
-VIDEO_ZORAN_AVS6EYES all=m
-
 #-
 #- *** FILE: drivers/media/platform/Kconfig ***
 #-
 V4L_PLATFORM_DRIVERS all=y
 #- file drivers/media/platform/marvell-ccic/Kconfig goes here
 VIDEO_VIA_CAMERA all=m
+#- file drivers/media/platform/cadence/Kconfig goes here
 #- file drivers/media/platform/davinci/Kconfig goes here
 #- file drivers/media/platform/omap/Kconfig goes here
 #- file drivers/media/platform/soc_camera/Kconfig goes here
@@ -3699,6 +3732,13 @@ DVB_PLATFORM_DRIVERS all=y
 CEC_PLATFORM_DRIVERS all=y
 SDR_PLATFORM_DRIVERS all=y
 
+#-
+#- *** FILE: drivers/media/platform/cadence/Kconfig ***
+#-
+VIDEO_CADENCE all=y
+VIDEO_CADENCE_CSI2RX all=m
+VIDEO_CADENCE_CSI2TX all=m
+
 #-
 #- *** FILE: drivers/media/platform/marvell-ccic/Kconfig ***
 #-
@@ -3720,7 +3760,6 @@ VIDEO_SH_MOBILE_CEU all=m
 #- *** FILE: drivers/media/radio/Kconfig ***
 #-
 RADIO_ADAPTERS all=y
-RADIO_SI470X all=y
 #- file drivers/media/radio/si470x/Kconfig goes here
 RADIO_SI4713 all=m
 #- file drivers/media/radio/si4713/Kconfig goes here
@@ -3755,6 +3794,7 @@ RADIO_ZOLTRIX alpha=m i386=m
 #-
 #- *** FILE: drivers/media/radio/si470x/Kconfig ***
 #-
+RADIO_SI470X all=y
 USB_SI470X all=m
 I2C_SI470X all=m
 
@@ -4720,6 +4760,7 @@ FUJITSU_ES all=m
 THUNDERBOLT_NET all=m
 #- file drivers/net/hyperv/Kconfig goes here
 NETDEVSIM all=m
+NET_FAILOVER all=m
 
 #-
 #- *** FILE: drivers/net/appletalk/Kconfig ***
@@ -4928,9 +4969,9 @@ WD80x3 alpha=m i386=m
 #- file drivers/net/ethernet/arc/Kconfig goes here
 #- file drivers/net/ethernet/atheros/Kconfig goes here
 #- file drivers/net/ethernet/aurora/Kconfig goes here
-#- file drivers/net/ethernet/cadence/Kconfig goes here
 #- file drivers/net/ethernet/broadcom/Kconfig goes here
 #- file drivers/net/ethernet/brocade/Kconfig goes here
+#- file drivers/net/ethernet/cadence/Kconfig goes here
 #- file drivers/net/ethernet/calxeda/Kconfig goes here
 #- file drivers/net/ethernet/cavium/Kconfig goes here
 #- file drivers/net/ethernet/chelsio/Kconfig goes here
@@ -4944,16 +4985,16 @@ DNET all=m
 #- file drivers/net/ethernet/dlink/Kconfig goes here
 #- file drivers/net/ethernet/emulex/Kconfig goes here
 #- file drivers/net/ethernet/ezchip/Kconfig goes here
-#- file drivers/net/ethernet/neterion/Kconfig goes here
 #- file drivers/net/ethernet/faraday/Kconfig goes here
 #- file drivers/net/ethernet/freescale/Kconfig goes here
 #- file drivers/net/ethernet/fujitsu/Kconfig goes here
 #- file drivers/net/ethernet/hisilicon/Kconfig goes here
 #- file drivers/net/ethernet/hp/Kconfig goes here
 #- file drivers/net/ethernet/huawei/Kconfig goes here
+#- file drivers/net/ethernet/i825xx/Kconfig goes here
 #- file drivers/net/ethernet/ibm/Kconfig goes here
 #- file drivers/net/ethernet/intel/Kconfig goes here
-#- file drivers/net/ethernet/i825xx/Kconfig goes here
+#- file drivers/net/ethernet/neterion/Kconfig goes here
 #- file drivers/net/ethernet/xscale/Kconfig goes here
 JME all=m
 #- file drivers/net/ethernet/marvell/Kconfig goes here
@@ -4962,6 +5003,7 @@ JME all=m
 #- file drivers/net/ethernet/micrel/Kconfig goes here
 #- file drivers/net/ethernet/microchip/Kconfig goes here
 #- file drivers/net/ethernet/moxa/Kconfig goes here
+#- file drivers/net/ethernet/mscc/Kconfig goes here
 #- file drivers/net/ethernet/myricom/Kconfig goes here
 FEALNX all=m
 #- file drivers/net/ethernet/natsemi/Kconfig goes here
@@ -4977,20 +5019,21 @@ ETHOC all=m
 #- file drivers/net/ethernet/pasemi/Kconfig goes here
 #- file drivers/net/ethernet/qlogic/Kconfig goes here
 #- file drivers/net/ethernet/qualcomm/Kconfig goes here
+#- file drivers/net/ethernet/rdc/Kconfig goes here
 #- file drivers/net/ethernet/realtek/Kconfig goes here
 #- file drivers/net/ethernet/renesas/Kconfig goes here
-#- file drivers/net/ethernet/rdc/Kconfig goes here
 #- file drivers/net/ethernet/rocker/Kconfig goes here
 #- file drivers/net/ethernet/samsung/Kconfig goes here
 #- file drivers/net/ethernet/seeq/Kconfig goes here
-#- file drivers/net/ethernet/silan/Kconfig goes here
-#- file drivers/net/ethernet/sis/Kconfig goes here
 #- file drivers/net/ethernet/sfc/Kconfig goes here
 #- file drivers/net/ethernet/sgi/Kconfig goes here
+#- file drivers/net/ethernet/silan/Kconfig goes here
+#- file drivers/net/ethernet/sis/Kconfig goes here
 #- file drivers/net/ethernet/smsc/Kconfig goes here
 #- file drivers/net/ethernet/socionext/Kconfig goes here
 #- file drivers/net/ethernet/stmicro/Kconfig goes here
 #- file drivers/net/ethernet/sun/Kconfig goes here
+#- file drivers/net/ethernet/synopsys/Kconfig goes here
 #- file drivers/net/ethernet/tehuti/Kconfig goes here
 #- file drivers/net/ethernet/ti/Kconfig goes here
 #- file drivers/net/ethernet/toshiba/Kconfig goes here
@@ -4999,7 +5042,6 @@ ETHOC all=m
 #- file drivers/net/ethernet/wiznet/Kconfig goes here
 #- file drivers/net/ethernet/xilinx/Kconfig goes here
 #- file drivers/net/ethernet/xircom/Kconfig goes here
-#- file drivers/net/ethernet/synopsys/Kconfig goes here
 
 #-
 #- *** FILE: drivers/net/ethernet/adaptec/Kconfig ***
@@ -5321,6 +5363,7 @@ MLX5_ESWITCH all=y
 MLX5_CORE_EN_DCB all=y
 MLX5_CORE_IPOIB all=y
 MLX5_EN_IPSEC all=y
+MLX5_EN_TLS all=y
 
 #-
 #- *** FILE: drivers/net/ethernet/mellanox/mlxfw/Kconfig ***
@@ -5359,6 +5402,13 @@ ENC28J60_WRITEVERIFY all=n
 ENCX24J600 all=m
 LAN743X all=m
 
+#-
+#- *** FILE: drivers/net/ethernet/mscc/Kconfig ***
+#-
+NET_VENDOR_MICROSEMI all=y
+MSCC_OCELOT_SWITCH all=m
+MSCC_OCELOT_SWITCH_OCELOT all=m
+
 #-
 #- *** FILE: drivers/net/ethernet/myricom/Kconfig ***
 #-
@@ -5387,6 +5437,7 @@ VXGE_DEBUG_TRACE_ALL all=n
 NET_VENDOR_NETRONOME all=y
 NFP all=m
 NFP_APP_FLOWER all=y
+NFP_APP_ABM_NIC all=y
 NFP_DEBUG all=n
 
 #-
@@ -5677,13 +5728,16 @@ MDIO_BCM_UNIMAC all=m
 MDIO_BITBANG all=m
 MDIO_CAVIUM all=m
 MDIO_GPIO all=m
+MDIO_MSCC_MIIM all=m
 MDIO_OCTEON all=m
 MDIO_THUNDER all=m
 PHYLIB all=y
 LED_TRIGGER_PHY all=y
 #- MII PHY device drivers
+SFP all=m
 AMD_PHY all=m
 AQUANTIA_PHY all=m
+ASIX_PHY all=m
 AT803X_PHY all=m
 BCM63XX_PHY all=m
 BCM7XXX_PHY all=m
@@ -5693,6 +5747,7 @@ CICADA_PHY all=m
 CORTINA_PHY all=m
 DAVICOM_PHY all=m
 DP83822_PHY all=m
+DP83TC811_PHY all=m
 DP83848_PHY all=m
 DP83867_PHY all=m
 FIXED_PHY all=y
@@ -5704,6 +5759,7 @@ MARVELL_PHY all=m
 MARVELL_10G_PHY all=m
 MICREL_PHY all=m
 MICROCHIP_PHY all=m
+MICROCHIP_T1_PHY all=m
 MICROSEMI_PHY all=m
 NATIONAL_PHY all=m
 QSEMI_PHY all=m
@@ -6451,6 +6507,7 @@ NVME_TARGET_FCLOOP all=m
 #- *** FILE: drivers/nvmem/Kconfig ***
 #-
 NVMEM all=y
+RAVE_SP_EEPROM all=m
 
 #-
 #- *** FILE: drivers/of/Kconfig ***
@@ -6489,6 +6546,7 @@ PCI_QUIRKS all=y
 PCI_DEBUG all=n
 PCI_REALLOC_ENABLE_AUTO all=y
 PCI_STUB all=m
+PCI_PF_STUB all=m
 XEN_PCIDEV_FRONTEND all=m
 PCI_IOV all=y
 PCI_PRI all=y
@@ -6496,17 +6554,17 @@ PCI_PASID all=y
 PCI_LABEL all=y
 PCI_HYPERV all=m
 #- file drivers/pci/hotplug/Kconfig goes here
-#- file drivers/pci/cadence/Kconfig goes here
-#- file drivers/pci/dwc/Kconfig goes here
-#- file drivers/pci/host/Kconfig goes here
+#- file drivers/pci/controller/Kconfig goes here
 #- file drivers/pci/endpoint/Kconfig goes here
 #- file drivers/pci/switch/Kconfig goes here
 
 #-
-#- *** FILE: drivers/pci/dwc/Kconfig ***
+#- *** FILE: drivers/pci/controller/dwc/Kconfig ***
 #-
 PCIE_DW all=y
 PCIE_DW_PLAT all=y
+PCIE_DW_PLAT_HOST all=y
+PCIE_DW_PLAT_EP all=y
 
 #-
 #- *** FILE: drivers/pci/endpoint/Kconfig ***
@@ -6532,7 +6590,7 @@ HOTPLUG_PCI_ACPI_IBM all=m
 HOTPLUG_PCI_CPCI all=y
 HOTPLUG_PCI_CPCI_ZT5550 i386=m x86_64=m
 HOTPLUG_PCI_CPCI_GENERIC i386=m x86_64=m
-HOTPLUG_PCI_SHPC all=m
+HOTPLUG_PCI_SHPC all=y
 HOTPLUG_PCI_RPA ppc64=n
 HOTPLUG_PCI_SGI ia64=m
 
@@ -6541,7 +6599,9 @@ HOTPLUG_PCI_SGI ia64=m
 #-
 PCIEPORTBUS all=y
 HOTPLUG_PCI_PCIE all=y
-#- file drivers/pci/pcie/aer/Kconfig goes here
+PCIEAER all=y
+PCIEAER_INJECT all=m
+PCIE_ECRC all=y
 PCIEASPM all=y
 PCIEASPM_DEBUG all=n
 PCIEASPM_DEFAULT all=y
@@ -6551,18 +6611,6 @@ PCIEASPM_PERFORMANCE all=n
 PCIE_DPC all=y
 PCIE_PTM all=y
 
-#-
-#- *** FILE: drivers/pci/pcie/aer/Kconfig ***
-#-
-PCIEAER all=y
-PCIE_ECRC all=y
-#- file drivers/pci/pcie/aer/Kconfig.debug goes here
-
-#-
-#- *** FILE: drivers/pci/pcie/aer/Kconfig.debug ***
-#-
-PCIEAER_INJECT all=m
-
 #-
 #- *** FILE: drivers/pci/switch/Kconfig ***
 #-
@@ -6656,6 +6704,7 @@ GENERIC_PINCONF all=y
 DEBUG_PINCTRL all=n
 PINCTRL_AMD all=y
 PINCTRL_MCP23S08 all=m
+#- file drivers/pinctrl/actions/Kconfig goes here
 #- file drivers/pinctrl/aspeed/Kconfig goes here
 #- file drivers/pinctrl/bcm/Kconfig goes here
 #- file drivers/pinctrl/berlin/Kconfig goes here
@@ -6698,6 +6747,7 @@ PINCTRL_SUNRISEPOINT all=m
 CHROME_PLATFORMS all=y
 CHROMEOS_LAPTOP all=m
 CHROMEOS_PSTORE all=m
+CHROMEOS_TBMC all=m
 CROS_EC_LPC all=m
 CROS_EC_LPC_MEC all=y
 CROS_KBD_LED_BACKLIGHT all=m
@@ -7186,7 +7236,6 @@ RTC_DRV_HID_SENSOR_TIME all=m
 SUN_OPENPROMIO sparc=m sparc64=m
 OBP_FLASH sparc64=m
 TADPOLE_TS102_UCTRL sparc=m
-SUN_JSFLASH sparc=m
 BBC_I2C sparc64=m
 ENVCTRL sparc64=m
 DISPLAY7SEG sparc64=m
@@ -7574,8 +7623,6 @@ SSB_DRIVER_GPIO all=y
 #- *** FILE: drivers/staging/Kconfig ***
 #-
 STAGING all=y
-#- file drivers/staging/ipx/Kconfig goes here
-#- file drivers/staging/ncpfs/Kconfig goes here
 #- file drivers/staging/wlan-ng/Kconfig goes here
 #- file drivers/staging/comedi/Kconfig goes here
 #- file drivers/staging/olpc_dcon/Kconfig goes here
@@ -7604,7 +7651,6 @@ STAGING all=y
 #- file drivers/staging/goldfish/Kconfig goes here
 #- file drivers/staging/netlogic/Kconfig goes here
 #- file drivers/staging/mt29f_spinand/Kconfig goes here
-#- file drivers/staging/lustre/Kconfig goes here
 #- file drivers/staging/dgnc/Kconfig goes here
 #- file drivers/staging/gs_fpgaboot/Kconfig goes here
 #- file drivers/staging/skein/Kconfig goes here
@@ -7819,7 +7865,6 @@ LTE_GDM724X all=m
 #- *** FILE: drivers/staging/goldfish/Kconfig ***
 #-
 GOLDFISH_AUDIO all=m
-MTD_GOLDFISH_NAND all=m
 
 #-
 #- *** FILE: drivers/staging/greybus/Kconfig ***
@@ -7853,9 +7898,7 @@ GS_FPGABOOT all=m
 #-
 #- *** FILE: drivers/staging/iio/accel/Kconfig ***
 #-
-ADIS16201 all=m
 ADIS16203 all=m
-ADIS16209 all=m
 ADIS16240 all=m
 
 #-
@@ -7899,18 +7942,9 @@ ADIS16060 all=m
 #-
 AD5933 all=m
 
-#-
-#- *** FILE: drivers/staging/iio/light/Kconfig ***
-#-
-TSL2x7x all=m
-
 #-
 #- *** FILE: drivers/staging/iio/meter/Kconfig ***
 #-
-ADE7753 all=m
-ADE7754 all=m
-ADE7758 all=m
-ADE7759 all=m
 ADE7854 all=m
 ADE7854_I2C all=m
 ADE7854_SPI all=m
@@ -7919,39 +7953,17 @@ ADE7854_SPI all=m
 #- *** FILE: drivers/staging/iio/resolver/Kconfig ***
 #-
 AD2S90 all=m
-AD2S1200 all=m
 AD2S1210 all=m
 
-#-
-#- *** FILE: drivers/staging/ipx/Kconfig ***
-#-
-IPX all=m
-IPX_INTERN all=n
-
 #-
 #- *** FILE: drivers/staging/ks7010/Kconfig ***
 #-
 KS7010 all=m
 
-#-
-#- *** FILE: drivers/staging/lustre/lnet/Kconfig ***
-#-
-LNET all=m
-LNET_MAX_PAYLOAD all=1048576
-LNET_SELFTEST all=m
-LNET_XPRT_IB all=m
-
-#-
-#- *** FILE: drivers/staging/lustre/lustre/Kconfig ***
-#-
-LUSTRE_FS all=m
-LUSTRE_DEBUG_EXPENSIVE_CHECK all=n
-
 #-
 #- *** FILE: drivers/staging/media/Kconfig ***
 #-
 STAGING_MEDIA all=y
-#- file drivers/staging/media/atomisp/Kconfig goes here
 #- file drivers/staging/media/bcm2048/Kconfig goes here
 #- file drivers/staging/media/davinci_vpfe/Kconfig goes here
 #- file drivers/staging/media/imx/Kconfig goes here
@@ -7959,35 +7971,7 @@ STAGING_MEDIA all=y
 #- file drivers/staging/media/mt9t031/Kconfig goes here
 #- file drivers/staging/media/omap4iss/Kconfig goes here
 #- file drivers/staging/media/tegra-vde/Kconfig goes here
-
-#-
-#- *** FILE: drivers/staging/media/atomisp/Kconfig ***
-#-
-INTEL_ATOMISP all=y
-#- file drivers/staging/media/atomisp/pci/Kconfig goes here
-#- file drivers/staging/media/atomisp/i2c/Kconfig goes here
-
-#-
-#- *** FILE: drivers/staging/media/atomisp/i2c/Kconfig ***
-#-
-#- file drivers/staging/media/atomisp/i2c/ov5693/Kconfig goes here
-VIDEO_ATOMISP_OV2722 all=m
-VIDEO_ATOMISP_GC2235 all=m
-VIDEO_ATOMISP_MSRLIST_HELPER all=m
-VIDEO_ATOMISP_MT9M114 all=m
-VIDEO_ATOMISP_GC0310 all=m
-VIDEO_ATOMISP_OV2680 all=m
-VIDEO_ATOMISP_LM3554 all=m
-
-#-
-#- *** FILE: drivers/staging/media/atomisp/i2c/ov5693/Kconfig ***
-#-
-VIDEO_ATOMISP_OV5693 all=m
-
-#-
-#- *** FILE: drivers/staging/media/atomisp/pci/Kconfig ***
-#-
-VIDEO_ATOMISP all=m
+#- file drivers/staging/media/zoran/Kconfig goes here
 
 #-
 #- *** FILE: drivers/staging/media/bcm2048/Kconfig ***
@@ -8004,6 +7988,18 @@ SOC_CAMERA_IMX074 all=m
 #-
 SOC_CAMERA_MT9T031 all=m
 
+#-
+#- *** FILE: drivers/staging/media/zoran/Kconfig ***
+#-
+VIDEO_ZORAN all=m ppc=n sparc=n
+VIDEO_ZORAN_DC30 all=m
+VIDEO_ZORAN_ZR36060 all=m
+VIDEO_ZORAN_BUZ all=m
+VIDEO_ZORAN_DC10 all=m
+VIDEO_ZORAN_LML33 all=m
+VIDEO_ZORAN_LML33R10 all=m
+VIDEO_ZORAN_AVS6EYES all=m
+
 #-
 #- *** FILE: drivers/staging/most/Kconfig ***
 #-
@@ -8064,19 +8060,6 @@ MTK_MMC all=m
 MTK_AEE_KDUMP all=y
 MTK_MMC_CD_POLL all=y
 
-#-
-#- *** FILE: drivers/staging/ncpfs/Kconfig ***
-#-
-NCP_FS all=m
-NCPFS_PACKET_SIGNING all=y
-NCPFS_IOCTL_LOCKING all=y
-NCPFS_STRONG all=y
-NCPFS_NFS_NS all=y
-NCPFS_OS2_NS all=y
-NCPFS_SMALLDOS all=y
-NCPFS_NLS all=y
-NCPFS_EXTRAS all=y
-
 #-
 #- *** FILE: drivers/staging/pi433/Kconfig ***
 #-
@@ -8161,6 +8144,7 @@ SPEAKUP_SYNTH_DUMMY all=m
 #- *** FILE: drivers/staging/typec/Kconfig ***
 #-
 TYPEC_TCPCI all=m
+TYPEC_RT1711H all=m
 
 #-
 #- *** FILE: drivers/staging/unisys/Kconfig ***
@@ -8504,7 +8488,6 @@ USB_XUSBATM all=m
 USB_CHIPIDEA all=m
 USB_CHIPIDEA_UDC all=y
 USB_CHIPIDEA_HOST all=y
-USB_CHIPIDEA_ULPI all=y
 
 #-
 #- *** FILE: drivers/usb/class/Kconfig ***
@@ -8639,6 +8622,7 @@ USB_NET2272_DMA all=y
 USB_NET2280 all=m
 USB_GOKU all=m
 USB_EG20T all=m
+#- file drivers/usb/gadget/udc/aspeed-vhub/Kconfig goes here
 USB_DUMMY_HCD all=m
 
 #-
@@ -8994,6 +8978,7 @@ BACKLIGHT_GPIO all=m
 BACKLIGHT_LV5207LP all=m
 BACKLIGHT_BD6107 all=m
 BACKLIGHT_ARCXCNN all=m
+BACKLIGHT_RAVE_SP all=m
 
 #-
 #- *** FILE: drivers/video/console/Kconfig ***
@@ -9133,9 +9118,6 @@ FB_MB862XX all=m
 FB_MB862XX_PCI_GDC all=y
 FB_MB862XX_I2C all=y
 FB_BROADSHEET all=m
-FB_AUO_K190X all=m
-FB_AUO_K1900 all=m
-FB_AUO_K1901 all=m
 FB_HYPERV all=m
 FB_SIMPLE all=y
 #- file drivers/video/fbdev/omap/Kconfig goes here
@@ -9395,7 +9377,7 @@ MANDATORY_FILE_LOCKING all=y
 #- file fs/crypto/Kconfig goes here
 #- file fs/notify/Kconfig goes here
 #- file fs/quota/Kconfig goes here
-#- file fs/autofs4/Kconfig goes here
+#- file fs/autofs/Kconfig goes here
 #- file fs/fuse/Kconfig goes here
 #- file fs/overlayfs/Kconfig goes here
 #- file fs/fscache/Kconfig goes here
@@ -9492,9 +9474,10 @@ AUFS_FHSM all=y
 AUFS_DIRREN all=y
 
 #-
-#- *** FILE: fs/autofs4/Kconfig ***
+#- *** FILE: fs/autofs/Kconfig ***
 #-
 AUTOFS4_FS all=m
+AUTOFS_FS all=m
 
 #-
 #- *** FILE: fs/befs/Kconfig ***
@@ -9981,7 +9964,6 @@ UBIFS_FS_SECURITY all=y
 #- *** FILE: fs/udf/Kconfig ***
 #-
 UDF_FS all=m
-UDF_NLS all=y
 
 #-
 #- *** FILE: fs/ufs/Kconfig ***
@@ -9998,6 +9980,7 @@ XFS_QUOTA all=y
 XFS_POSIX_ACL all=y
 XFS_RT all=n
 XFS_ONLINE_SCRUB all=y
+XFS_ONLINE_REPAIR all=y
 XFS_WARN all=n
 XFS_DEBUG all=n
 
@@ -10006,7 +9989,6 @@ XFS_DEBUG all=n
 #-
 DEFCONFIG_LIST all="/lib/modules/$UNAME_RELEASE/.config"
 INIT_ENV_ARG_LIMIT all=32
-CROSS_COMPILE all=""
 COMPILE_TEST all=n
 LOCALVERSION_AUTO all=y
 HAVE_KERNEL_GZIP all=y
@@ -10154,6 +10136,11 @@ PREEMPT_NONE all=n sparc64=y
 PREEMPT_VOLUNTARY all=y sparc64=n
 PREEMPT all=n
 
+#-
+#- *** FILE: kernel/dma/Kconfig ***
+#-
+HAS_DMA all=y
+
 #-
 #- *** FILE: kernel/gcov/Kconfig ***
 #-
@@ -10293,7 +10280,7 @@ TEXTSEARCH_KMP all=m
 TEXTSEARCH_BM all=m
 TEXTSEARCH_FSM all=m
 HAS_IOMEM all=y
-HAS_DMA all=y
+#- file kernel/dma/Kconfig goes here
 CHECK_SIGNATURE all=y
 CPU_RMAP all=y
 GLOB_SELFTEST all=n
@@ -10414,6 +10401,7 @@ TEST_KSTRTOX all=m
 TEST_PRINTF all=m
 TEST_BITMAP all=m
 TEST_UUID all=m
+TEST_OVERFLOW all=m
 TEST_RHASHTABLE all=n
 TEST_HASH all=m
 TEST_PARMAN all=m
@@ -10579,6 +10567,7 @@ NET all=y
 #- file net/xfrm/Kconfig goes here
 #- file net/iucv/Kconfig goes here
 #- file net/smc/Kconfig goes here
+#- file net/xdp/Kconfig goes here
 INET all=y
 #- file net/ipv4/Kconfig goes here
 #- file net/ipv6/Kconfig goes here
@@ -10593,6 +10582,7 @@ BRIDGE_NETFILTER all=m
 #- file net/ipv6/netfilter/Kconfig goes here
 #- file net/decnet/netfilter/Kconfig goes here
 #- file net/bridge/netfilter/Kconfig goes here
+#- file net/bpfilter/Kconfig goes here
 #- file net/dccp/Kconfig goes here
 #- file net/sctp/Kconfig goes here
 #- file net/rds/Kconfig goes here
@@ -10654,6 +10644,7 @@ LWTUNNEL_BPF all=y
 DST_CACHE all=y
 NET_DEVLINK all=m
 MAY_USE_DEVLINK all=m
+FAILOVER all=m
 
 #-
 #- *** FILE: net/atm/Kconfig ***
@@ -10729,6 +10720,12 @@ BT_HIDP all=m
 BT_RFCOMM all=m
 BT_RFCOMM_TTY all=y
 
+#-
+#- *** FILE: net/bpfilter/Kconfig ***
+#-
+BPFILTER all=y
+BPFILTER_UMH all=m
+
 #-
 #- *** FILE: net/bridge/Kconfig ***
 #-
@@ -10740,7 +10737,6 @@ BRIDGE_VLAN_FILTERING all=y
 #- *** FILE: net/bridge/netfilter/Kconfig ***
 #-
 NF_TABLES_BRIDGE all=y
-NFT_BRIDGE_META all=m
 NFT_BRIDGE_REJECT all=m
 NF_LOG_BRIDGE all=m
 BRIDGE_NF_EBTABLES all=m
@@ -10926,6 +10922,7 @@ TCP_MD5SIG all=y
 #-
 NF_CONNTRACK_IPV4 all=m
 NF_SOCKET_IPV4 all=m
+NF_TPROXY_IPV4 all=m
 NF_TABLES_IPV4 all=m
 NFT_CHAIN_ROUTE_IPV4 all=m
 NFT_REJECT_IPV4 all=m
@@ -11000,6 +10997,7 @@ IPV6_SEG6_HMAC all=y
 #-
 NF_CONNTRACK_IPV6 all=m
 NF_SOCKET_IPV6 all=m
+NF_TPROXY_IPV6 all=m
 NF_TABLES_IPV6 all=m
 NFT_CHAIN_ROUTE_IPV6 all=m
 NFT_CHAIN_NAT_IPV6 all=m
@@ -11132,18 +11130,14 @@ NETFILTER_NETLINK_GLUE_CT all=y
 NF_NAT all=m
 NF_NAT_REDIRECT all=m
 NF_TABLES all=m
+NF_TABLES_SET all=m
 NF_TABLES_INET all=y
 NF_TABLES_NETDEV all=y
-NFT_EXTHDR all=m
-NFT_META all=m
-NFT_RT all=m
 NFT_NUMGEN all=m
 NFT_CT all=m
 NFT_FLOW_OFFLOAD all=m
-NFT_SET_RBTREE all=m
-NFT_SET_HASH all=m
-NFT_SET_BITMAP all=m
 NFT_COUNTER all=m
+NFT_CONNLIMIT all=m
 NFT_LOG all=m
 NFT_LIMIT all=m
 NFT_MASQ all=m
@@ -11156,6 +11150,7 @@ NFT_REJECT all=m
 NFT_COMPAT all=m
 NFT_HASH all=m
 NFT_FIB_INET all=m
+NFT_SOCKET all=m
 NF_DUP_NETDEV all=m
 NFT_DUP_NETDEV all=m
 NFT_FWD_NETDEV all=m
@@ -11289,9 +11284,11 @@ IP_VS_LBLC all=m
 IP_VS_LBLCR all=m
 IP_VS_DH all=m
 IP_VS_SH all=m
+IP_VS_MH all=m
 IP_VS_SED all=m
 IP_VS_NQ all=m
 IP_VS_SH_TAB_BITS all=8
+IP_VS_MH_TAB_INDEX all=12
 IP_VS_FTP all=m
 IP_VS_NFCT all=y
 IP_VS_PE_SIP all=m
@@ -11510,6 +11507,7 @@ TIPC_DIAG all=m
 #- *** FILE: net/tls/Kconfig ***
 #-
 TLS all=m
+TLS_DEVICE all=y
 
 #-
 #- *** FILE: net/unix/Kconfig ***
@@ -11550,6 +11548,11 @@ LIB80211_DEBUG all=n
 #-
 X25 all=m
 
+#-
+#- *** FILE: net/xdp/Kconfig ***
+#-
+XDP_SOCKETS all=y
+
 #-
 #- *** FILE: net/xfrm/Kconfig ***
 #-
@@ -11622,6 +11625,7 @@ INTEGRITY_AUDIT all=y
 EVM all=y
 EVM_ATTR_FSUUID all=y
 EVM_EXTRA_SMACK_XATTRS all=y
+EVM_ADD_XATTRS all=y
 EVM_LOAD_X509 all=y
 EVM_X509_PATH all="/etc/keys/x509_evm.der"
 
@@ -11708,6 +11712,7 @@ SND all=m
 #- file sound/soc/Kconfig goes here
 #- file sound/x86/Kconfig goes here
 #- file sound/synth/Kconfig goes here
+#- file sound/xen/Kconfig goes here
 AC97_BUS all=m
 
 #-
@@ -12108,6 +12113,7 @@ SND_SOC_RT5677_SPI all=m
 SND_SOC_SGTL5000 all=m
 SND_SOC_SIRF_AUDIO_CODEC all=m
 SND_SOC_SPDIF all=m
+SND_SOC_SSM2305 all=m
 SND_SOC_SSM2602_SPI all=m
 SND_SOC_SSM2602_I2C all=m
 SND_SOC_SSM4567 all=m
@@ -12130,6 +12136,7 @@ SND_SOC_TLV320AIC32X4_SPI all=m
 SND_SOC_TLV320AIC3X all=m
 SND_SOC_TS3A227E all=m
 SND_SOC_TSCS42XX all=m
+SND_SOC_TSCS454 all=m
 SND_SOC_WM1250_EV1 all=m
 SND_SOC_WM8510 all=m
 SND_SOC_WM8523 all=m
@@ -12144,6 +12151,7 @@ SND_SOC_WM8750 all=m
 SND_SOC_WM8753 all=m
 SND_SOC_WM8770 all=m
 SND_SOC_WM8776 all=m
+SND_SOC_WM8782 all=m
 SND_SOC_WM8804 all=m
 SND_SOC_WM8804_I2C all=m
 SND_SOC_WM8804_SPI all=m
@@ -12157,6 +12165,7 @@ SND_SOC_WM8991 all=m
 SND_SOC_ZX_AUD96P22 all=m
 SND_SOC_LM4857 all=m
 SND_SOC_MAX9759 all=m
+SND_SOC_MT6351 all=m
 SND_SOC_NAU8540 all=m
 SND_SOC_NAU8810 all=m
 SND_SOC_NAU8824 all=m
@@ -12312,6 +12321,11 @@ SND_USB_VARIAX all=m
 SND_X86 all=y
 HDMI_LPE_AUDIO all=m
 
+#-
+#- *** FILE: sound/xen/Kconfig ***
+#-
+SND_XEN_FRONTEND all=m
+
 #-
 #- *** FILE: usr/Kconfig ***
 #-
@@ -12328,13 +12342,29 @@ RD_LZ4 all=y
 #-
 ACT200L_DONGLE all=m
 ACTISYS_DONGLE all=m
+ADE7753 all=m
+ADE7754 all=m
+ADE7758 all=m
+ADE7759 all=m
 ALI_FIR all=m
 BT_HCIBTUART all=m
+CROSS_COMPILE all=""
+CRYPTO_SALSA20_586 all=m
+CRYPTO_SALSA20_X86_64 x86_64=m
 DONGLE all=y
+DRM_AMD_DC_PRE_VEGA all=y
+DRM_DEBUG_MM_SELFTEST all=m
 ESI_DONGLE all=m
+FB_AUO_K1900 all=m
+FB_AUO_K1901 all=m
+FB_AUO_K190X all=m
 GIRBIL_DONGLE all=m
 INFINIBAND_CXGB3_DEBUG all=n sparc=
 INFINIBAND_EXP_USER_ACCESS all=y
+INTEL_ATOMISP all=y
+IPMI_PROC_INTERFACE all=y
+IPX all=m
+IPX_INTERN all=n
 IRCOMM all=m
 IRDA all=m
 IRDA_CACHE_LAST_LSAP all=y
@@ -12347,10 +12377,34 @@ IRTTY_SIR all=m
 KINGSUN_DONGLE all=m
 KS959_DONGLE all=m
 KSDAZZLE_DONGLE all=m
+LCD_OTM3225A all=m
 LITELINK_DONGLE all=m
+LNET all=m
+LNET_MAX_PAYLOAD all=1048576
+LNET_SELFTEST all=m
+LNET_XPRT_IB all=m
+LUSTRE_DEBUG_EXPENSIVE_CHECK all=n
+LUSTRE_FS all=m
 MA600_DONGLE all=m
 MCP2120_DONGLE all=m
 MCS_FIR all=m
+MTD_GOLDFISH_NAND all=m
+NCPFS_EXTRAS all=y
+NCPFS_IOCTL_LOCKING all=y
+NCPFS_NFS_NS all=y
+NCPFS_NLS all=y
+NCPFS_OS2_NS all=y
+NCPFS_PACKET_SIGNING all=y
+NCPFS_SMALLDOS all=y
+NCPFS_STRONG all=y
+NCP_FS all=m
+NFT_BRIDGE_META all=m
+NFT_EXTHDR all=m
+NFT_META all=m
+NFT_RT all=m
+NFT_SET_BITMAP all=m
+NFT_SET_HASH all=m
+NFT_SET_RBTREE all=m
 NSC_FIR all=m
 OLD_BELKIN_DONGLE all=m
 PCMCIA_FDOMAIN all=m
@@ -12364,11 +12418,27 @@ SCSI_NCR53C406A alpha=m i386=m
 SCSI_SYM53C416 alpha=m i386=m
 SIGMATEL_FIR all=m
 SMC_IRCC_FIR all=m
+STACKPROTECTOR_AUTO all=n
+STACKPROTECTOR_NONE all=n
+STACKPROTECTOR_REGULAR all=n
+SUN_JSFLASH sparc=m
 TEKRAM_DONGLE all=m
 TOIM3232_DONGLE all=m
 TOSHIBA_FIR i386=m ppc=n
+TSL2x7x all=m
+UDF_NLS all=y
+USB_CHIPIDEA_ULPI all=y
 USB_IRDA all=m
 VIA_FIR all=m
+VIDEO_ATOMISP all=m
+VIDEO_ATOMISP_GC0310 all=m
+VIDEO_ATOMISP_GC2235 all=m
+VIDEO_ATOMISP_LM3554 all=m
+VIDEO_ATOMISP_MSRLIST_HELPER all=m
+VIDEO_ATOMISP_MT9M114 all=m
+VIDEO_ATOMISP_OV2680 all=m
+VIDEO_ATOMISP_OV2722 all=m
+VIDEO_ATOMISP_OV5693 all=m
 VIDEO_ATOMISP_OV8858 all=m
 VLSI_FIR all=m sparc=n
 WINBOND_FIR all=m
diff --git a/kernel-small_fixes.patch b/kernel-small_fixes.patch
index d4b60349..7fdc8cde 100644
--- a/kernel-small_fixes.patch
+++ b/kernel-small_fixes.patch
@@ -1,28 +1,11 @@
---- linux-2.6.33/scripts/mod/modpost.c~	2010-02-24 19:52:17.000000000 +0100
-+++ linux-2.6.33/scripts/mod/modpost.c	2010-03-07 14:26:47.242168558 +0100
-@@ -15,7 +15,8 @@
- #include <stdio.h>
- #include <ctype.h>
- #include "modpost.h"
--#include "../../include/generated/autoconf.h"
-+// PLD architectures don't use CONFIG_SYMBOL_PREFIX
-+//#include "../../include/generated/autoconf.h"
- #include "../../include/linux/license.h"
+--- linux-4.18/scripts/clang-version.sh~	2018-08-12 22:41:04.000000000 +0200
++++ linux-4.18/scripts/clang-version.sh	2018-08-12 23:52:07.650403870 +0200
+@@ -12,7 +12,7 @@
  
- /* Some toolchains use a `_' prefix for all user symbols. */
-
---- linux-3.0/scripts/kconfig/lxdialog/check-lxdialog.sh~	2011-07-22 04:17:23.000000000 +0200
-+++ linux-3.0/scripts/kconfig/lxdialog/check-lxdialog.sh	2011-08-25 21:26:04.799150642 +0200
-@@ -9,6 +9,12 @@
- 			$cc -print-file-name=lib${lib}.${ext} | grep -q /
- 			if [ $? -eq 0 ]; then
- 				echo "-l${lib}"
-+				for libt in tinfow tinfo ; do
-+					$cc -print-file-name=lib${libt}.${ext} | grep -q /
-+					if [ $? -eq 0 ]; then
-+						echo "-l${libt}"
-+					fi
-+				done
- 				exit
- 			fi
- 		done
+ compiler="$*"
+ 
+-if !( $compiler --version | grep -q clang) ; then
++if ! ( $compiler --version | grep -q clang) ; then
+ 	echo 0
+ 	exit 1
+ fi
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/kernel.git/commitdiff/cd7a4cd993fd096faee514fee7ef72486f9cf447



More information about the pld-cvs-commit mailing list