[packages/kernel] - up to 4.15

arekm arekm at pld-linux.org
Mon Jan 29 09:02:42 CET 2018


commit 2121bcd9351934ee7b11e33abb1918842cef1c11
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Mon Jan 29 09:02:30 2018 +0100

    - up to 4.15

 kernel-aufs4.patch      | 496 ++++++++++++++++++++++++------------------------
 kernel-multiarch.config | 250 ++++++++++++++++--------
 kernel.spec             |   8 +-
 3 files changed, 422 insertions(+), 332 deletions(-)
---
diff --git a/kernel.spec b/kernel.spec
index e0a4ffb6..37aad89d 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -68,9 +68,9 @@
 %define		have_pcmcia	0
 %endif
 
-%define		rel		2
-%define		basever		4.14
-%define		postver		.15
+%define		rel		1
+%define		basever		4.15
+%define		postver		.0
 
 # define this to '-%{basever}' for longterm branch
 %define		versuffix	%{nil}
@@ -119,7 +119,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:	bacdb9ffdcd922aa069a5e1520160e24
+# Source0-md5:	0d701ac1e2a67d47ce7127432df2c32b
 %if "%{postver}" != ".0"
 Patch0:		https://www.kernel.org/pub/linux/kernel/v4.x/patch-%{version}.xz
 # Patch0-md5:	de16c219ce4548d63ff7d6c670340a9e
diff --git a/kernel-aufs4.patch b/kernel-aufs4.patch
index d11a0aa1..7009c6af 100644
--- a/kernel-aufs4.patch
+++ b/kernel-aufs4.patch
@@ -1,3 +1,4 @@
+SPDX-License-Identifier: GPL-2.0
 aufs4.x-rcN kbuild patch
 
 diff --git a/fs/Kconfig b/fs/Kconfig
@@ -13,21 +14,22 @@ index 7aee6d6..ec92031 100644
  endif # MISC_FILESYSTEMS
  
 diff --git a/fs/Makefile b/fs/Makefile
-index 7bbaca9..a026491 100644
+index ef772f1..51779e68c 100644
 --- a/fs/Makefile
 +++ b/fs/Makefile
-@@ -128,3 +128,4 @@ obj-y				+= exofs/ # Multiple modules
+@@ -129,3 +129,4 @@ obj-y				+= exofs/ # Multiple modules
  obj-$(CONFIG_CEPH_FS)		+= ceph/
  obj-$(CONFIG_PSTORE)		+= pstore/
  obj-$(CONFIG_EFIVAR_FS)		+= efivarfs/
 +obj-$(CONFIG_AUFS_FS)           += aufs/
+SPDX-License-Identifier: GPL-2.0
 aufs4.x-rcN base patch
 
 diff --git a/MAINTAINERS b/MAINTAINERS
-index af0cb69..d360d2e 100644
+index 82ad0ea..7d8b461 100644
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -2465,6 +2465,19 @@ F:	include/linux/audit.h
+@@ -2478,6 +2478,19 @@ F:	include/linux/audit.h
  F:	include/uapi/linux/audit.h
  F:	kernel/audit*
  
@@ -48,10 +50,10 @@ index af0cb69..d360d2e 100644
  M:	Miguel Ojeda Sandonis <miguel.ojeda.sandonis at gmail.com>
  W:	http://miguelojeda.es/auxdisplay.htm
 diff --git a/drivers/block/loop.c b/drivers/block/loop.c
-index 85de673..d44de9d 100644
+index bc8e615..e51a59d 100644
 --- a/drivers/block/loop.c
 +++ b/drivers/block/loop.c
-@@ -686,6 +686,24 @@ static inline int is_loop_device(struct file *file)
+@@ -691,6 +691,24 @@ static inline int is_loop_device(struct file *file)
  	return i && S_ISBLK(i->i_mode) && MAJOR(i->i_rdev) == LOOP_MAJOR;
  }
  
@@ -77,7 +79,7 @@ index 85de673..d44de9d 100644
  
  static ssize_t loop_attr_show(struct device *dev, char *page,
 diff --git a/fs/dcache.c b/fs/dcache.c
-index f901413..e3719a5 100644
+index 5c7df1d..019f14b 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
 @@ -1197,7 +1197,7 @@ enum d_walk_ret {
@@ -90,10 +92,10 @@ index f901413..e3719a5 100644
  		   void (*finish)(void *))
  {
 diff --git a/fs/fcntl.c b/fs/fcntl.c
-index 448a111..f51c2cf 100644
+index 0522e28..74c255d 100644
 --- a/fs/fcntl.c
 +++ b/fs/fcntl.c
-@@ -31,7 +31,7 @@
+@@ -32,7 +32,7 @@
  
  #define SETFL_MASK (O_APPEND | O_NONBLOCK | O_NDELAY | O_DIRECT | O_NOATIME)
  
@@ -102,7 +104,7 @@ index 448a111..f51c2cf 100644
  {
  	struct inode * inode = file_inode(filp);
  	int error = 0;
-@@ -62,6 +62,8 @@ static int setfl(int fd, struct file * filp, unsigned long arg)
+@@ -63,6 +63,8 @@ static int setfl(int fd, struct file * filp, unsigned long arg)
  
  	if (filp->f_op->check_flags)
  		error = filp->f_op->check_flags(arg);
@@ -112,7 +114,7 @@ index 448a111..f51c2cf 100644
  		return error;
  
 diff --git a/fs/inode.c b/fs/inode.c
-index d1e35b5..f7800d6 100644
+index 03102d6..517883c 100644
 --- a/fs/inode.c
 +++ b/fs/inode.c
 @@ -1655,7 +1655,7 @@ EXPORT_SYMBOL(generic_update_time);
@@ -125,7 +127,7 @@ index d1e35b5..f7800d6 100644
  	int (*update_time)(struct inode *, struct timespec *, int);
  
 diff --git a/fs/namespace.c b/fs/namespace.c
-index d18deb4..e5a4a7f 100644
+index e158ec6..312bdbd8 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
 @@ -846,6 +846,12 @@ static inline int check_mnt(struct mount *mnt)
@@ -142,10 +144,10 @@ index d18deb4..e5a4a7f 100644
   * vfsmount lock must be held for write
   */
 diff --git a/fs/read_write.c b/fs/read_write.c
-index f0d4b16..6aa8c7a 100644
+index f8547b8..0a5c47b 100644
 --- a/fs/read_write.c
 +++ b/fs/read_write.c
-@@ -483,6 +483,28 @@ ssize_t __vfs_write(struct file *file, const char __user *p, size_t count,
+@@ -484,6 +484,28 @@ ssize_t __vfs_write(struct file *file, const char __user *p, size_t count,
  		return -EINVAL;
  }
  
@@ -175,7 +177,7 @@ index f0d4b16..6aa8c7a 100644
  {
  	mm_segment_t old_fs;
 diff --git a/fs/splice.c b/fs/splice.c
-index f3084cc..eb888c6 100644
+index 39e2dc0..c5fb195 100644
 --- a/fs/splice.c
 +++ b/fs/splice.c
 @@ -837,8 +837,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
@@ -203,10 +205,10 @@ index f3084cc..eb888c6 100644
  	ssize_t (*splice_read)(struct file *, loff_t *,
  			       struct pipe_inode_info *, size_t, unsigned int);
 diff --git a/fs/sync.c b/fs/sync.c
-index a576aa2..eb61780 100644
+index 6e0a2cb..a6891ee 100644
 --- a/fs/sync.c
 +++ b/fs/sync.c
-@@ -27,7 +27,7 @@
+@@ -28,7 +28,7 @@
   * wait == 1 case since in that case write_inode() functions do
   * sync_dirty_buffer() and thus effectively write one block at a time.
   */
@@ -216,10 +218,10 @@ index a576aa2..eb61780 100644
  	if (wait)
  		sync_inodes_sb(sb);
 diff --git a/include/linux/file.h b/include/linux/file.h
-index 61eb82c..e700888 100644
+index 279720d..76e38ea 100644
 --- a/include/linux/file.h
 +++ b/include/linux/file.h
-@@ -19,6 +19,7 @@ struct dentry;
+@@ -20,6 +20,7 @@ struct dentry;
  struct path;
  extern struct file *alloc_file(const struct path *, fmode_t mode,
  	const struct file_operations *fop);
@@ -228,10 +230,10 @@ index 61eb82c..e700888 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 13dab19..8ab6566 100644
+index 511fbaa..96e05b3 100644
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -1264,6 +1264,7 @@ extern void fasync_free(struct fasync_struct *);
+@@ -1265,6 +1265,7 @@ extern void fasync_free(struct fasync_struct *);
  /* can be called from interrupts */
  extern void kill_fasync(struct fasync_struct **, int, int);
  
@@ -239,7 +241,7 @@ index 13dab19..8ab6566 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);
-@@ -1710,6 +1711,7 @@ struct file_operations {
+@@ -1712,6 +1713,7 @@ struct file_operations {
  	ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int);
  	unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, unsigned long);
  	int (*check_flags)(int);
@@ -247,7 +249,7 @@ index 13dab19..8ab6566 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);
-@@ -1780,6 +1782,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
+@@ -1782,6 +1784,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
  			      struct iovec *fast_pointer,
  			      struct iovec **ret_pointer);
  
@@ -260,7 +262,7 @@ index 13dab19..8ab6566 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 *);
-@@ -2182,6 +2190,7 @@ extern int current_umask(void);
+@@ -2201,6 +2209,7 @@ extern int current_umask(void);
  extern void ihold(struct inode * inode);
  extern void iput(struct inode *);
  extern int generic_update_time(struct inode *, struct timespec *, int);
@@ -268,7 +270,7 @@ index 13dab19..8ab6566 100644
  
  /* /sys/fs */
  extern struct kobject *fs_kobj;
-@@ -2462,6 +2471,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
+@@ -2481,6 +2490,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
  	return false;
  }
  #endif
@@ -277,10 +279,10 @@ index 13dab19..8ab6566 100644
  extern const struct file_operations def_blk_fops;
  extern const struct file_operations def_chr_fops;
 diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h
-index bfa8e0b..728d810 100644
+index a842551..453e941 100644
 --- a/include/linux/lockdep.h
 +++ b/include/linux/lockdep.h
-@@ -405,6 +405,8 @@ static inline int lockdep_match_key(struct lockdep_map *lock,
+@@ -406,6 +406,8 @@ static inline int lockdep_match_key(struct lockdep_map *lock,
  	return lock->key == key;
  }
  
@@ -289,7 +291,7 @@ index bfa8e0b..728d810 100644
  /*
   * Acquire a lock.
   *
-@@ -529,6 +531,7 @@ struct lock_class_key { };
+@@ -535,6 +537,7 @@ struct lockdep_map { };
  
  #define lockdep_depth(tsk)	(0)
  
@@ -298,10 +300,10 @@ index bfa8e0b..728d810 100644
  
  #define lockdep_assert_held(l)			do { (void)(l); } while (0)
 diff --git a/include/linux/mnt_namespace.h b/include/linux/mnt_namespace.h
-index 12b2ab5..8b810d1 100644
+index 3594208..24f5fd1 100644
 --- a/include/linux/mnt_namespace.h
 +++ b/include/linux/mnt_namespace.h
-@@ -5,11 +5,14 @@
+@@ -6,11 +6,14 @@
  struct mnt_namespace;
  struct fs_struct;
  struct user_namespace;
@@ -317,10 +319,10 @@ index 12b2ab5..8b810d1 100644
  extern const struct file_operations proc_mountinfo_operations;
  extern const struct file_operations proc_mountstats_operations;
 diff --git a/include/linux/splice.h b/include/linux/splice.h
-index db42746..12f3a5a 100644
+index 74b4911..19789fb 100644
 --- a/include/linux/splice.h
 +++ b/include/linux/splice.h
-@@ -86,4 +86,10 @@ extern void splice_shrink_spd(struct splice_pipe_desc *);
+@@ -87,4 +87,10 @@ extern void splice_shrink_spd(struct splice_pipe_desc *);
  
  extern const struct pipe_buf_operations page_cache_pipe_buf_ops;
  extern const struct pipe_buf_operations default_pipe_buf_ops;
@@ -332,10 +334,10 @@ index db42746..12f3a5a 100644
 +			 unsigned int flags);
  #endif
 diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
-index e36e652..bc97a97 100644
+index 670d8d7..2cd0282 100644
 --- a/kernel/locking/lockdep.c
 +++ b/kernel/locking/lockdep.c
-@@ -144,7 +144,7 @@ static struct lock_list list_entries[MAX_LOCKDEP_ENTRIES];
+@@ -156,7 +156,7 @@ static struct lock_list list_entries[MAX_LOCKDEP_ENTRIES];
  unsigned long nr_lock_classes;
  static struct lock_class lock_classes[MAX_LOCKDEP_KEYS];
  
@@ -344,7 +346,7 @@ index e36e652..bc97a97 100644
  {
  	if (!hlock->class_idx) {
  		/*
-@@ -155,6 +155,7 @@ static inline struct lock_class *hlock_class(struct held_lock *hlock)
+@@ -167,6 +167,7 @@ static inline struct lock_class *hlock_class(struct held_lock *hlock)
  	}
  	return lock_classes + hlock->class_idx - 1;
  }
@@ -352,10 +354,11 @@ index e36e652..bc97a97 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.x-rcN mmap patch
 
 diff --git a/fs/proc/base.c b/fs/proc/base.c
-index ad3b076..ad4a50d 100644
+index 60316b5..ce5314e 100644
 --- a/fs/proc/base.c
 +++ b/fs/proc/base.c
 @@ -1987,7 +1987,7 @@ static int map_files_get_link(struct dentry *dentry, struct path *path)
@@ -384,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 5589b4b..f60aea2 100644
+index 339e4c1..1138098 100644
 --- a/fs/proc/task_mmu.c
 +++ b/fs/proc/task_mmu.c
-@@ -309,7 +309,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) {
@@ -399,7 +402,7 @@ index 5589b4b..f60aea2 100644
  		dev = inode->i_sb->s_dev;
  		ino = inode->i_ino;
  		pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
-@@ -1734,7 +1737,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
+@@ -1736,7 +1739,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
  	struct proc_maps_private *proc_priv = &numa_priv->proc_maps;
  	struct vm_area_struct *vma = v;
  	struct numa_maps *md = &numa_priv->md;
@@ -409,10 +412,10 @@ index 5589b4b..f60aea2 100644
  	struct mm_walk walk = {
  		.hugetlb_entry = gather_hugetlb_stats,
 diff --git a/fs/proc/task_nommu.c b/fs/proc/task_nommu.c
-index b00b7660..93e8a86 100644
+index 5b62f57..dfb4a3b 100644
 --- a/fs/proc/task_nommu.c
 +++ b/fs/proc/task_nommu.c
-@@ -155,7 +155,10 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
+@@ -156,7 +156,10 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
  	file = vma->vm_file;
  
  	if (file) {
@@ -425,10 +428,10 @@ index b00b7660..93e8a86 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 065d99d..04486c3 100644
+index ea818ff..fbd4799 100644
 --- a/include/linux/mm.h
 +++ b/include/linux/mm.h
-@@ -1348,6 +1348,28 @@ static inline int fixup_user_fault(struct task_struct *tsk,
+@@ -1362,6 +1362,28 @@ static inline int fixup_user_fault(struct task_struct *tsk,
  }
  #endif
  
@@ -458,10 +461,10 @@ index 065d99d..04486c3 100644
  		unsigned int gup_flags);
  extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
 diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
-index 1861ea8..d85a914 100644
+index cfd0ac4..135e11c 100644
 --- a/include/linux/mm_types.h
 +++ b/include/linux/mm_types.h
-@@ -260,6 +260,7 @@ struct vm_region {
+@@ -255,6 +255,7 @@ struct vm_region {
  	unsigned long	vm_top;		/* region allocated to here */
  	unsigned long	vm_pgoff;	/* the offset in vm_file corresponding to vm_start */
  	struct file	*vm_file;	/* the backing file or NULL */
@@ -469,7 +472,7 @@ index 1861ea8..d85a914 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
-@@ -334,6 +335,7 @@ struct vm_area_struct {
+@@ -329,6 +330,7 @@ struct vm_area_struct {
  	unsigned long vm_pgoff;		/* Offset (within vm_file) in PAGE_SIZE
  					   units */
  	struct file * vm_file;		/* File we map to (can be NULL). */
@@ -478,7 +481,7 @@ index 1861ea8..d85a914 100644
  
  	atomic_long_t swap_readahead_info;
 diff --git a/kernel/fork.c b/kernel/fork.c
-index 07cc743..b1d2b43 100644
+index 432eadf..8b2ba5b 100644
 --- a/kernel/fork.c
 +++ b/kernel/fork.c
 @@ -676,7 +676,7 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
@@ -491,7 +494,7 @@ index 07cc743..b1d2b43 100644
  				atomic_dec(&inode->i_writecount);
  			i_mmap_lock_write(mapping);
 diff --git a/mm/Makefile b/mm/Makefile
-index e3ac3ae..745b26c 100644
+index e669f02..9c36567 100644
 --- a/mm/Makefile
 +++ b/mm/Makefile
 @@ -39,7 +39,7 @@ obj-y			:= filemap.o mempool.o oom_kill.o \
@@ -504,10 +507,10 @@ index e3ac3ae..745b26c 100644
  obj-y += init-mm.o
  
 diff --git a/mm/filemap.c b/mm/filemap.c
-index 594d73f..7183aef 100644
+index ee83baa..7677d13 100644
 --- a/mm/filemap.c
 +++ b/mm/filemap.c
-@@ -2590,7 +2590,7 @@ int filemap_page_mkwrite(struct vm_fault *vmf)
+@@ -2704,7 +2704,7 @@ int filemap_page_mkwrite(struct vm_fault *vmf)
  	int ret = VM_FAULT_LOCKED;
  
  	sb_start_pagefault(inode->i_sb);
@@ -517,7 +520,7 @@ index 594d73f..7183aef 100644
  	if (page->mapping != inode->i_mapping) {
  		unlock_page(page);
 diff --git a/mm/mmap.c b/mm/mmap.c
-index 680506f..081406a 100644
+index a4d5468..cb06cbd 100644
 --- a/mm/mmap.c
 +++ b/mm/mmap.c
 @@ -171,7 +171,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
@@ -538,7 +541,7 @@ index 680506f..081406a 100644
  		}
  		if (next->anon_vma)
  			anon_vma_merge(vma, next);
-@@ -1746,8 +1746,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
+@@ -1761,8 +1761,8 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
  	return addr;
  
  unmap_and_free_vma:
@@ -548,7 +551,7 @@ index 680506f..081406a 100644
  
  	/* Undo any partial mapping done by a device driver. */
  	unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
-@@ -2569,7 +2569,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2586,7 +2586,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
  		goto out_free_mpol;
  
  	if (new->vm_file)
@@ -557,7 +560,7 @@ index 680506f..081406a 100644
  
  	if (new->vm_ops && new->vm_ops->open)
  		new->vm_ops->open(new);
-@@ -2588,7 +2588,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
+@@ -2605,7 +2605,7 @@ int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
  	if (new->vm_ops && new->vm_ops->close)
  		new->vm_ops->close(new);
  	if (new->vm_file)
@@ -566,7 +569,7 @@ index 680506f..081406a 100644
  	unlink_anon_vmas(new);
   out_free_mpol:
  	mpol_put(vma_policy(new));
-@@ -2750,7 +2750,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
+@@ -2767,7 +2767,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
  	struct vm_area_struct *vma;
  	unsigned long populate = 0;
  	unsigned long ret = -EINVAL;
@@ -575,7 +578,7 @@ index 680506f..081406a 100644
  
  	pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.txt.\n",
  		     current->comm, current->pid);
-@@ -2825,10 +2825,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
+@@ -2842,10 +2842,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
  		}
  	}
  
@@ -604,7 +607,7 @@ index 680506f..081406a 100644
  out:
  	up_write(&mm->mmap_sem);
  	if (populate)
-@@ -3136,7 +3153,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
+@@ -3153,7 +3170,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
  		if (anon_vma_clone(new_vma, vma))
  			goto out_free_mempol;
  		if (new_vma->vm_file)
@@ -659,11 +662,12 @@ index 17c00d9..4bcdf94 100644
  
 diff --git a/mm/prfile.c b/mm/prfile.c
 new file mode 100644
-index 0000000..1ef053b
+index 0000000..3f56669
 --- /dev/null
 +++ b/mm/prfile.c
-@@ -0,0 +1,85 @@
+@@ -0,0 +1,86 @@
 +/*
++ * SPDX-License-Identifier: GPL-2.0
 + * Mainly for aufs which mmap(2) different file and wants to print different
 + * path in /proc/PID/maps.
 + * Call these functions via macros defined in linux/mm.h.
@@ -748,10 +752,11 @@ index 0000000..1ef053b
 +		fput(pr);
 +}
 +#endif /* !CONFIG_MMU */
+SPDX-License-Identifier: GPL-2.0
 aufs4.x-rcN standalone patch
 
 diff --git a/fs/dcache.c b/fs/dcache.c
-index e3719a5..3203470 100644
+index 019f14b..10c1a6d 100644
 --- a/fs/dcache.c
 +++ b/fs/dcache.c
 @@ -1305,6 +1305,7 @@ void d_walk(struct dentry *parent, void *data,
@@ -762,7 +767,7 @@ index e3719a5..3203470 100644
  
  struct check_mount {
  	struct vfsmount *mnt;
-@@ -2894,6 +2895,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
+@@ -2892,6 +2893,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
  
  	write_sequnlock(&rename_lock);
  }
@@ -771,7 +776,7 @@ index e3719a5..3203470 100644
  /**
   * d_ancestor - search for an ancestor
 diff --git a/fs/exec.c b/fs/exec.c
-index 3e14ba2..6818b01 100644
+index 6be2aa0..1e003f9 100644
 --- a/fs/exec.c
 +++ b/fs/exec.c
 @@ -109,6 +109,7 @@ bool path_noexec(const struct path *path)
@@ -783,10 +788,10 @@ index 3e14ba2..6818b01 100644
  #ifdef CONFIG_USELIB
  /*
 diff --git a/fs/fcntl.c b/fs/fcntl.c
-index f51c2cf..58bf222 100644
+index 74c255d..ec53ee1 100644
 --- a/fs/fcntl.c
 +++ b/fs/fcntl.c
-@@ -84,6 +84,7 @@ int setfl(int fd, struct file * filp, unsigned long arg)
+@@ -85,6 +85,7 @@ int setfl(int fd, struct file * filp, unsigned long arg)
   out:
  	return error;
  }
@@ -795,7 +800,7 @@ index f51c2cf..58bf222 100644
  static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
                       int force)
 diff --git a/fs/file_table.c b/fs/file_table.c
-index 61517f5..c6bab39c 100644
+index 2dc9f38..7bf57df 100644
 --- a/fs/file_table.c
 +++ b/fs/file_table.c
 @@ -148,6 +148,7 @@ struct file *get_empty_filp(void)
@@ -831,7 +836,7 @@ index 61517f5..c6bab39c 100644
  void __init files_init(void)
  {
 diff --git a/fs/inode.c b/fs/inode.c
-index f7800d6..f31a6c7 100644
+index 517883c..5cece5e 100644
 --- a/fs/inode.c
 +++ b/fs/inode.c
 @@ -1664,6 +1664,7 @@ int update_time(struct inode *inode, struct timespec *time, int flags)
@@ -843,7 +848,7 @@ index f7800d6..f31a6c7 100644
  /**
   *	touch_atime	-	update the access time
 diff --git a/fs/namespace.c b/fs/namespace.c
-index e5a4a7f..6d0c376 100644
+index 312bdbd8..a5baeb5 100644
 --- a/fs/namespace.c
 +++ b/fs/namespace.c
 @@ -517,6 +517,7 @@ void __mnt_drop_write(struct vfsmount *mnt)
@@ -871,7 +876,7 @@ index e5a4a7f..6d0c376 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 3235753..14a2d48 100644
+index b7a4b6a..5a69d60 100644
 --- a/fs/notify/group.c
 +++ b/fs/notify/group.c
 @@ -22,6 +22,7 @@
@@ -884,14 +889,14 @@ index 3235753..14a2d48 100644
  #include "fsnotify.h"
 @@ -109,6 +110,7 @@ void fsnotify_get_group(struct fsnotify_group *group)
  {
- 	atomic_inc(&group->refcnt);
+ 	refcount_inc(&group->refcnt);
  }
 +EXPORT_SYMBOL_GPL(fsnotify_get_group);
  
  /*
   * Drop a reference to a group.  Free it if it's through.
 @@ -118,6 +120,7 @@ void fsnotify_put_group(struct fsnotify_group *group)
- 	if (atomic_dec_and_test(&group->refcnt))
+ 	if (refcount_dec_and_test(&group->refcnt))
  		fsnotify_final_destroy_group(group);
  }
 +EXPORT_SYMBOL_GPL(fsnotify_put_group);
@@ -907,18 +912,18 @@ index 3235753..14a2d48 100644
  int fsnotify_fasync(int fd, struct file *file, int on)
  {
 diff --git a/fs/notify/mark.c b/fs/notify/mark.c
-index 9991f88..117042c 100644
+index e9191b4..1f8ccfa 100644
 --- a/fs/notify/mark.c
 +++ b/fs/notify/mark.c
-@@ -118,6 +118,7 @@ static bool fsnotify_get_mark_safe(struct fsnotify_mark *mark)
- {
- 	return atomic_inc_not_zero(&mark->refcnt);
+@@ -108,6 +108,7 @@ void fsnotify_get_mark(struct fsnotify_mark *mark)
+ 	WARN_ON_ONCE(!refcount_read(&mark->refcnt));
+ 	refcount_inc(&mark->refcnt);
  }
 +EXPORT_SYMBOL_GPL(fsnotify_put_mark);
  
  static void __fsnotify_recalc_mask(struct fsnotify_mark_connector *conn)
  {
-@@ -395,6 +396,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark,
+@@ -392,6 +393,7 @@ void fsnotify_destroy_mark(struct fsnotify_mark *mark,
  	mutex_unlock(&group->mark_mutex);
  	fsnotify_free_mark(mark);
  }
@@ -926,7 +931,7 @@ index 9991f88..117042c 100644
  
  /*
   * Sorting function for lists of fsnotify marks.
-@@ -607,6 +609,7 @@ int fsnotify_add_mark_locked(struct fsnotify_mark *mark, struct inode *inode,
+@@ -606,6 +608,7 @@ int fsnotify_add_mark_locked(struct fsnotify_mark *mark, struct inode *inode,
  	fsnotify_put_mark(mark);
  	return ret;
  }
@@ -934,7 +939,7 @@ index 9991f88..117042c 100644
  
  int fsnotify_add_mark(struct fsnotify_mark *mark, struct inode *inode,
  		      struct vfsmount *mnt, int allow_dups)
-@@ -742,6 +745,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
+@@ -741,6 +744,7 @@ void fsnotify_init_mark(struct fsnotify_mark *mark,
  	fsnotify_get_group(group);
  	mark->group = group;
  }
@@ -963,10 +968,10 @@ index 7ea1184..6e2e241 100644
  static int do_dentry_open(struct file *f,
  			  struct inode *inode,
 diff --git a/fs/read_write.c b/fs/read_write.c
-index 6aa8c7a..b5d392e 100644
+index 0a5c47b..d423a5f 100644
 --- a/fs/read_write.c
 +++ b/fs/read_write.c
-@@ -453,6 +453,7 @@ ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
+@@ -454,6 +454,7 @@ ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
  
  	return ret;
  }
@@ -974,7 +979,7 @@ index 6aa8c7a..b5d392e 100644
  
  static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos)
  {
-@@ -493,6 +494,7 @@ vfs_readf_t vfs_readf(struct file *file)
+@@ -494,6 +495,7 @@ vfs_readf_t vfs_readf(struct file *file)
  		return new_sync_read;
  	return ERR_PTR(-ENOSYS);
  }
@@ -982,7 +987,7 @@ index 6aa8c7a..b5d392e 100644
  
  vfs_writef_t vfs_writef(struct file *file)
  {
-@@ -504,6 +506,7 @@ vfs_writef_t vfs_writef(struct file *file)
+@@ -505,6 +507,7 @@ vfs_writef_t vfs_writef(struct file *file)
  		return new_sync_write;
  	return ERR_PTR(-ENOSYS);
  }
@@ -990,7 +995,7 @@ index 6aa8c7a..b5d392e 100644
  
  ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
  {
-@@ -573,6 +576,7 @@ ssize_t vfs_write(struct file *file, const char __user *buf, size_t count, loff_
+@@ -574,6 +577,7 @@ ssize_t vfs_write(struct file *file, const char __user *buf, size_t count, loff_
  
  	return ret;
  }
@@ -999,7 +1004,7 @@ index 6aa8c7a..b5d392e 100644
  static inline loff_t file_pos_read(struct file *file)
  {
 diff --git a/fs/splice.c b/fs/splice.c
-index eb888c6..7ab89d2 100644
+index c5fb195..ce01a74 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,
@@ -1019,10 +1024,10 @@ index eb888c6..7ab89d2 100644
  /**
   * splice_direct_to_actor - splices data directly between two non-pipes
 diff --git a/fs/sync.c b/fs/sync.c
-index eb61780..32c5a05 100644
+index a6891ee..47a78bd 100644
 --- a/fs/sync.c
 +++ b/fs/sync.c
-@@ -38,6 +38,7 @@ int __sync_filesystem(struct super_block *sb, int wait)
+@@ -39,6 +39,7 @@ int __sync_filesystem(struct super_block *sb, int wait)
  		sb->s_op->sync_fs(sb, wait);
  	return __sync_blockdev(sb->s_bdev, wait);
  }
@@ -1043,10 +1048,10 @@ 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 bc97a97..895a1ba 100644
+index 2cd0282..af59768 100644
 --- a/kernel/locking/lockdep.c
 +++ b/kernel/locking/lockdep.c
-@@ -155,6 +155,7 @@ inline struct lock_class *lockdep_hlock_class(struct held_lock *hlock)
+@@ -167,6 +167,7 @@ inline struct lock_class *lockdep_hlock_class(struct held_lock *hlock)
  	}
  	return lock_classes + hlock->class_idx - 1;
  }
@@ -1055,19 +1060,19 @@ index bc97a97..895a1ba 100644
  
  #ifdef CONFIG_LOCK_STAT
 diff --git a/kernel/task_work.c b/kernel/task_work.c
-index 836a72a..aa00d49 100644
+index 0fef395..83fb1ec 100644
 --- a/kernel/task_work.c
 +++ b/kernel/task_work.c
-@@ -115,3 +115,4 @@ void task_work_run(void)
+@@ -116,3 +116,4 @@ void task_work_run(void)
  		} while (work);
  	}
  }
 +EXPORT_SYMBOL_GPL(task_work_run);
 diff --git a/security/commoncap.c b/security/commoncap.c
-index fc46f5b..90543ef 100644
+index 4f8e093..f1e0544 100644
 --- a/security/commoncap.c
 +++ b/security/commoncap.c
-@@ -1270,12 +1270,14 @@ int cap_mmap_addr(unsigned long addr)
+@@ -1333,12 +1333,14 @@ int cap_mmap_addr(unsigned long addr)
  	}
  	return ret;
  }
@@ -1083,10 +1088,10 @@ index fc46f5b..90543ef 100644
  #ifdef CONFIG_SECURITY
  
 diff --git a/security/device_cgroup.c b/security/device_cgroup.c
-index 03c1652..f88c84b 100644
+index c65b39b..e363d22 100644
 --- a/security/device_cgroup.c
 +++ b/security/device_cgroup.c
-@@ -7,6 +7,7 @@
+@@ -8,6 +8,7 @@
  #include <linux/device_cgroup.h>
  #include <linux/cgroup.h>
  #include <linux/ctype.h>
@@ -1094,19 +1099,16 @@ index 03c1652..f88c84b 100644
  #include <linux/list.h>
  #include <linux/uaccess.h>
  #include <linux/seq_file.h>
-@@ -849,6 +850,7 @@ int __devcgroup_inode_permission(struct inode *inode, int mask)
- 	return __devcgroup_check_permission(type, imajor(inode), iminor(inode),
- 			access);
- }
-+EXPORT_SYMBOL_GPL(__devcgroup_inode_permission);
+@@ -824,3 +825,4 @@ int __devcgroup_check_permission(short type, u32 major, u32 minor,
  
- int devcgroup_inode_mknod(int mode, dev_t dev)
- {
+ 	return 0;
+ }
++EXPORT_SYMBOL_GPL(__devcgroup_check_permission);
 diff --git a/security/security.c b/security/security.c
-index 4bf0f57..b30d1e1 100644
+index 1cd8526..f2e4736 100644
 --- a/security/security.c
 +++ b/security/security.c
-@@ -530,6 +530,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
+@@ -531,6 +531,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
  		return 0;
  	return call_int_hook(path_rmdir, 0, dir, dentry);
  }
@@ -1114,7 +1116,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_path_unlink(const struct path *dir, struct dentry *dentry)
  {
-@@ -546,6 +547,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
+@@ -547,6 +548,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
  		return 0;
  	return call_int_hook(path_symlink, 0, dir, dentry, old_name);
  }
@@ -1122,7 +1124,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
  		       struct dentry *new_dentry)
-@@ -554,6 +556,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
+@@ -555,6 +557,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
  		return 0;
  	return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry);
  }
@@ -1130,7 +1132,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_path_rename(const struct path *old_dir, struct dentry *old_dentry,
  			 const struct path *new_dir, struct dentry *new_dentry,
-@@ -581,6 +584,7 @@ int security_path_truncate(const struct path *path)
+@@ -582,6 +585,7 @@ int security_path_truncate(const struct path *path)
  		return 0;
  	return call_int_hook(path_truncate, 0, path);
  }
@@ -1138,7 +1140,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_path_chmod(const struct path *path, umode_t mode)
  {
-@@ -588,6 +592,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
+@@ -589,6 +593,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
  		return 0;
  	return call_int_hook(path_chmod, 0, path, mode);
  }
@@ -1146,7 +1148,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
  {
-@@ -595,6 +600,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
+@@ -596,6 +601,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
  		return 0;
  	return call_int_hook(path_chown, 0, path, uid, gid);
  }
@@ -1154,7 +1156,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_path_chroot(const struct path *path)
  {
-@@ -680,6 +686,7 @@ int security_inode_readlink(struct dentry *dentry)
+@@ -681,6 +687,7 @@ int security_inode_readlink(struct dentry *dentry)
  		return 0;
  	return call_int_hook(inode_readlink, 0, dentry);
  }
@@ -1162,7 +1164,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_inode_follow_link(struct dentry *dentry, struct inode *inode,
  			       bool rcu)
-@@ -695,6 +702,7 @@ int security_inode_permission(struct inode *inode, int mask)
+@@ -696,6 +703,7 @@ int security_inode_permission(struct inode *inode, int mask)
  		return 0;
  	return call_int_hook(inode_permission, 0, inode, mask);
  }
@@ -1170,7 +1172,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
  {
-@@ -866,6 +874,7 @@ int security_file_permission(struct file *file, int mask)
+@@ -867,6 +875,7 @@ int security_file_permission(struct file *file, int mask)
  
  	return fsnotify_perm(file, mask);
  }
@@ -1178,7 +1180,7 @@ index 4bf0f57..b30d1e1 100644
  
  int security_file_alloc(struct file *file)
  {
-@@ -925,6 +934,7 @@ int security_mmap_file(struct file *file, unsigned long prot,
+@@ -926,6 +935,7 @@ int security_mmap_file(struct file *file, unsigned long prot,
  		return ret;
  	return ima_file_mmap(file, prot);
  }
@@ -1188,7 +1190,7 @@ index 4bf0f57..b30d1e1 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	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/ABI/testing/debugfs-aufs	2016-01-13 20:11:11.663093444 +0100
 @@ -0,0 +1,50 @@
 +What:		/debug/aufs/si_<id>/
 +Date:		March 2009
@@ -1242,7 +1244,7 @@ diff -urN /usr/share/empty/Documentation/ABI/testing/debugfs-aufs linux/Document
 +		will be empty. About XINO files, see the aufs manual.
 diff -urN /usr/share/empty/Documentation/ABI/testing/sysfs-aufs linux/Documentation/ABI/testing/sysfs-aufs
 --- /usr/share/empty/Documentation/ABI/testing/sysfs-aufs	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/ABI/testing/sysfs-aufs	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/ABI/testing/sysfs-aufs	2016-01-13 20:11:11.663093444 +0100
 @@ -0,0 +1,31 @@
 +What:		/sys/fs/aufs/si_<id>/
 +Date:		March 2009
@@ -1277,7 +1279,7 @@ diff -urN /usr/share/empty/Documentation/ABI/testing/sysfs-aufs linux/Documentat
 +		will be empty. About XINO files, see the aufs manual.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/01intro.txt linux/Documentation/filesystems/aufs/design/01intro.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/01intro.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/01intro.txt	2017-11-12 22:24:42.257509799 +0100
++++ linux/Documentation/filesystems/aufs/design/01intro.txt	2018-01-29 07:56:20.046658203 +0100
 @@ -0,0 +1,171 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -1452,7 +1454,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/01intro.txt lin
 +about it. But currently I have implemented it in kernel space.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/02struct.txt linux/Documentation/filesystems/aufs/design/02struct.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/02struct.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/02struct.txt	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/filesystems/aufs/design/02struct.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,258 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -1714,7 +1716,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/02struct.txt li
 +For this purpose, use "aumvdown" command in aufs-util.git.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/03atomic_open.txt linux/Documentation/filesystems/aufs/design/03atomic_open.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/03atomic_open.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/03atomic_open.txt	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/filesystems/aufs/design/03atomic_open.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,85 @@
 +
 +# Copyright (C) 2015-2017 Junjiro R. Okajima
@@ -1803,7 +1805,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/03atomic_open.t
 +       be implemented in aufs, but not all I am afraid.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/03lookup.txt linux/Documentation/filesystems/aufs/design/03lookup.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/03lookup.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/03lookup.txt	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/filesystems/aufs/design/03lookup.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,113 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -1920,7 +1922,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/03lookup.txt li
 +   by over-mounting something (or another method).
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/04branch.txt linux/Documentation/filesystems/aufs/design/04branch.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/04branch.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/04branch.txt	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/filesystems/aufs/design/04branch.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,74 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -1998,7 +2000,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/04branch.txt li
 +    same named entry on the upper branch.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/05wbr_policy.txt linux/Documentation/filesystems/aufs/design/05wbr_policy.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/05wbr_policy.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/05wbr_policy.txt	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/filesystems/aufs/design/05wbr_policy.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,64 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -2066,7 +2068,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/05wbr_policy.tx
 +  copyup policy.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06dirren.dot linux/Documentation/filesystems/aufs/design/06dirren.dot
 --- /usr/share/empty/Documentation/filesystems/aufs/design/06dirren.dot	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/06dirren.dot	2017-11-12 22:24:44.694244127 +0100
++++ linux/Documentation/filesystems/aufs/design/06dirren.dot	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,31 @@
 +
 +// to view this graph, run dot(1) command in GRAPHVIZ.
@@ -2101,7 +2103,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06dirren.dot li
 +}
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06dirren.txt linux/Documentation/filesystems/aufs/design/06dirren.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/06dirren.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/06dirren.txt	2017-11-12 22:24:44.694244127 +0100
++++ linux/Documentation/filesystems/aufs/design/06dirren.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,102 @@
 +
 +# Copyright (C) 2017 Junjiro R. Okajima
@@ -2207,7 +2209,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06dirren.txt li
 +equivalen to udba=reval case.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06fhsm.txt linux/Documentation/filesystems/aufs/design/06fhsm.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/06fhsm.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/06fhsm.txt	2017-07-29 12:14:25.896375188 +0200
++++ linux/Documentation/filesystems/aufs/design/06fhsm.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,120 @@
 +
 +# Copyright (C) 2011-2017 Junjiro R. Okajima
@@ -2331,7 +2333,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06fhsm.txt linu
 +should restore the original file state after an error happens.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06mmap.txt linux/Documentation/filesystems/aufs/design/06mmap.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/06mmap.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/06mmap.txt	2017-07-29 12:14:25.896375188 +0200
++++ linux/Documentation/filesystems/aufs/design/06mmap.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,72 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -2407,7 +2409,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06mmap.txt linu
 +I have to give up this "looks-smater" approach.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06xattr.txt linux/Documentation/filesystems/aufs/design/06xattr.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/06xattr.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/06xattr.txt	2017-07-29 12:14:25.896375188 +0200
++++ linux/Documentation/filesystems/aufs/design/06xattr.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,96 @@
 +
 +# Copyright (C) 2014-2017 Junjiro R. Okajima
@@ -2507,7 +2509,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/06xattr.txt lin
 +now, aufs implements the branch attributes to ignore the error.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/07export.txt linux/Documentation/filesystems/aufs/design/07export.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/07export.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/07export.txt	2017-07-29 12:14:25.896375188 +0200
++++ linux/Documentation/filesystems/aufs/design/07export.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,58 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -2569,7 +2571,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/07export.txt li
 +  lookup_one_len(), vfs_getattr(), encode_fh() and others.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/08shwh.txt linux/Documentation/filesystems/aufs/design/08shwh.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/08shwh.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/08shwh.txt	2017-07-29 12:14:25.896375188 +0200
++++ linux/Documentation/filesystems/aufs/design/08shwh.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,52 @@
 +
 +# Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -2625,7 +2627,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/08shwh.txt linu
 +initramfs will use it to replace the old one at the next boot.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/10dynop.txt linux/Documentation/filesystems/aufs/design/10dynop.txt
 --- /usr/share/empty/Documentation/filesystems/aufs/design/10dynop.txt	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/design/10dynop.txt	2017-07-29 12:14:25.896375188 +0200
++++ linux/Documentation/filesystems/aufs/design/10dynop.txt	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,47 @@
 +
 +# Copyright (C) 2010-2017 Junjiro R. Okajima
@@ -2676,7 +2678,7 @@ diff -urN /usr/share/empty/Documentation/filesystems/aufs/design/10dynop.txt lin
 +regular files only.
 diff -urN /usr/share/empty/Documentation/filesystems/aufs/README linux/Documentation/filesystems/aufs/README
 --- /usr/share/empty/Documentation/filesystems/aufs/README	1970-01-01 01:00:00.000000000 +0100
-+++ linux/Documentation/filesystems/aufs/README	2017-07-29 12:14:25.893041746 +0200
++++ linux/Documentation/filesystems/aufs/README	2018-01-29 07:56:20.046658203 +0100
 @@ -0,0 +1,393 @@
 +
 +Aufs4 -- advanced multi layered unification filesystem version 4.x
@@ -3073,7 +3075,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	2017-11-12 22:24:44.697577553 +0100
++++ linux/fs/aufs/aufs.h	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,60 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -3137,7 +3139,7 @@ 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	2017-11-12 22:24:44.697577553 +0100
++++ linux/fs/aufs/branch.c	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,1432 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -4573,7 +4575,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	2017-11-12 22:24:44.697577553 +0100
++++ linux/fs/aufs/branch.h	2018-01-29 07:56:20.049991637 +0100
 @@ -0,0 +1,333 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -4910,8 +4912,9 @@ diff -urN /usr/share/empty/fs/aufs/branch.h linux/fs/aufs/branch.h
 +#endif /* __AUFS_BRANCH_H__ */
 diff -urN /usr/share/empty/fs/aufs/conf.mk linux/fs/aufs/conf.mk
 --- /usr/share/empty/fs/aufs/conf.mk	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/conf.mk	2017-11-12 22:24:44.704244405 +0100
-@@ -0,0 +1,39 @@
++++ linux/fs/aufs/conf.mk	2018-01-29 07:56:20.049991637 +0100
+@@ -0,0 +1,40 @@
++# SPDX-License-Identifier: GPL-2.0
 +
 +AuConfStr = CONFIG_AUFS_FS=${CONFIG_AUFS_FS}
 +
@@ -4953,8 +4956,8 @@ 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	2017-11-12 22:24:44.704244405 +0100
-@@ -0,0 +1,1443 @@
++++ linux/fs/aufs/cpup.c	2018-01-29 07:56:20.053325069 +0100
+@@ -0,0 +1,1442 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
 + *
@@ -5430,8 +5433,7 @@ diff -urN /usr/share/empty/fs/aufs/cpup.c linux/fs/aufs/cpup.c
 +	if (tsk->flags & PF_KTHREAD)
 +		__fput_sync(file[DST].file);
 +	else {
-+		WARN(1, "%pD\nPlease report this warning to aufs-users ML",
-+		     file[DST].file);
++		/* it happend actually */
 +		fput(file[DST].file);
 +		/*
 +		 * too bad.
@@ -6400,7 +6402,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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/cpup.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,99 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -6503,7 +6505,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dbgaufs.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,437 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -6944,7 +6946,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	2017-07-29 12:14:25.899708630 +0200
++++ linux/fs/aufs/dbgaufs.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,48 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -6996,7 +6998,7 @@ 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	2017-11-12 22:24:42.267510077 +0100
++++ linux/fs/aufs/dcsub.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,225 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -7225,7 +7227,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	2017-07-29 12:14:25.899708630 +0200
++++ linux/fs/aufs/dcsub.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,136 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -7365,7 +7367,7 @@ 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	2017-11-12 22:24:42.267510077 +0100
++++ linux/fs/aufs/debug.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,440 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -7809,7 +7811,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	2017-07-29 12:14:25.899708630 +0200
++++ linux/fs/aufs/debug.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,225 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -8038,7 +8040,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dentry.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,1152 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -9194,7 +9196,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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dentry.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,266 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -9464,7 +9466,7 @@ 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	2017-11-12 22:24:42.267510077 +0100
++++ linux/fs/aufs/dinfo.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,553 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -10021,7 +10023,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dir.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,759 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -10784,7 +10786,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	2017-11-12 22:24:42.267510077 +0100
++++ linux/fs/aufs/dir.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,131 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -10919,7 +10921,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dirren.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,1315 @@
 +/*
 + * Copyright (C) 2017 Junjiro R. Okajima
@@ -12238,7 +12240,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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dirren.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,139 @@
 +/*
 + * Copyright (C) 2017 Junjiro R. Okajima
@@ -12381,7 +12383,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dynop.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,369 @@
 +/*
 + * Copyright (C) 2010-2017 Junjiro R. Okajima
@@ -12754,7 +12756,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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/dynop.h	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,74 @@
 +/*
 + * Copyright (C) 2010-2017 Junjiro R. Okajima
@@ -12832,7 +12834,7 @@ 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	2017-11-12 22:24:42.267510077 +0100
++++ linux/fs/aufs/export.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,836 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -13672,7 +13674,7 @@ 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	2017-07-29 12:14:25.903042072 +0200
++++ linux/fs/aufs/fhsm.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,426 @@
 +/*
 + * Copyright (C) 2011-2017 Junjiro R. Okajima
@@ -14102,7 +14104,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/file.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,856 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -14962,7 +14964,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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/file.h	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,340 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -15306,7 +15308,7 @@ 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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/finfo.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,148 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -15458,7 +15460,7 @@ 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	2017-11-12 22:24:44.704244405 +0100
++++ linux/fs/aufs/f_op.c	2018-01-29 07:56:20.053325069 +0100
 @@ -0,0 +1,817 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -16279,7 +16281,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	2017-07-29 12:14:25.903042072 +0200
++++ linux/fs/aufs/fstype.h	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,400 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -16670,7 +16672,7 @@ diff -urN /usr/share/empty/fs/aufs/fstype.h linux/fs/aufs/fstype.h
 +
 +/*
 + * test if the @inode is nfs with 'noacl' option
-+ * NFS always sets MS_POSIXACL regardless its mount option 'noacl.'
++ * NFS always sets SB_POSIXACL regardless its mount option 'noacl.'
 + */
 +static inline int au_test_nfs_noacl(struct inode *inode)
 +{
@@ -16683,7 +16685,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/hbl.h	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,64 @@
 +/*
 + * Copyright (C) 2017 Junjiro R. Okajima
@@ -16751,7 +16753,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/hfsnotify.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,289 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -17044,7 +17046,7 @@ 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	2017-07-29 12:14:25.903042072 +0200
++++ linux/fs/aufs/hfsplus.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,56 @@
 +/*
 + * Copyright (C) 2010-2017 Junjiro R. Okajima
@@ -17104,7 +17106,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/hnotify.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,719 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -17827,7 +17829,7 @@ 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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/iinfo.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,285 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -18116,7 +18118,7 @@ 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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/inode.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,527 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -18647,7 +18649,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/inode.h	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,695 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -19346,7 +19348,7 @@ 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	2017-07-29 12:14:25.903042072 +0200
++++ linux/fs/aufs/ioctl.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,219 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -19569,7 +19571,7 @@ 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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/i_op_add.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,920 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -20493,7 +20495,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/i_op.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,1459 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -20543,7 +20545,7 @@ diff -urN /usr/share/empty/fs/aufs/i_op.c linux/fs/aufs/i_op.c
 +	 * - skip the lower fs test in the case of write to ro branch.
 +	 * - nfs dir permission write check is optimized, but a policy for
 +	 *   link/rename requires a real check.
-+	 * - nfs always sets MS_POSIXACL regardless its mount option 'noacl.'
++	 * - nfs always sets SB_POSIXACL regardless its mount option 'noacl.'
 +	 *   in this case, generic_permission() returns -EOPNOTSUPP.
 +	 */
 +	if ((write_mask && !au_br_writable(brperm))
@@ -21956,7 +21958,7 @@ 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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/i_op_del.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,511 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -22471,7 +22473,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/i_op_ren.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,1246 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -23721,8 +23723,9 @@ diff -urN /usr/share/empty/fs/aufs/i_op_ren.c linux/fs/aufs/i_op_ren.c
 +}
 diff -urN /usr/share/empty/fs/aufs/Kconfig linux/fs/aufs/Kconfig
 --- /usr/share/empty/fs/aufs/Kconfig	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/Kconfig	2017-11-12 22:24:44.697577553 +0100
-@@ -0,0 +1,198 @@
++++ linux/fs/aufs/Kconfig	2018-01-29 07:56:20.049991637 +0100
+@@ -0,0 +1,199 @@
++# SPDX-License-Identifier: GPL-2.0
 +config AUFS_FS
 +	tristate "Aufs (Advanced multi layered unification filesystem) support"
 +	help
@@ -23923,7 +23926,7 @@ 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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/loop.c	2018-01-29 07:56:20.056658502 +0100
 @@ -0,0 +1,147 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -24074,7 +24077,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	2017-07-29 12:14:25.903042072 +0200
++++ linux/fs/aufs/loop.h	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,52 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -24130,8 +24133,9 @@ diff -urN /usr/share/empty/fs/aufs/loop.h linux/fs/aufs/loop.h
 +#endif /* __AUFS_LOOP_H__ */
 diff -urN /usr/share/empty/fs/aufs/magic.mk linux/fs/aufs/magic.mk
 --- /usr/share/empty/fs/aufs/magic.mk	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/magic.mk	2017-07-29 12:14:25.903042072 +0200
-@@ -0,0 +1,30 @@
++++ linux/fs/aufs/magic.mk	2018-01-29 07:56:20.059991935 +0100
+@@ -0,0 +1,31 @@
++# SPDX-License-Identifier: GPL-2.0
 +
 +# defined in ${srctree}/fs/fuse/inode.c
 +# tristate
@@ -24164,8 +24168,9 @@ diff -urN /usr/share/empty/fs/aufs/magic.mk linux/fs/aufs/magic.mk
 +endif
 diff -urN /usr/share/empty/fs/aufs/Makefile linux/fs/aufs/Makefile
 --- /usr/share/empty/fs/aufs/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux/fs/aufs/Makefile	2017-11-12 22:24:44.697577553 +0100
-@@ -0,0 +1,45 @@
++++ linux/fs/aufs/Makefile	2018-01-29 07:56:20.049991637 +0100
+@@ -0,0 +1,46 @@
++# SPDX-License-Identifier: GPL-2.0
 +
 +include ${src}/magic.mk
 +ifeq (${CONFIG_AUFS_FS},m)
@@ -24213,7 +24218,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/module.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,266 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -24483,7 +24488,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	2017-11-12 22:24:42.270843503 +0100
++++ linux/fs/aufs/module.h	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,101 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -24588,7 +24593,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/mvdown.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,704 @@
 +/*
 + * Copyright (C) 2011-2017 Junjiro R. Okajima
@@ -25296,7 +25301,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/opts.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,1891 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -26101,7 +26106,7 @@ diff -urN /usr/share/empty/fs/aufs/opts.c linux/fs/aufs/opts.c
 +			add->perm = AuBrPerm_RO;
 +			if (au_test_fs_rr(add->path.dentry->d_sb))
 +				add->perm = AuBrPerm_RR;
-+			else if (!bindex && !(sb_flags & MS_RDONLY))
++			else if (!bindex && !(sb_flags & SB_RDONLY))
 +				add->perm = AuBrPerm_RW;
 +		}
 +		opt->type = Opt_add;
@@ -26777,10 +26782,10 @@ diff -urN /usr/share/empty/fs/aufs/opts.c linux/fs/aufs/opts.c
 +		break;
 +
 +	case Opt_acl:
-+		sb->s_flags |= MS_POSIXACL;
++		sb->s_flags |= SB_POSIXACL;
 +		break;
 +	case Opt_noacl:
-+		sb->s_flags &= ~MS_POSIXACL;
++		sb->s_flags &= ~SB_POSIXACL;
 +		break;
 +
 +	default:
@@ -26907,7 +26912,7 @@ diff -urN /usr/share/empty/fs/aufs/opts.c linux/fs/aufs/opts.c
 +	sbinfo = au_sbi(sb);
 +	AuDebugOn(!(sbinfo->si_mntflags & AuOptMask_UDBA));
 +
-+	if (!(sb_flags & MS_RDONLY)) {
++	if (!(sb_flags & SB_RDONLY)) {
 +		if (unlikely(!au_br_writable(au_sbr_perm(sb, 0))))
 +			pr_warn("first branch should be rw\n");
 +		if (unlikely(au_opt_test(sbinfo->si_mntflags, SHWH)))
@@ -26940,7 +26945,7 @@ diff -urN /usr/share/empty/fs/aufs/opts.c linux/fs/aufs/opts.c
 +			br->br_perm &= ~AuBrAttr_ICEX;
 +#if 0
 +		if ((br->br_perm & AuBrAttr_ICEX_SEC)
-+		    && (au_br_sb(br)->s_flags & MS_NOSEC))
++		    && (au_br_sb(br)->s_flags & SB_NOSEC))
 +			br->br_perm &= ~AuBrAttr_ICEX_SEC;
 +#endif
 +
@@ -27191,7 +27196,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/opts.h	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,224 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -27419,7 +27424,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/plink.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,515 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -27938,7 +27943,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/poll.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,52 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -27994,7 +27999,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/posix_acl.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,102 @@
 +/*
 + * Copyright (C) 2014-2017 Junjiro R. Okajima
@@ -28032,7 +28037,7 @@ diff -urN /usr/share/empty/fs/aufs/posix_acl.c linux/fs/aufs/posix_acl.c
 +	sb = inode->i_sb;
 +	si_read_lock(sb, AuLock_FLUSH);
 +	ii_read_lock_child(inode);
-+	if (!(sb->s_flags & MS_POSIXACL))
++	if (!(sb->s_flags & SB_POSIXACL))
 +		goto out;
 +
 +	bindex = au_ibtop(inode);
@@ -28100,7 +28105,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/procfs.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,170 @@
 +/*
 + * Copyright (C) 2010-2017 Junjiro R. Okajima
@@ -28274,7 +28279,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/rdu.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,381 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -28659,7 +28664,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/rwsem.h	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,72 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -28735,7 +28740,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/sbinfo.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,304 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -29043,7 +29048,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/super.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,1046 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -29290,7 +29295,7 @@ diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
 +} while (0)
 +
 +	sb = dentry->d_sb;
-+	if (sb->s_flags & MS_POSIXACL)
++	if (sb->s_flags & SB_POSIXACL)
 +		seq_puts(m, ",acl");
 +
 +	/* lock free root dinfo */
@@ -29970,7 +29975,7 @@ diff -urN /usr/share/empty/fs/aufs/super.c linux/fs/aufs/super.c
 +	sbinfo = au_sbi(sb);
 +
 +	/* all timestamps always follow the ones on the branch */
-+	sb->s_flags |= MS_NOATIME | MS_NODIRATIME;
++	sb->s_flags |= SB_NOATIME | SB_NODIRATIME;
 +	sb->s_op = &aufs_sop;
 +	sb->s_d_op = &aufs_dop;
 +	sb->s_magic = AUFS_SUPER_MAGIC;
@@ -30093,7 +30098,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/super.h	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,626 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -30723,7 +30728,7 @@ 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	2017-07-29 12:14:25.906375514 +0200
++++ linux/fs/aufs/sysaufs.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,104 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -30831,7 +30836,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	2017-07-29 12:14:25.906375514 +0200
++++ linux/fs/aufs/sysaufs.h	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,101 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -30936,7 +30941,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/sysfs.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,376 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -31316,7 +31321,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/sysrq.c	2018-01-29 07:56:20.059991935 +0100
 @@ -0,0 +1,159 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -31479,7 +31484,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/vdir.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,892 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -32375,7 +32380,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/vfsub.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,894 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -33273,7 +33278,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/vfsub.h	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,360 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -33637,7 +33642,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/wbr_policy.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,830 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -34471,7 +34476,7 @@ 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	2017-11-12 22:24:42.274176929 +0100
++++ linux/fs/aufs/whout.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,1061 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -35536,7 +35541,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	2017-09-05 10:42:11.058755349 +0200
++++ linux/fs/aufs/whout.h	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,85 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -35625,7 +35630,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/wkq.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,390 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -36019,7 +36024,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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/wkq.h	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,93 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -36116,7 +36121,7 @@ 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	2017-11-12 22:24:44.707577830 +0100
++++ linux/fs/aufs/xattr.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,355 @@
 +/*
 + * Copyright (C) 2014-2017 Junjiro R. Okajima
@@ -36475,7 +36480,7 @@ 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	2017-11-12 22:24:44.710911257 +0100
++++ linux/fs/aufs/xino.c	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,1418 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -37897,7 +37902,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	2017-11-12 22:24:44.710911257 +0100
++++ linux/include/uapi/linux/aufs_type.h	2018-01-29 07:56:20.063325368 +0100
 @@ -0,0 +1,447 @@
 +/*
 + * Copyright (C) 2005-2017 Junjiro R. Okajima
@@ -37940,7 +37945,7 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +
 +#include <linux/limits.h>
 +
-+#define AUFS_VERSION	"4.x-rcN-20171106"
++#define AUFS_VERSION	"4.x-rcN-20171218"
 +
 +/* todo? move this to linux-2.6.19/include/magic.h */
 +#define AUFS_SUPER_MAGIC	('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
@@ -38346,13 +38351,14 @@ diff -urN /usr/share/empty/include/uapi/linux/aufs_type.h linux/include/uapi/lin
 +#define AUFS_CTL_FHSM_FD	_IOW(AuCtlType, AuCtl_FHSM_FD, int)
 +
 +#endif /* __AUFS_TYPE_H__ */
+SPDX-License-Identifier: GPL-2.0
 aufs4.x-rcN loopback patch
 
 diff --git a/drivers/block/loop.c b/drivers/block/loop.c
-index d44de9d..095672b 100644
+index e51a59d..b4f7d3a 100644
 --- a/drivers/block/loop.c
 +++ b/drivers/block/loop.c
-@@ -595,6 +595,15 @@ static inline void loop_update_dio(struct loop_device *lo)
+@@ -600,6 +600,15 @@ static inline void loop_update_dio(struct loop_device *lo)
  			lo->use_dio);
  }
  
@@ -38368,7 +38374,7 @@ index d44de9d..095672b 100644
  static void loop_reread_partitions(struct loop_device *lo,
  				   struct block_device *bdev)
  {
-@@ -629,6 +638,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -634,6 +643,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
  			  unsigned int arg)
  {
  	struct file	*file, *old_file;
@@ -38376,7 +38382,7 @@ index d44de9d..095672b 100644
  	struct inode	*inode;
  	int		error;
  
-@@ -645,9 +655,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -650,9 +660,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
  	file = fget(arg);
  	if (!file)
  		goto out;
@@ -38393,7 +38399,7 @@ index d44de9d..095672b 100644
  
  	error = -EINVAL;
  
-@@ -662,6 +679,7 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -667,6 +684,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;
@@ -38401,7 +38407,7 @@ index d44de9d..095672b 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));
-@@ -669,12 +687,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+@@ -674,12 +692,16 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
  	blk_mq_unfreeze_queue(lo->lo_queue);
  
  	fput(old_file);
@@ -38418,7 +38424,7 @@ index d44de9d..095672b 100644
   out:
  	return error;
  }
-@@ -868,7 +890,7 @@ static int loop_prepare_queue(struct loop_device *lo)
+@@ -873,7 +895,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)
  {
@@ -38427,7 +38433,7 @@ index d44de9d..095672b 100644
  	struct inode	*inode;
  	struct address_space *mapping;
  	int		lo_flags = 0;
-@@ -882,6 +904,12 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
+@@ -887,6 +909,12 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  	file = fget(arg);
  	if (!file)
  		goto out;
@@ -38440,7 +38446,7 @@ index d44de9d..095672b 100644
  
  	error = -EBUSY;
  	if (lo->lo_state != Lo_unbound)
-@@ -930,6 +958,7 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
+@@ -935,6 +963,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;
@@ -38448,7 +38454,7 @@ index d44de9d..095672b 100644
  	lo->transfer = NULL;
  	lo->ioctl = NULL;
  	lo->lo_sizelimit = 0;
-@@ -963,6 +992,8 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
+@@ -968,6 +997,8 @@ static int loop_set_fd(struct loop_device *lo, fmode_t mode,
  
   out_putf:
  	fput(file);
@@ -38457,7 +38463,7 @@ index d44de9d..095672b 100644
   out:
  	/* This is safe: open() is still holding a reference. */
  	module_put(THIS_MODULE);
-@@ -1009,6 +1040,7 @@ loop_init_xfer(struct loop_device *lo, struct loop_func_table *xfer,
+@@ -1014,6 +1045,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;
@@ -38465,7 +38471,7 @@ index d44de9d..095672b 100644
  	gfp_t gfp = lo->old_gfp_mask;
  	struct block_device *bdev = lo->lo_device;
  
-@@ -1040,6 +1072,7 @@ static int loop_clr_fd(struct loop_device *lo)
+@@ -1045,6 +1077,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;
@@ -38473,7 +38479,7 @@ index d44de9d..095672b 100644
  	spin_unlock_irq(&lo->lo_lock);
  
  	loop_release_xfer(lo);
-@@ -1087,6 +1120,8 @@ static int loop_clr_fd(struct loop_device *lo)
+@@ -1092,6 +1125,8 @@ static int loop_clr_fd(struct loop_device *lo)
  	 * bd_mutex which is usually taken before lo_ctl_mutex.
  	 */
  	fput(filp);
@@ -38483,7 +38489,7 @@ index d44de9d..095672b 100644
  }
  
 diff --git a/drivers/block/loop.h b/drivers/block/loop.h
-index 1f39567..128b137 100644
+index 0f45416..101f193 100644
 --- a/drivers/block/loop.h
 +++ b/drivers/block/loop.h
 @@ -46,7 +46,7 @@ struct loop_device {
@@ -38496,10 +38502,10 @@ index 1f39567..128b137 100644
  	void		*key_data; 
  
 diff --git a/fs/aufs/f_op.c b/fs/aufs/f_op.c
-index 8aff060..e853272 100644
+index 0d4ea929..af293c2 100644
 --- a/fs/aufs/f_op.c
 +++ b/fs/aufs/f_op.c
-@@ -357,7 +357,7 @@ static ssize_t aufs_read_iter(struct kiocb *kio, struct iov_iter *iov_iter)
+@@ -358,7 +358,7 @@ static ssize_t aufs_read_iter(struct kiocb *kio, struct iov_iter *iov_iter)
  	if (IS_ERR(h_file))
  		goto out;
  
@@ -38509,10 +38515,10 @@ index 8aff060..e853272 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 e35f015..b37f1ae 100644
+index 3b217c2..0f5ab22 100644
 --- a/fs/aufs/loop.c
 +++ b/fs/aufs/loop.c
-@@ -132,3 +132,19 @@ void au_loopback_fin(void)
+@@ -133,3 +133,19 @@ void au_loopback_fin(void)
  		symbol_put(loop_backing_file);
  	kfree(au_warn_loopback_array);
  }
@@ -38533,10 +38539,10 @@ index e35f015..b37f1ae 100644
 +	return f;
 +}
 diff --git a/fs/aufs/loop.h b/fs/aufs/loop.h
-index e2df495..36e5052 100644
+index 7d7bf34..ba7c188 100644
 --- a/fs/aufs/loop.h
 +++ b/fs/aufs/loop.h
-@@ -25,7 +25,11 @@ void au_warn_loopback(struct super_block *h_sb);
+@@ -26,7 +26,11 @@ void au_warn_loopback(struct super_block *h_sb);
  
  int au_loopback_init(void);
  void au_loopback_fin(void);
@@ -38548,7 +38554,7 @@ index e2df495..36e5052 100644
  AuStubInt0(au_test_loopback_overlap, struct super_block *sb,
  	   struct dentry *h_adding)
  AuStubInt0(au_test_loopback_kthread, void)
-@@ -33,6 +37,8 @@ AuStubVoid(au_warn_loopback, struct super_block *h_sb)
+@@ -34,6 +38,8 @@ AuStubVoid(au_warn_loopback, struct super_block *h_sb)
  
  AuStubInt0(au_loopback_init, void)
  AuStubVoid(au_loopback_fin, void)
@@ -38558,10 +38564,10 @@ index e2df495..36e5052 100644
  
  #endif /* __KERNEL__ */
 diff --git a/fs/aufs/super.c b/fs/aufs/super.c
-index 3c300125..128d790 100644
+index 357bf04..c6614df 100644
 --- a/fs/aufs/super.c
 +++ b/fs/aufs/super.c
-@@ -838,7 +838,10 @@ static const struct super_operations aufs_sop = {
+@@ -839,7 +839,10 @@ static const struct super_operations aufs_sop = {
  	.statfs		= aufs_statfs,
  	.put_super	= aufs_put_super,
  	.sync_fs	= aufs_sync_fs,
@@ -38574,10 +38580,10 @@ index 3c300125..128d790 100644
  
  /* ---------------------------------------------------------------------- */
 diff --git a/include/linux/fs.h b/include/linux/fs.h
-index 8ab6566..8dbaa52 100644
+index 96e05b3..ba5e627 100644
 --- a/include/linux/fs.h
 +++ b/include/linux/fs.h
-@@ -1838,6 +1838,10 @@ struct super_operations {
+@@ -1840,6 +1840,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 0a566dcc..75048a37 100644
--- a/kernel-multiarch.config
+++ b/kernel-multiarch.config
@@ -203,6 +203,7 @@ CRYPTO_SHA512_MB all=m
 CRYPTO_SHA256 all=y
 CRYPTO_SHA512 all=m
 CRYPTO_SHA3 all=m
+CRYPTO_SM3 all=m
 CRYPTO_TGR192 all=m
 CRYPTO_WP512 all=m
 CRYPTO_GHASH_CLMUL_NI_INTEL all=m
@@ -274,6 +275,7 @@ ASYMMETRIC_PUBLIC_KEY_SUBTYPE all=y
 X509_CERTIFICATE_PARSER all=y
 PKCS7_MESSAGE_PARSER all=m
 PKCS7_TEST_KEY all=m
+SIGNED_PE_FILE_VERIFICATION all=y
 
 #-
 #- *** FILE: drivers/accessibility/Kconfig ***
@@ -319,6 +321,7 @@ ACPI_EXTLOG all=m
 PMIC_OPREGION all=y
 XPOWER_PMIC_OPREGION all=y
 BXT_WC_PMIC_OPREGION all=y
+CHT_DC_TI_PMIC_OPREGION all=y
 ACPI_CONFIGFS all=m
 #- file drivers/acpi/arm64/Kconfig goes here
 
@@ -572,7 +575,6 @@ BLK_DEV_SX8 all=m
 BLK_DEV_RAM all=y
 BLK_DEV_RAM_COUNT all=16
 BLK_DEV_RAM_SIZE all=16384
-BLK_DEV_RAM_DAX all=y
 CDROM_PKTCDVD all=m
 CDROM_PKTCDVD_BUFFERS all=8
 CDROM_PKTCDVD_WCACHE all=y
@@ -752,6 +754,7 @@ HW_RANDOM_TPM 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
@@ -1170,6 +1173,7 @@ GPIO_EXAR all=m
 GPIO_GENERIC_PLATFORM all=m
 GPIO_ICH all=m
 GPIO_LYNXPOINT all=y
+GPIO_MB86S7X all=m
 GPIO_MENZ127 all=m
 GPIO_MOCKUP all=m
 GPIO_STA2X11 all=y
@@ -1220,6 +1224,7 @@ GPIO_PCH all=m
 GPIO_PCI_IDIO_16 all=m
 GPIO_RDC321X all=m
 GPIO_74X164 all=m
+GPIO_MAX3191X all=m
 GPIO_MAX7301 all=m
 GPIO_MC33880 all=m
 GPIO_PISOSR all=m
@@ -1241,6 +1246,7 @@ DRM_RADEON all=m
 #- file drivers/gpu/drm/radeon/Kconfig goes here
 DRM_AMDGPU all=m
 #- file drivers/gpu/drm/amd/amdgpu/Kconfig goes here
+#- file drivers/gpu/drm/amd/lib/Kconfig goes here
 #- file drivers/gpu/drm/nouveau/Kconfig goes here
 #- file drivers/gpu/drm/i915/Kconfig goes here
 DRM_VGEM all=m
@@ -1281,6 +1287,7 @@ DRM_VGEM all=m
 #- file drivers/gpu/drm/meson/Kconfig goes here
 #- file drivers/gpu/drm/tinydrm/Kconfig goes here
 #- file drivers/gpu/drm/pl111/Kconfig goes here
+#- file drivers/gpu/drm/tve200/Kconfig goes here
 DRM_LEGACY all=n
 DRM_TDFX all=m
 DRM_R128 all=m
@@ -1303,12 +1310,28 @@ DRM_AMDGPU_CIK all=y
 DRM_AMDGPU_USERPTR all=y
 DRM_AMDGPU_GART_DEBUGFS all=n
 #- file drivers/gpu/drm/amd/acp/Kconfig goes here
+#- file drivers/gpu/drm/amd/display/Kconfig goes here
 
 #-
 #- *** FILE: drivers/gpu/drm/amd/amdkfd/Kconfig ***
 #-
 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
+
+#-
+#- *** FILE: drivers/gpu/drm/amd/lib/Kconfig ***
+#-
+CHASH_STATS all=n
+CHASH_SELFTEST all=n
+
 #-
 #- *** FILE: drivers/gpu/drm/ast/Kconfig ***
 #-
@@ -1379,8 +1402,14 @@ DRM_MGAG200 all=m
 DRM_NOUVEAU all=m
 NOUVEAU_DEBUG all=5
 NOUVEAU_DEBUG_DEFAULT all=3
+NOUVEAU_DEBUG_MMU all=n
 DRM_NOUVEAU_BACKLIGHT all=y
 
+#-
+#- *** FILE: drivers/gpu/drm/panel/Kconfig ***
+#-
+DRM_PANEL_RASPBERRYPI_TOUCHSCREEN all=m
+
 #-
 #- *** FILE: drivers/gpu/drm/qxl/Kconfig ***
 #-
@@ -1641,6 +1670,7 @@ SENSORS_MAX1619 all=m
 SENSORS_MAX1668 all=m
 SENSORS_MAX197 all=m
 SENSORS_MAX31722 all=m
+SENSORS_MAX6621 all=m
 SENSORS_MAX6639 all=m
 SENSORS_MAX6642 all=m
 SENSORS_MAX6650 all=m
@@ -1742,6 +1772,7 @@ SENSORS_LTC2978_REGULATOR all=y
 SENSORS_LTC3815 all=m
 SENSORS_MAX16064 all=m
 SENSORS_MAX20751 all=m
+SENSORS_MAX31785 all=m
 SENSORS_MAX34440 all=m
 SENSORS_MAX8688 all=m
 SENSORS_TPS40422 all=m
@@ -1753,7 +1784,7 @@ SENSORS_ZL6100 all=m
 #-
 #- *** FILE: drivers/hwspinlock/Kconfig ***
 #-
-HWSPINLOCK all=m
+HWSPINLOCK all=y
 
 #-
 #- *** FILE: drivers/hwtracing/intel_th/Kconfig ***
@@ -1995,6 +2026,7 @@ DA311 all=m
 DMARD09 all=m
 DMARD10 all=m
 HID_SENSOR_ACCEL_3D all=m
+IIO_CROS_EC_ACCEL_LEGACY all=m
 IIO_ST_ACCEL_3AXIS all=m
 KXSD9 all=m
 KXSD9_SPI all=m
@@ -2120,10 +2152,12 @@ AD5791 all=m
 AD7303 all=m
 CIO_DAC all=m
 AD8801 all=m
+DS4424 all=m
 M62332 all=m
 MAX517 all=m
 MCP4725 all=m
 MCP4922 all=m
+TI_DAC082S085 all=m
 
 #-
 #- *** FILE: drivers/iio/dummy/Kconfig ***
@@ -2305,6 +2339,7 @@ ZPA2326 all=m
 #-
 AS3935 all=m
 LIDAR_LITE_V2 all=m
+RFD77402 all=m
 SRF04 all=m
 SX9500 all=m
 SRF08 all=m
@@ -2757,9 +2792,12 @@ TOUCHSCREEN_HAMPSHIRE all=m
 TOUCHSCREEN_EETI all=m
 TOUCHSCREEN_EGALAX all=m
 TOUCHSCREEN_EGALAX_SERIAL all=m
+TOUCHSCREEN_EXC3000 all=m
 TOUCHSCREEN_FUJITSU all=m
 TOUCHSCREEN_GOODIX all=m
+TOUCHSCREEN_HIDEEP all=m
 TOUCHSCREEN_ILI210X all=m
+TOUCHSCREEN_S6SY761 all=m
 TOUCHSCREEN_GUNZE all=m
 TOUCHSCREEN_EKTF2127 all=m
 TOUCHSCREEN_ELAN all=m
@@ -2976,6 +3014,7 @@ LEDS_CLASS all=y
 LEDS_CLASS_FLASH all=m
 LEDS_BRIGHTNESS_HW_CHANGED all=y
 #- LED drivers
+LEDS_APU all=m
 LEDS_AS3645A all=m
 LEDS_LM3530 all=m
 LEDS_LM3533 all=m
@@ -3033,6 +3072,7 @@ LEDS_TRIGGER_MTD all=y
 LEDS_TRIGGER_HEARTBEAT all=m
 LEDS_TRIGGER_BACKLIGHT all=m
 LEDS_TRIGGER_CPU all=y
+LEDS_TRIGGER_ACTIVITY all=m
 LEDS_TRIGGER_GPIO all=m
 LEDS_TRIGGER_DEFAULT_ON all=m
 #- iptables trigger is under Netfilter config (LED target)
@@ -4138,6 +4178,7 @@ MFD_INTEL_QUARK_I2C_GPIO all=m
 LPC_ICH all=m
 LPC_SCH all=m
 INTEL_SOC_PMIC_BXTWC all=m
+INTEL_SOC_PMIC_CHTDC_TI all=m
 MFD_INTEL_LPSS_ACPI all=m
 MFD_INTEL_LPSS_PCI all=m
 MFD_JANZ_CMODIO all=m
@@ -4234,7 +4275,6 @@ SENSORS_BH1770 all=m
 SENSORS_APDS990X all=m
 HMC6352 all=m
 DS1682 all=m
-TI_DAC7512 all=m
 VMWARE_BALLOON all=m
 PCH_PHUB all=m
 USB_SWITCH_FSA9480 all=m
@@ -4257,7 +4297,7 @@ PCI_ENDPOINT_TEST all=m
 #-
 #- *** FILE: drivers/misc/altera-stapl/Kconfig ***
 #-
-#- Altera FPGA firmware download module
+#- Altera FPGA firmware download module (requires I2C)
 ALTERA_STAPL all=m
 
 #-
@@ -4546,6 +4586,8 @@ MTD_ONENAND_2X_PROGRAM all=y
 MTD_SPI_NOR all=m
 MTD_MT81xx_NOR all=m
 MTD_SPI_NOR_USE_4K_SECTORS all=y
+SPI_INTEL_SPI_PCI all=m
+SPI_INTEL_SPI_PLATFORM all=m
 
 #-
 #- *** FILE: drivers/mtd/ubi/Kconfig ***
@@ -4612,6 +4654,7 @@ XEN_NETDEV_FRONTEND all=m
 XEN_NETDEV_BACKEND all=m
 VMXNET3 all=m
 FUJITSU_ES all=m
+THUNDERBOLT_NET all=m
 #- file drivers/net/hyperv/Kconfig goes here
 
 #-
@@ -5192,6 +5235,7 @@ SKY2_DEBUG all=n
 MLX4_EN all=m
 MLX4_EN_DCB all=y
 MLX4_CORE all=m
+MLX4_CORE_GEN2 all=y
 
 #-
 #- *** FILE: drivers/net/ethernet/mellanox/mlx5/core/Kconfig ***
@@ -5563,6 +5607,7 @@ BROADCOM_PHY all=m
 CICADA_PHY all=m
 CORTINA_PHY all=m
 DAVICOM_PHY all=m
+DP83822_PHY all=m
 DP83848_PHY all=m
 DP83867_PHY all=m
 FIXED_PHY all=y
@@ -5578,6 +5623,7 @@ MICROSEMI_PHY all=m
 NATIONAL_PHY all=m
 QSEMI_PHY all=m
 REALTEK_PHY all=m
+RENESAS_PHY all=m
 ROCKCHIP_PHY all=m
 SMSC_PHY all=m
 STE10XP all=m
@@ -6269,6 +6315,11 @@ NTB_IDT all=m
 #-
 NTB_INTEL all=m
 
+#-
+#- *** FILE: drivers/ntb/hw/mscc/Kconfig ***
+#-
+NTB_SWITCHTEC all=m
+
 #-
 #- *** FILE: drivers/ntb/test/Kconfig ***
 #-
@@ -6290,6 +6341,7 @@ NVDIMM_DAX all=y
 #-
 NVME_CORE all=m
 BLK_DEV_NVME all=m
+NVME_MULTIPATH all=y
 NVME_RDMA all=m
 NVME_FC all=m
 
@@ -6340,11 +6392,11 @@ PARPORT_NOT_PC all=y
 #-
 #- file drivers/pci/pcie/Kconfig goes here
 PCI_MSI all=y sparc64=n
+PCI_QUIRKS all=y
 PCI_DEBUG all=n
 PCI_REALLOC_ENABLE_AUTO all=y
 PCI_STUB all=m
 XEN_PCIDEV_FRONTEND all=m
-HT_IRQ i386=y x86_64=y
 PCI_IOV all=y
 PCI_PRI all=y
 PCI_PASID all=y
@@ -6531,6 +6583,7 @@ PINCTRL_MCP23S08 all=m
 #- file drivers/pinctrl/vt8500/Kconfig goes here
 #- file drivers/pinctrl/mediatek/Kconfig goes here
 #- file drivers/pinctrl/zte/Kconfig goes here
+#- file drivers/pinctrl/meson/Kconfig goes here
 
 #-
 #- *** FILE: drivers/pinctrl/intel/Kconfig ***
@@ -6539,6 +6592,7 @@ PINCTRL_BAYTRAIL all=y
 PINCTRL_CHERRYVIEW all=m
 PINCTRL_BROXTON all=m
 PINCTRL_CANNONLAKE all=m
+PINCTRL_CEDARFORK all=m
 PINCTRL_DENVERTON all=m
 PINCTRL_GEMINILAKE all=m
 PINCTRL_LEWISBURG all=m
@@ -6571,6 +6625,8 @@ ACERHDF all=m
 ALIENWARE_WMI all=m
 ASUS_LAPTOP i386=m x86_64=m
 DELL_SMBIOS all=m
+DELL_SMBIOS_WMI all=m
+DELL_SMBIOS_SMM all=m
 DELL_LAPTOP all=m
 DELL_WMI all=m
 DELL_WMI_AIO all=m
@@ -6607,6 +6663,7 @@ EEEPC_WMI all=m
 ASUS_WIRELESS all=m
 ACPI_WMI all=m
 WMI_BMOF all=m
+INTEL_WMI_THUNDERBOLT all=m
 MSI_WMI all=m
 PEAQ_WMI all=m
 TOPSTAR_LAPTOP all=m
@@ -6699,6 +6756,7 @@ BATTERY_DS2782 all=m
 BATTERY_PMU ppc=m
 BATTERY_SBS all=m
 CHARGER_SBS all=m
+MANAGER_SBS all=m
 BATTERY_BQ27XXX all=m
 BATTERY_BQ27XXX_I2C all=m
 BATTERY_BQ27XXX_HDQ all=m
@@ -6902,6 +6960,7 @@ RESET_TI_SYSCON all=m
 #-
 RPMSG_CHAR all=m
 RPMSG_QCOM_GLINK_RPM all=m
+RPMSG_VIRTIO all=m
 
 #-
 #- *** FILE: drivers/rtc/Kconfig ***
@@ -6938,6 +6997,7 @@ RTC_DRV_ISL12022 all=m
 RTC_DRV_X1205 all=m
 RTC_DRV_PCF8523 all=m
 RTC_DRV_PCF85063 all=m
+RTC_DRV_PCF85363 all=m
 RTC_DRV_PCF8563 all=m
 RTC_DRV_PCF8583 all=m sparc=n
 RTC_DRV_M41T80 all=m
@@ -7841,26 +7901,19 @@ INTEL_ATOMISP all=y
 #- *** FILE: drivers/staging/media/atomisp/i2c/Kconfig ***
 #-
 #- file drivers/staging/media/atomisp/i2c/ov5693/Kconfig goes here
-#- file drivers/staging/media/atomisp/i2c/imx/Kconfig goes here
-VIDEO_OV2722 all=m
-VIDEO_GC2235 all=m
-VIDEO_OV8858 all=m
-VIDEO_MSRLIST_HELPER all=m
-VIDEO_MT9M114 all=m
-VIDEO_AP1302 all=m
-VIDEO_GC0310 all=m
-VIDEO_OV2680 all=m
-VIDEO_LM3554 all=m
-
-#-
-#- *** FILE: drivers/staging/media/atomisp/i2c/imx/Kconfig ***
-#-
-VIDEO_IMX all=m
+VIDEO_ATOMISP_OV2722 all=m
+VIDEO_ATOMISP_GC2235 all=m
+VIDEO_ATOMISP_OV8858 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_OV5693 all=m
+VIDEO_ATOMISP_OV5693 all=m
 
 #-
 #- *** FILE: drivers/staging/media/atomisp/pci/Kconfig ***
@@ -8020,14 +8073,7 @@ SPEAKUP_SYNTH_DUMMY all=m
 #-
 #- *** FILE: drivers/staging/typec/Kconfig ***
 #-
-TYPEC_TCPM all=m
 TYPEC_TCPCI all=m
-#- file drivers/staging/typec/fusb302/Kconfig goes here
-
-#-
-#- *** FILE: drivers/staging/typec/fusb302/Kconfig ***
-#-
-TYPEC_FUSB302 all=m
 
 #-
 #- *** FILE: drivers/staging/unisys/Kconfig ***
@@ -8068,7 +8114,6 @@ DRM_VBOXVIDEO all=m
 #-
 #- VME Device Drivers
 VME_USER all=m
-VME_PIO2 all=m
 
 #-
 #- *** FILE: drivers/staging/vt6655/Kconfig ***
@@ -8733,6 +8778,20 @@ USB_STORAGE_CYPRESS_ATACB all=m
 USB_STORAGE_ENE_UB6250 all=m
 USB_UAS all=m
 
+#-
+#- *** FILE: drivers/usb/typec/Kconfig ***
+#-
+TYPEC all=m
+TYPEC_TCPM all=m
+#- file drivers/usb/typec/fusb302/Kconfig goes here
+#- file drivers/usb/typec/ucsi/Kconfig goes here
+TYPEC_TPS6598X all=m
+
+#-
+#- *** FILE: drivers/usb/typec/fusb302/Kconfig ***
+#-
+TYPEC_FUSB302 all=m
+
 #-
 #- *** FILE: drivers/usb/typec/ucsi/Kconfig ***
 #-
@@ -8911,7 +8970,6 @@ FB_TCX sparc=y sparc64=n
 FB_CG14 sparc=y sparc64=n
 FB_P9100 sparc=y sparc64=n
 FB_LEO sparc=y sparc64=n
-FB_IGA sparc=n
 FB_XVR500 sparc64=y
 FB_XVR2500 sparc64=y
 FB_OPENCORES all=m
@@ -9096,6 +9154,7 @@ W1_SLAVE_DS2760 all=m
 W1_SLAVE_DS2780 all=m
 W1_SLAVE_DS2781 all=m
 W1_SLAVE_DS28E04 all=m
+W1_SLAVE_DS28E17 all=m
 
 #-
 #- *** FILE: drivers/watchdog/Kconfig ***
@@ -9203,6 +9262,7 @@ XEN_SYS_HYPERVISOR all=y
 XEN_GNTDEV all=m
 XEN_GRANT_DEV_ALLOC all=m
 XEN_PCIDEV_BACKEND all=m
+XEN_PVCALLS_FRONTEND all=m
 XEN_PVCALLS_BACKEND all=y
 XEN_SCSI_BACKEND all=m
 XEN_ACPI_PROCESSOR all=m
@@ -9361,6 +9421,7 @@ BTRFS_FS_CHECK_INTEGRITY all=n
 BTRFS_FS_RUN_SANITY_TESTS all=y
 BTRFS_DEBUG all=n
 BTRFS_ASSERT all=n
+BTRFS_FS_REF_VERIFY all=n
 
 #-
 #- *** FILE: fs/cachefiles/Kconfig ***
@@ -9407,6 +9468,7 @@ CONFIGFS_FS all=y
 #- *** FILE: fs/cramfs/Kconfig ***
 #-
 CRAMFS all=m
+CRAMFS_MTD all=y
 
 #-
 #- *** FILE: fs/crypto/Kconfig ***
@@ -9724,6 +9786,7 @@ ORANGEFS_FS all=m
 #-
 OVERLAY_FS all=m
 OVERLAY_FS_REDIRECT_DIR all=y
+OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW all=n
 OVERLAY_FS_INDEX all=y
 
 #-
@@ -9843,6 +9906,7 @@ XFS_FS all=m
 XFS_QUOTA all=y
 XFS_POSIX_ACL all=y
 XFS_RT all=n
+XFS_ONLINE_SCRUB all=y
 XFS_WARN all=n
 XFS_DEBUG all=n
 
@@ -9870,7 +9934,6 @@ SYSVIPC all=y
 SYSVIPC_SYSCTL all=y
 POSIX_MQUEUE all=y
 CROSS_MEMORY_ATTACH all=y
-FHANDLE all=y
 USELIB all=y
 AUDIT all=y
 AUDITSYSCALL all=y
@@ -9884,6 +9947,7 @@ TASKSTATS all=y
 TASK_DELAY_ACCT all=y
 TASK_XACCT all=y
 TASK_IO_ACCOUNTING all=y
+CPU_ISOLATION all=y
 #- file kernel/rcu/Kconfig goes here
 IKCONFIG all=m
 IKCONFIG_PROC all=y
@@ -9932,10 +9996,7 @@ SYSCTL all=y
 ANON_INODES all=y
 EXPERT all=n
 UID16 all=y
-KALLSYMS all=y
-KALLSYMS_ALL all=y
-KALLSYMS_ABSOLUTE_PERCPU all=y
-KALLSYMS_BASE_RELATIVE all=y
+FHANDLE all=y
 PRINTK all=y
 BUG all=y
 ELF_CORE all=y
@@ -9946,11 +10007,15 @@ EPOLL all=y
 SIGNALFD all=y
 TIMERFD all=y
 EVENTFD all=y
-BPF_SYSCALL all=y
 SHMEM all=y
 AIO all=y
+KALLSYMS all=y
+KALLSYMS_ALL all=y
+KALLSYMS_ABSOLUTE_PERCPU all=y
+KALLSYMS_BASE_RELATIVE all=y
+BPF_SYSCALL all=y
+BPF_JIT_ALWAYS_ON all=y
 USERFAULTFD all=y
-PCI_QUIRKS all=y
 EMBEDDED all=n
 PC104 all=y
 PERF_EVENTS all=y
@@ -9966,7 +10031,6 @@ SLAB_FREELIST_HARDENED all=y
 SLUB_CPU_PARTIAL all=y
 PROFILING all=y
 #- file arch/Kconfig goes here
-SLABINFO all=y
 RT_MUTEXES all=y
 BASE_SMALL all=0
 MODULES all=y
@@ -10076,6 +10140,7 @@ CONTEXT_SWITCH_TRACER all=y
 FTRACE all=y
 FUNCTION_TRACER all=y
 FUNCTION_GRAPH_TRACER all=y
+PREEMPTIRQ_EVENTS all=n
 IRQSOFF_TRACER all=n
 SCHED_TRACER all=y
 HWLAT_TRACER all=n
@@ -10188,7 +10253,6 @@ DEBUG_VM all=n
 DEBUG_VIRTUAL all=n
 MEMORY_NOTIFIER_ERROR_INJECT all=m
 DEBUG_HIGHMEM i386=n sparc=n
-#- file lib/Kconfig.kmemcheck goes here
 #- file lib/Kconfig.kasan goes here
 ARCH_HAS_KCOV all=y
 KCOV all=n
@@ -10263,6 +10327,7 @@ TEST_PARMAN all=m
 TEST_LKM all=m
 TEST_USER_COPY all=n
 TEST_BPF all=n
+TEST_FIND_BIT all=m
 TEST_FIRMWARE all=m
 TEST_SYSCTL all=m
 TEST_UDELAY all=m
@@ -10291,11 +10356,6 @@ KDB_DEFAULT_ENABLE all=0x0
 KDB_KEYBOARD all=y
 KDB_CONTINUE_CATASTROPHIC all=0
 
-#-
-#- *** FILE: lib/Kconfig.kmemcheck ***
-#-
-KMEMCHECK all=n
-
 #-
 #- *** FILE: lib/Kconfig.ubsan ***
 #-
@@ -10369,6 +10429,7 @@ HMM_MIRROR all=n
 DEVICE_PRIVATE all=y
 DEVICE_PUBLIC all=y
 PERCPU_STATS all=n
+GUP_BENCHMARK all=n
 
 #-
 #- *** FILE: mm/Kconfig.debug ***
@@ -11245,6 +11306,7 @@ NET_SCH_SFB all=m
 NET_SCH_SFQ all=m
 NET_SCH_TEQL all=m
 NET_SCH_TBF all=m
+NET_SCH_CBS all=m
 NET_SCH_GRED all=m
 NET_SCH_DSMARK all=m
 NET_SCH_NETEM all=m
@@ -11367,6 +11429,7 @@ UNIX_DIAG all=m
 #- *** FILE: net/vmw_vsock/Kconfig ***
 #-
 VSOCKETS all=m
+VSOCKETS_DIAG all=m
 VMWARE_VMCI_VSOCKETS all=m
 VIRTIO_VSOCKETS all=m
 HYPERV_VSOCKETS all=m
@@ -11386,7 +11449,6 @@ NL80211_TESTMODE all=y
 CFG80211_DEVELOPER_WARNINGS all=n
 CFG80211_DEFAULT_PS all=y
 CFG80211_DEBUGFS all=n
-CFG80211_INTERNAL_REGDB all=n
 CFG80211_WEXT all=y
 LIB80211 all=m
 LIB80211_DEBUG all=n
@@ -11538,6 +11600,7 @@ SND all=m
 #- file sound/pci/Kconfig goes here
 #- file sound/hda/Kconfig goes here
 #- file sound/ppc/Kconfig goes here
+#- file sound/ac97/Kconfig goes here
 #- file sound/aoa/Kconfig goes here
 #- file sound/arm/Kconfig goes here
 #- file sound/atmel/Kconfig goes here
@@ -11552,8 +11615,6 @@ SND all=m
 #- file sound/soc/Kconfig goes here
 #- file sound/x86/Kconfig goes here
 #- file sound/synth/Kconfig goes here
-SOUND_PRIME all=m
-#- file sound/oss/Kconfig goes here
 AC97_BUS all=m
 
 #-
@@ -11694,36 +11755,6 @@ SND_WAVEFRONT alpha=m i386=m
 SND_MSND_PINNACLE i386=m
 SND_MSND_CLASSIC i386=m
 
-#-
-#- *** FILE: sound/oss/Kconfig ***
-#-
-SOUND_MSNDCLAS all=n
-#- Compiled-in MSND Classic support requires firmware during compilation.
-SOUND_MSNDPIN all=n
-#- Compiled-in MSND Pinnacle support requires firmware during compilation.
-#- MSND Pinnacle DSP section will be configured to above parameters.
-#- Pinnacle-specific Device Configuration (0 disables)
-SOUND_OSS all=m
-SOUND_TRACEINIT all=y i386=n x86_64=n
-SOUND_DMAP all=n
-SOUND_VMIDI all=m
-SOUND_TRIX all=m x86_64=n
-SOUND_MSS all=m x86_64=n
-SOUND_MPU401 all=m x86_64=n
-SOUND_PAS all=m x86_64=n
-SOUND_PSS all=m x86_64=n
-PSS_MIXER all=y
-PSS_HAVE_BOOT all=n
-SOUND_SB all=m x86_64=n
-SOUND_YM3812 all=m
-SOUND_UART6850 all=m x86_64=n
-SOUND_AEDSP16 all=m x86_64=n
-SC6600 all=y
-SC6600_JOY all=y
-SC6600_CDROM all=4
-SC6600_CDROMBASE all=0x0
-SOUND_KAHLUA all=m
-
 #-
 #- *** FILE: sound/pci/Kconfig ***
 #-
@@ -11901,6 +11932,7 @@ SND_SOC all=m
 #- *** FILE: sound/soc/amd/Kconfig ***
 #-
 SND_SOC_AMD_ACP all=m
+SND_SOC_AMD_CZ_RT5645_MACH all=m
 
 #-
 #- *** FILE: sound/soc/atmel/Kconfig ***
@@ -12072,13 +12104,21 @@ SND_SOC_IMG_PISTACHIO_INTERNAL_DAC all=m
 SND_SST_IPC all=m
 SND_SST_IPC_ACPI all=m
 SND_SOC_INTEL_SST all=m
+SND_SOC_INTEL_SST_TOPLEVEL all=m
+SND_SOC_INTEL_HASWELL all=m
+SND_SOC_INTEL_BAYTRAIL all=m
+SND_SST_ATOM_HIFI2_PLATFORM all=m
+SND_SOC_INTEL_SKYLAKE all=m
+#- file sound/soc/intel/boards/Kconfig goes here
+
+#-
+#- *** FILE: sound/soc/intel/boards/Kconfig ***
+#-
 SND_SOC_INTEL_HASWELL_MACH all=m
-SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH all=m
-SND_SOC_INTEL_BXT_RT298_MACH all=m
-SND_SOC_INTEL_BYT_RT5640_MACH all=m
-SND_SOC_INTEL_BYT_MAX98090_MACH all=m
 SND_SOC_INTEL_BDW_RT5677_MACH all=m
 SND_SOC_INTEL_BROADWELL_MACH all=m
+SND_SOC_INTEL_BYT_MAX98090_MACH all=m
+SND_SOC_INTEL_BYT_RT5640_MACH all=m
 SND_SOC_INTEL_BYTCR_RT5640_MACH all=m
 SND_SOC_INTEL_BYTCR_RT5651_MACH all=m
 SND_SOC_INTEL_CHT_BSW_RT5672_MACH all=m
@@ -12087,11 +12127,13 @@ SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH all=m
 SND_SOC_INTEL_BYT_CHT_DA7213_MACH all=m
 SND_SOC_INTEL_BYT_CHT_ES8316_MACH all=m
 SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH all=m
-SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH all=m
-SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH all=m
 SND_SOC_INTEL_SKL_RT286_MACH all=m
 SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH all=m
 SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH all=m
+SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH all=m
+SND_SOC_INTEL_BXT_RT298_MACH all=m
+SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH all=m
+SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH all=m
 
 #-
 #- *** FILE: sound/soc/qcom/Kconfig ***
@@ -12176,19 +12218,24 @@ BLK_CPQ_CISS_DA all=m sparc=n
 BLK_DEV_HD all=n
 BLK_DEV_NVME_SCSI all=y
 BLK_DEV_OSD all=m
+BLK_DEV_RAM_DAX all=y
+CFG80211_INTERNAL_REGDB all=n
 CIFS_SMB2 all=y
 CISS_SCSI_TAPE all=y
 DM_CACHE_CLEANER all=m
 DW_DMAC_BIG_ENDIAN_IO all=n
 EDAC_MM_EDAC all=m
+FB_IGA sparc=n
 FRAME_POINTER_UNWINDER all=n
 FUJITSU_LAPTOP_DEBUG all=n
 GPIO_MCP23S08 all=m
 HFI1_VERBS_31BIT_PSN all=y
+HT_IRQ i386=y x86_64=y
 HW_RANDOM_EXYNOS all=m
 I40E_FCOE all=y
 INTEL_RDT_A all=y
 IPV6_SEG6_INLINE all=y
+KMEMCHECK all=n
 KVM_DEVICE_ASSIGNMENT all=y
 LEDS_DELL_NETBOOKS all=m
 LGUEST i386=m
@@ -12206,6 +12253,8 @@ MTD_NAND_IDS all=m
 NETFILTER_DEBUG all=n
 NFC_WILINK all=m
 NR_DEV_DAX all=32768
+PSS_HAVE_BOOT all=n
+PSS_MIXER all=y
 RCU_KTHREAD_PRIO all=0
 RCU_NOCB_CPU_ALL all=n
 RCU_NOCB_CPU_NONE all=y
@@ -12215,10 +12264,45 @@ RCU_TORTURE_TEST_SLOW_INIT all=n
 RCU_TORTURE_TEST_SLOW_PREINIT all=n
 REGULATOR_ARIZONA all=m
 SAMSUNG_USBPHY all=m
+SC6600 all=y
+SC6600_CDROM all=4
+SC6600_CDROMBASE all=0x0
+SC6600_JOY all=y
+SLABINFO all=y
 SOC_CAMERA_OV2640 all=m
 SOC_CAMERA_OV6650 all=m
+SOUND_AEDSP16 all=m x86_64=n
+SOUND_DMAP all=n
+SOUND_KAHLUA all=m
+SOUND_MPU401 all=m x86_64=n
+SOUND_MSNDCLAS all=n
+SOUND_MSNDPIN all=n
+SOUND_MSS all=m x86_64=n
+SOUND_OSS all=m
+SOUND_PAS all=m x86_64=n
+SOUND_PRIME all=m
+SOUND_PSS all=m x86_64=n
+SOUND_SB all=m x86_64=n
+SOUND_TRACEINIT all=y i386=n x86_64=n
+SOUND_TRIX all=m x86_64=n
+SOUND_UART6850 all=m x86_64=n
+SOUND_VMIDI all=m
+SOUND_YM3812 all=m
 SPARSE_RCU_POINTER all=n
+TI_DAC7512 all=m
 TI_SYSCON_RESET all=m
 TRACE_ENUM_MAP_FILE all=n
 UCSI all=m
+VIDEO_AP1302 all=m
+VIDEO_GC0310 all=m
+VIDEO_GC2235 all=m
+VIDEO_IMX all=m
+VIDEO_LM3554 all=m
+VIDEO_MSRLIST_HELPER all=m
+VIDEO_MT9M114 all=m
+VIDEO_OV2680 all=m
+VIDEO_OV2722 all=m
+VIDEO_OV5693 all=m
+VIDEO_OV8858 all=m
+VME_PIO2 all=m
 W1_SLAVE_BQ27000 all=m
================================================================

---- gitweb:

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



More information about the pld-cvs-commit mailing list