MVEBU64 next and default update

- added updated AUFS and updated 8811/12/14AU Wireless driver
- upstream patches
- config update
This commit is contained in:
Igor Pecovnik 2018-02-08 15:27:42 +01:00
parent 3baa82de04
commit ee58610a25
18 changed files with 2025666 additions and 1002938 deletions

View file

@ -2430,6 +2430,7 @@ CONFIG_LIBERTAS_SDIO=m
CONFIG_LIBERTAS_SPI=m
# CONFIG_LIBERTAS_DEBUG is not set
CONFIG_LIBERTAS_MESH=y
CONFIG_RTL8812AU=m
# CONFIG_HERMES is not set
# CONFIG_P54_COMMON is not set
CONFIG_RT2X00=m

View file

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 4.14.14 Kernel Configuration
# Linux/arm64 4.14.18 Kernel Configuration
#
CONFIG_ARM64=y
CONFIG_64BIT=y
@ -202,6 +202,7 @@ CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_BPF_SYSCALL=y
# CONFIG_BPF_JIT_ALWAYS_ON is not set
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_ADVISE_SYSCALLS=y
@ -2611,6 +2612,8 @@ CONFIG_MWIFIEX_SDIO=m
CONFIG_MWIFIEX_PCIE=m
CONFIG_MWIFIEX_USB=m
CONFIG_MWL8K=m
CONFIG_RTL8812AU=m
CONFIG_RTL8814AU=m
CONFIG_WLAN_VENDOR_MEDIATEK=y
CONFIG_MT7601U=m
CONFIG_WLAN_VENDOR_RALINK=y
@ -2690,8 +2693,6 @@ CONFIG_ZD1211RW=m
# CONFIG_ZD1211RW_DEBUG is not set
CONFIG_WLAN_VENDOR_QUANTENNA=y
# CONFIG_QTNFMAC_PEARL_PCIE is not set
CONFIG_RTL8812AU=m
CONFIG_RTL8814AU=m
CONFIG_MAC80211_HWSIM=m
CONFIG_USB_NET_RNDIS_WLAN=m
@ -4773,6 +4774,23 @@ CONFIG_UBIFS_FS_SECURITY=y
# CONFIG_UFS_FS is not set
CONFIG_EXOFS_FS=m
# CONFIG_EXOFS_DEBUG is not set
CONFIG_AUFS_FS=m
CONFIG_AUFS_BRANCH_MAX_127=y
# CONFIG_AUFS_BRANCH_MAX_511 is not set
# CONFIG_AUFS_BRANCH_MAX_1023 is not set
# CONFIG_AUFS_BRANCH_MAX_32767 is not set
CONFIG_AUFS_SBILIST=y
# CONFIG_AUFS_HNOTIFY is not set
# CONFIG_AUFS_EXPORT is not set
# CONFIG_AUFS_XATTR is not set
# CONFIG_AUFS_FHSM is not set
# CONFIG_AUFS_RDU is not set
# CONFIG_AUFS_DIRREN is not set
# CONFIG_AUFS_SHWH is not set
# CONFIG_AUFS_BR_RAMFS is not set
# CONFIG_AUFS_BR_FUSE is not set
CONFIG_AUFS_BDEV_LOOP=y
# CONFIG_AUFS_DEBUG is not set
CONFIG_ORE=m
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
@ -5119,6 +5137,7 @@ CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_RNG_DEFAULT=m
CONFIG_CRYPTO_AKCIPHER2=y
CONFIG_CRYPTO_KPP2=y
CONFIG_CRYPTO_KPP=m
CONFIG_CRYPTO_ACOMP2=y
# CONFIG_CRYPTO_RSA is not set
# CONFIG_CRYPTO_DH is not set

View file

@ -492,7 +492,7 @@ index 0000000..fa82b63
+# End: ;
diff --git a/Documentation/filesystems/aufs/design/01intro.txt b/Documentation/filesystems/aufs/design/01intro.txt
new file mode 100644
index 0000000..34da01b
index 0000000..ae16191
--- /dev/null
+++ b/Documentation/filesystems/aufs/design/01intro.txt
@@ -0,0 +1,171 @@
@ -515,7 +515,7 @@ index 0000000..34da01b
+Introduction
+----------------------------------------
+
+aufs [ei ju: ef es] | [a u f s]
+aufs [ei ju: ef es] | /ey-yoo-ef-es/ | [a u f s]
+1. abbrev. for "advanced multi-layered unification filesystem".
+2. abbrev. for "another unionfs".
+3. abbrev. for "auf das" in German which means "on the" in English.
@ -1773,10 +1773,10 @@ index 0000000..b7ba75d
+Currently this approach is applied to address_space_operations for
+regular files only.
diff --git a/MAINTAINERS b/MAINTAINERS
index 7008b0d..cf279b8 100644
index 7875f7b..6a5590c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2030,6 +2030,19 @@ F: include/linux/audit.h
@@ -2033,6 +2033,19 @@ F: include/linux/audit.h
F: include/uapi/linux/audit.h
F: kernel/audit*
@ -1797,7 +1797,7 @@ index 7008b0d..cf279b8 100644
M: Miguel Ojeda Sandonis <miguel.ojeda.sandonis@gmail.com>
W: http://miguelojeda.es/auxdisplay.htm
diff --git a/drivers/block/loop.c b/drivers/block/loop.c
index cec36d5..4e5c34e 100644
index 1c36de9..6e34657 100644
--- a/drivers/block/loop.c
+++ b/drivers/block/loop.c
@@ -712,6 +712,24 @@ static inline int is_loop_device(struct file *file)
@ -1826,10 +1826,10 @@ index cec36d5..4e5c34e 100644
static ssize_t loop_attr_show(struct device *dev, char *page,
diff --git a/fs/Kconfig b/fs/Kconfig
index 5f56849..f5ea957 100644
index a5d2dc3..64ba8bb 100644
--- a/fs/Kconfig
+++ b/fs/Kconfig
@@ -221,6 +221,7 @@ source "fs/pstore/Kconfig"
@@ -222,6 +222,7 @@ source "fs/pstore/Kconfig"
source "fs/sysv/Kconfig"
source "fs/ufs/Kconfig"
source "fs/exofs/Kconfig"
@ -1838,10 +1838,10 @@ index 5f56849..f5ea957 100644
endif # MISC_FILESYSTEMS
diff --git a/fs/Makefile b/fs/Makefile
index 79f5225..a7c7f16 100644
index 3b54070..77ed517 100644
--- a/fs/Makefile
+++ b/fs/Makefile
@@ -126,3 +126,4 @@ obj-y += exofs/ # Multiple modules
@@ -127,3 +127,4 @@ obj-y += exofs/ # Multiple modules
obj-$(CONFIG_CEPH_FS) += ceph/
obj-$(CONFIG_PSTORE) += pstore/
obj-$(CONFIG_EFIVAR_FS) += efivarfs/
@ -2154,10 +2154,10 @@ index 0000000..7f5eb78
+#endif /* __AUFS_H__ */
diff --git a/fs/aufs/branch.c b/fs/aufs/branch.c
new file mode 100644
index 0000000..7024a54
index 0000000..8108470
--- /dev/null
+++ b/fs/aufs/branch.c
@@ -0,0 +1,1421 @@
@@ -0,0 +1,1420 @@
+/*
+ * Copyright (C) 2005-2017 Junjiro R. Okajima
+ *
@ -2297,7 +2297,7 @@ index 0000000..7024a54
+ goto out;
+ add_branch->br_xino.xi_nondir.total = 8; /* initial size */
+ add_branch->br_xino.xi_nondir.array
+ = kzalloc(sizeof(ino_t) * add_branch->br_xino.xi_nondir.total,
+ = kcalloc(sizeof(ino_t), add_branch->br_xino.xi_nondir.total,
+ GFP_NOFS);
+ if (unlikely(!add_branch->br_xino.xi_nondir.array))
+ goto out_br;
@ -3555,8 +3555,7 @@ index 0000000..7024a54
+ goto out; /* success */
+
+out_bf:
+ if (bf)
+ kfree(bf);
+ kfree(bf);
+out:
+ AuTraceErr(err);
+ return err;
@ -12355,10 +12354,10 @@ index 0000000..ef6f99e
+}
diff --git a/fs/aufs/file.c b/fs/aufs/file.c
new file mode 100644
index 0000000..82d6905
index 0000000..000cf06
--- /dev/null
+++ b/fs/aufs/file.c
@@ -0,0 +1,850 @@
@@ -0,0 +1,837 @@
+/*
+ * Copyright (C) 2005-2017 Junjiro R. Okajima
+ *
@ -12583,11 +12582,11 @@ index 0000000..82d6905
+
+int au_do_open(struct file *file, struct au_do_open_args *args)
+{
+ int err, no_lock = args->no_lock;
+ int err, aopen = args->aopen;
+ struct dentry *dentry;
+ struct au_finfo *finfo;
+
+ if (!no_lock)
+ if (!aopen)
+ err = au_finfo_init(file, args->fidir);
+ else {
+ lockdep_off();
@ -12599,25 +12598,12 @@ index 0000000..82d6905
+
+ dentry = file->f_path.dentry;
+ AuDebugOn(IS_ERR_OR_NULL(dentry));
+ if (!no_lock) {
+ di_write_lock_child(dentry);
+ err = au_cmoo(dentry);
+ di_downgrade_lock(dentry, AuLock_IR);
+ if (!err)
+ err = args->open(file, vfsub_file_flags(file), NULL);
+ di_read_unlock(dentry, AuLock_IR);
+ } else {
+ err = au_cmoo(dentry);
+ if (!err)
+ err = args->open(file, vfsub_file_flags(file),
+ args->h_file);
+ if (!err && au_fbtop(file) != au_dbtop(dentry))
+ /*
+ * cmoo happens after h_file was opened.
+ * need to refresh file later.
+ */
+ atomic_dec(&au_fi(file)->fi_generation);
+ }
+ di_write_lock_child(dentry);
+ err = au_cmoo(dentry);
+ di_downgrade_lock(dentry, AuLock_IR);
+ if (!err)
+ err = args->open(file, vfsub_file_flags(file), NULL);
+ di_read_unlock(dentry, AuLock_IR);
+
+ finfo = au_fi(file);
+ if (!err) {
@ -12625,7 +12611,7 @@ index 0000000..82d6905
+ au_sphl_add(&finfo->fi_hlist,
+ &au_sbi(file->f_path.dentry->d_sb)->si_files);
+ }
+ if (!no_lock)
+ if (!aopen)
+ fi_write_unlock(file);
+ else {
+ lockdep_off();
@ -13211,7 +13197,7 @@ index 0000000..82d6905
+};
diff --git a/fs/aufs/file.h b/fs/aufs/file.h
new file mode 100644
index 0000000..26a56be
index 0000000..71f58f0
--- /dev/null
+++ b/fs/aufs/file.h
@@ -0,0 +1,291 @@
@ -13291,7 +13277,7 @@ index 0000000..26a56be
+struct file *au_h_open(struct dentry *dentry, aufs_bindex_t bindex, int flags,
+ struct file *file, int force_wr);
+struct au_do_open_args {
+ int no_lock;
+ int aopen;
+ int (*open)(struct file *file, int flags,
+ struct file *h_file);
+ struct au_fidir *fidir;
@ -14068,7 +14054,7 @@ index 0000000..4624f1e
+#endif /* __AUFS_FSTYPE_H__ */
diff --git a/fs/aufs/hfsnotify.c b/fs/aufs/hfsnotify.c
new file mode 100644
index 0000000..a4eb689
index 0000000..49ba77d
--- /dev/null
+++ b/fs/aufs/hfsnotify.c
@@ -0,0 +1,287 @@
@ -14107,7 +14093,7 @@ index 0000000..a4eb689
+ hn_mark);
+ /* AuDbg("here\n"); */
+ au_cache_free_hnotify(hn);
+ smp_mb__before_atomic();
+ smp_mb__before_atomic(); /* for atomic64_dec */
+ if (atomic64_dec_and_test(&au_hfsn_ifree))
+ wake_up(&au_hfsn_wq);
+}
@ -15140,10 +15126,10 @@ index 0000000..63e9ddc
+}
diff --git a/fs/aufs/i_op.c b/fs/aufs/i_op.c
new file mode 100644
index 0000000..ba9d8c8
index 0000000..e317098
--- /dev/null
+++ b/fs/aufs/i_op.c
@@ -0,0 +1,1523 @@
@@ -0,0 +1,1531 @@
+/*
+ * Copyright (C) 2005-2017 Junjiro R. Okajima
+ *
@ -15404,8 +15390,8 @@ index 0000000..ba9d8c8
+ struct au_sphlhead *aopen;
+ struct aopen_node *node;
+ struct au_do_open_args args = {
+ .no_lock = 1,
+ .open = au_do_open_nondir
+ .aopen = 1,
+ .open = au_do_open_nondir
+ };
+
+ aopen = &au_sbi(inode->i_sb)->si_aopen;
@ -15425,7 +15411,7 @@ index 0000000..ba9d8c8
+ struct file *file, unsigned int open_flag,
+ umode_t create_mode, int *opened)
+{
+ int err, h_opened = *opened;
+ int err, unlocked, h_opened = *opened;
+ unsigned int lkup_flags;
+ struct dentry *parent, *d;
+ struct au_sphlhead *aopen;
@ -15470,6 +15456,7 @@ index 0000000..ba9d8c8
+ || !(open_flag & O_CREAT))
+ goto out_no_open;
+
+ unlocked = 0;
+ err = aufs_read_lock(dentry, AuLock_DW | AuLock_FLUSH | AuLock_GEN);
+ if (unlikely(err))
+ goto out;
@ -15500,6 +15487,9 @@ index 0000000..ba9d8c8
+ put_filp(args.file);
+ goto out_unlock;
+ }
+ di_write_unlock(parent);
+ di_write_unlock(dentry);
+ unlocked = 1;
+
+ /* some filesystems don't set FILE_CREATED while succeeded? */
+ *opened |= FILE_CREATED;
@ -15519,8 +15509,12 @@ index 0000000..ba9d8c8
+ fput(aopen_node.h_file);
+
+out_unlock:
+ di_write_unlock(parent);
+ aufs_read_unlock(dentry, AuLock_DW);
+ if (unlocked)
+ si_read_unlock(dentry->d_sb);
+ else {
+ di_write_unlock(parent);
+ aufs_read_unlock(dentry, AuLock_DW);
+ }
+ AuDbgDentry(dentry);
+ if (unlikely(err < 0))
+ goto out;
@ -24097,10 +24091,10 @@ index 0000000..885464d
+}
diff --git a/fs/aufs/opts.h b/fs/aufs/opts.h
new file mode 100644
index 0000000..d50e65f
index 0000000..c156995
--- /dev/null
+++ b/fs/aufs/opts.h
@@ -0,0 +1,212 @@
@@ -0,0 +1,213 @@
+/*
+ * Copyright (C) 2005-2017 Junjiro R. Okajima
+ *
@ -24303,6 +24297,7 @@ index 0000000..d50e65f
+const char *au_optstr_wbr_create(int wbr_create);
+
+void au_opts_free(struct au_opts *opts);
+struct super_block;
+int au_opts_parse(struct super_block *sb, char *str, struct au_opts *opts);
+int au_opts_verify(struct super_block *sb, unsigned long sb_flags,
+ unsigned int pending);
@ -32649,10 +32644,10 @@ index 0000000..1eb5aba
+}
diff --git a/fs/aufs/whout.h b/fs/aufs/whout.h
new file mode 100644
index 0000000..d06f3b2
index 0000000..eb4b182
--- /dev/null
+++ b/fs/aufs/whout.h
@@ -0,0 +1,84 @@
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2005-2017 Junjiro R. Okajima
+ *
@ -32685,6 +32680,7 @@ index 0000000..d06f3b2
+int au_wh_name_alloc(struct qstr *wh, const struct qstr *name);
+int au_wh_test(struct dentry *h_parent, struct qstr *wh_name, int try_sio);
+int au_diropq_test(struct dentry *h_dentry);
+struct au_branch;
+struct dentry *au_whtmp_lkup(struct dentry *h_parent, struct au_branch *br,
+ struct qstr *prefix);
+int au_whtmp_ren(struct dentry *h_dentry, struct au_branch *br);
@ -33055,10 +33051,10 @@ index 0000000..a0a253b
+#endif /* __AUFS_WKQ_H__ */
diff --git a/fs/aufs/xattr.c b/fs/aufs/xattr.c
new file mode 100644
index 0000000..bc8ff81
index 0000000..bee1da2
--- /dev/null
+++ b/fs/aufs/xattr.c
@@ -0,0 +1,365 @@
@@ -0,0 +1,363 @@
+/*
+ * Copyright (C) 2014-2017 Junjiro R. Okajima
+ *
@ -33237,12 +33233,10 @@ index 0000000..bc8ff81
+ AuTraceErr(err);
+ }
+
+ if (value)
+ kfree(value);
+ kfree(value);
+
+out_free:
+ if (o)
+ kfree(o);
+ kfree(o);
+out:
+ if (!unlocked)
+ mutex_unlock(&h_isrc->i_mutex);
@ -34846,7 +34840,7 @@ index 0000000..586f042
+ return err;
+}
diff --git a/fs/dcache.c b/fs/dcache.c
index 3ed642e..c185ca4 100644
index 5bf7b4a..75c08d4 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -1187,7 +1187,7 @@ enum d_walk_ret {
@ -34879,7 +34873,7 @@ index 9c5ee2a..8823c26 100644
#ifdef CONFIG_USELIB
/*
diff --git a/fs/fcntl.c b/fs/fcntl.c
index 6237645..4afbe24 100644
index 5df9149..2e87e07 100644
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -29,7 +29,7 @@
@ -35078,7 +35072,7 @@ index fbc5c7b..6280e93 100644
static int do_dentry_open(struct file *f,
struct inode *inode,
diff --git a/fs/proc/base.c b/fs/proc/base.c
index dd73240..6e3f6e3 100644
index f7b1bea..21d86fb 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -1918,7 +1918,7 @@ static int proc_map_files_get_link(struct dentry *dentry, struct path *path)
@ -35107,10 +35101,10 @@ index f8595e8..cb8eda0 100644
ino = inode->i_ino;
}
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 07ef85e..6bf461e 100644
index 12c4937..157a309 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -287,7 +287,10 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
@@ -337,7 +337,10 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
const char *name = NULL;
if (file) {
@ -35122,7 +35116,7 @@ index 07ef85e..6bf461e 100644
dev = inode->i_sb->s_dev;
ino = inode->i_ino;
pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
@@ -1527,7 +1530,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
@@ -1588,7 +1591,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;
@ -35148,7 +35142,7 @@ index faacb0c..17b43be 100644
ino = inode->i_ino;
pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
diff --git a/fs/read_write.c b/fs/read_write.c
index 819ef3f..0a28933 100644
index bfd1a5d..f09c149 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -494,6 +494,30 @@ ssize_t __vfs_write(struct file *file, const char __user *p, size_t count,
@ -35183,10 +35177,10 @@ index 819ef3f..0a28933 100644
{
mm_segment_t old_fs;
diff --git a/fs/splice.c b/fs/splice.c
index 0dcb6f1..68854db 100644
index 8398974..220cff2 100644
--- a/fs/splice.c
+++ b/fs/splice.c
@@ -1117,8 +1117,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
@@ -1114,8 +1114,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
/*
* Attempt to initiate a splice from pipe to file.
*/
@ -35197,7 +35191,7 @@ index 0dcb6f1..68854db 100644
{
ssize_t (*splice_write)(struct pipe_inode_info *, struct file *,
loff_t *, size_t, unsigned int);
@@ -1130,13 +1130,14 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
@@ -1127,13 +1127,14 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
return splice_write(pipe, out, ppos, len, flags);
}
@ -35215,7 +35209,7 @@ index 0dcb6f1..68854db 100644
{
ssize_t (*splice_read)(struct file *, loff_t *,
struct pipe_inode_info *, size_t, unsigned int);
@@ -1156,6 +1157,7 @@ static long do_splice_to(struct file *in, loff_t *ppos,
@@ -1153,6 +1154,7 @@ static long do_splice_to(struct file *in, loff_t *ppos,
return splice_read(in, ppos, pipe, len, flags);
}
@ -35245,7 +35239,7 @@ index dd5d171..cd284a8 100644
/*
* Write out and wait upon all dirty data associated with this
diff --git a/fs/xattr.c b/fs/xattr.c
index f0da9d2..4faee58 100644
index 76f01bf..7c72931 100644
--- a/fs/xattr.c
+++ b/fs/xattr.c
@@ -207,6 +207,7 @@ vfs_getxattr_alloc(struct dentry *dentry, const char *name, char **xattr_value,
@ -35269,10 +35263,10 @@ index f87d308..9a290b3 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 e4fe70e..1450d0e 100644
index c8decb7..c949d92 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1277,6 +1277,7 @@ extern void fasync_free(struct fasync_struct *);
@@ -1274,6 +1274,7 @@ extern void fasync_free(struct fasync_struct *);
/* can be called from interrupts */
extern void kill_fasync(struct fasync_struct **, int, int);
@ -35280,7 +35274,7 @@ index e4fe70e..1450d0e 100644
extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
extern void f_setown(struct file *filp, unsigned long arg, int force);
extern void f_delown(struct file *filp);
@@ -1663,6 +1664,7 @@ struct file_operations {
@@ -1660,6 +1661,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);
@ -35288,7 +35282,7 @@ index e4fe70e..1450d0e 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);
@@ -1719,6 +1721,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
@@ -1713,6 +1715,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
struct iovec *fast_pointer,
struct iovec **ret_pointer);
@ -35301,7 +35295,7 @@ index e4fe70e..1450d0e 100644
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 *);
extern ssize_t vfs_read(struct file *, char __user *, size_t, loff_t *);
@@ -2068,6 +2076,7 @@ extern int current_umask(void);
@@ -2062,6 +2070,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);
@ -35309,7 +35303,7 @@ index e4fe70e..1450d0e 100644
/* /sys/fs */
extern struct kobject *fs_kobj;
@@ -2343,6 +2352,7 @@ static inline int sb_is_blkdev_sb(struct super_block *sb)
@@ -2337,6 +2346,7 @@ static inline int sb_is_blkdev_sb(struct super_block *sb)
return 0;
}
#endif
@ -35318,10 +35312,10 @@ index e4fe70e..1450d0e 100644
extern const struct file_operations def_blk_fops;
extern const struct file_operations def_chr_fops;
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 55f950a..a04fec1 100644
index e51aafb..a317754 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -1185,6 +1185,28 @@ static inline int fixup_user_fault(struct task_struct *tsk,
@@ -1197,6 +1197,28 @@ static inline int fixup_user_fault(struct task_struct *tsk,
}
#endif
@ -35351,7 +35345,7 @@ index 55f950a..a04fec1 100644
extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
void *buf, int len, int write);
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index 36f4695..04b48bb 100644
index b32cb7a..56e2863 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -272,6 +272,7 @@ struct vm_region {
@ -35362,7 +35356,7 @@ index 36f4695..04b48bb 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
@@ -346,6 +347,7 @@ struct vm_area_struct {
@@ -353,6 +354,7 @@ struct vm_area_struct {
unsigned long vm_pgoff; /* Offset (within vm_file) in PAGE_SIZE
units, *not* PAGE_CACHE_SIZE */
struct file * vm_file; /* File we map to (can be NULL). */
@ -35399,7 +35393,7 @@ index ebd10e6..32152e7 100644
header-y += auxvec.h
diff --git a/include/uapi/linux/aufs_type.h b/include/uapi/linux/aufs_type.h
new file mode 100644
index 0000000..f06cccd
index 0000000..aa5877d
--- /dev/null
+++ b/include/uapi/linux/aufs_type.h
@@ -0,0 +1,419 @@
@ -35444,7 +35438,7 @@ index 0000000..f06cccd
+
+#include <linux/limits.h>
+
+#define AUFS_VERSION "4.4-20170703"
+#define AUFS_VERSION "4.4-20170911"
+
+/* todo? move this to linux-2.6.19/include/magic.h */
+#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
@ -35823,10 +35817,10 @@ index 0000000..f06cccd
+
+#endif /* __AUFS_TYPE_H__ */
diff --git a/kernel/fork.c b/kernel/fork.c
index 68cfda1..d81927e 100644
index f44790d..89a096c 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -466,7 +466,7 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
@@ -472,7 +472,7 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
struct inode *inode = file_inode(file);
struct address_space *mapping = file->f_mapping;
@ -35884,10 +35878,10 @@ index 9ac5517..0bac6d9 100644
return VM_FAULT_WRITE;
diff --git a/mm/mmap.c b/mm/mmap.c
index eaa460d..7656c07 100644
index 859adf2..acebb7f 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -275,7 +275,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
@@ -287,7 +287,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
if (vma->vm_ops && vma->vm_ops->close)
vma->vm_ops->close(vma);
if (vma->vm_file)
@ -35896,7 +35890,7 @@ index eaa460d..7656c07 100644
mpol_put(vma_policy(vma));
kmem_cache_free(vm_area_cachep, vma);
return next;
@@ -905,7 +905,7 @@ again: remove_next = 1 + (end > next->vm_end);
@@ -917,7 +917,7 @@ again: remove_next = 1 + (end > next->vm_end);
if (remove_next) {
if (file) {
uprobe_munmap(next, next->vm_start, next->vm_end);
@ -35905,7 +35899,7 @@ index eaa460d..7656c07 100644
}
if (next->anon_vma)
anon_vma_merge(vma, next);
@@ -1699,8 +1699,8 @@ out:
@@ -1720,8 +1720,8 @@ out:
return addr;
unmap_and_free_vma:
@ -35915,7 +35909,7 @@ index eaa460d..7656c07 100644
/* Undo any partial mapping done by a device driver. */
unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
@@ -2517,7 +2517,7 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
@@ -2540,7 +2540,7 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
goto out_free_mpol;
if (new->vm_file)
@ -35924,7 +35918,7 @@ index eaa460d..7656c07 100644
if (new->vm_ops && new->vm_ops->open)
new->vm_ops->open(new);
@@ -2536,7 +2536,7 @@ static int __split_vma(struct mm_struct *mm, struct vm_area_struct *vma,
@@ -2559,7 +2559,7 @@ static 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)
@ -35933,7 +35927,7 @@ index eaa460d..7656c07 100644
unlink_anon_vmas(new);
out_free_mpol:
mpol_put(vma_policy(new));
@@ -2678,7 +2678,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
@@ -2702,7 +2702,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;
@ -35942,7 +35936,7 @@ index eaa460d..7656c07 100644
pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. "
"See Documentation/vm/remap_file_pages.txt.\n",
@@ -2746,10 +2746,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
@@ -2770,10 +2770,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,
}
}
@ -35971,7 +35965,7 @@ index eaa460d..7656c07 100644
out:
up_write(&mm->mmap_sem);
if (populate)
@@ -3019,7 +3036,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
@@ -3043,7 +3060,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)
@ -36116,10 +36110,10 @@ index 0000000..1ef053b
+}
+#endif /* !CONFIG_MMU */
diff --git a/security/commoncap.c b/security/commoncap.c
index 48071ed..50a1a40 100644
index 7fa251a..b965cb1 100644
--- a/security/commoncap.c
+++ b/security/commoncap.c
@@ -1058,12 +1058,14 @@ int cap_mmap_addr(unsigned long addr)
@@ -1069,12 +1069,14 @@ int cap_mmap_addr(unsigned long addr)
}
return ret;
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,26 @@
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 918f449..561b71c 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -39,6 +39,8 @@ source "drivers/net/wireless/cisco/Kconfig"
source "drivers/net/wireless/intel/Kconfig"
source "drivers/net/wireless/intersil/Kconfig"
source "drivers/net/wireless/marvell/Kconfig"
+source "drivers/net/wireless/rtl8812au/Kconfig"
+source "drivers/net/wireless/rtl8814au/Kconfig"
source "drivers/net/wireless/mediatek/Kconfig"
source "drivers/net/wireless/ralink/Kconfig"
source "drivers/net/wireless/realtek/Kconfig"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index 59df552..614ddf4 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -12,6 +12,8 @@ obj-$(CONFIG_WLAN_VENDOR_CISCO) += cisco/
obj-$(CONFIG_WLAN_VENDOR_INTEL) += intel/
obj-$(CONFIG_WLAN_VENDOR_INTERSIL) += intersil/
obj-$(CONFIG_WLAN_VENDOR_MARVELL) += marvell/
+obj-$(CONFIG_RTL8812AU) += rtl8812au/
+obj-$(CONFIG_RTL8814AU) += rtl8814au/
obj-$(CONFIG_WLAN_VENDOR_MEDIATEK) += mediatek/
obj-$(CONFIG_WLAN_VENDOR_RALINK) += ralink/
obj-$(CONFIG_WLAN_VENDOR_REALTEK) += realtek/

View file

@ -0,0 +1,26 @@
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index f9f9422..241160d 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -274,6 +274,8 @@ source "drivers/net/wireless/ipw2x00/Kconfig"
source "drivers/net/wireless/iwlwifi/Kconfig"
source "drivers/net/wireless/iwlegacy/Kconfig"
source "drivers/net/wireless/libertas/Kconfig"
+source "drivers/net/wireless/rtl8812au/Kconfig"
+source "drivers/net/wireless/rtl8814au/Kconfig"
source "drivers/net/wireless/orinoco/Kconfig"
source "drivers/net/wireless/p54/Kconfig"
source "drivers/net/wireless/rt2x00/Kconfig"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index 740fdd3..d40e0e4 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -43,6 +43,8 @@ obj-$(CONFIG_IWLWIFI) += iwlwifi/
obj-$(CONFIG_IWLEGACY) += iwlegacy/
obj-$(CONFIG_RT2X00) += rt2x00/
+obj-$(CONFIG_RTL8812AU) += rtl8812au/
+obj-$(CONFIG_RTL8814AU) += rtl8814au/
obj-$(CONFIG_WL_MEDIATEK) += mediatek/
obj-$(CONFIG_P54_COMMON) += p54/

View file

@ -0,0 +1,46 @@
diff --git a/drivers/net/wireless/rtl8812au/Kconfig b/drivers/net/wireless/rtl8812au/Kconfig
index 16d3567..f87653d 100644
--- a/drivers/net/wireless/rtl8812au/Kconfig
+++ b/drivers/net/wireless/rtl8812au/Kconfig
@@ -4,8 +4,3 @@ config RTL8812AU
---help---
Help message of RTL8812AU
-config RTL8814AU
- tristate "Realtek 8814A USB WiFi"
- depends on USB
- ---help---
- Help message of RTL8814AU
diff --git a/drivers/net/wireless/rtl8814au/Kconfig b/drivers/net/wireless/rtl8814au/Kconfig
index 16d3567..730c4e0 100644
--- a/drivers/net/wireless/rtl8814au/Kconfig
+++ b/drivers/net/wireless/rtl8814au/Kconfig
@@ -1,9 +1,3 @@
-config RTL8812AU
- tristate "Realtek 8812A USB WiFi"
- depends on USB
- ---help---
- Help message of RTL8812AU
-
config RTL8814AU
tristate "Realtek 8814A USB WiFi"
depends on USB
diff --git a/drivers/net/wireless/rtl8814au/Makefile b/drivers/net/wireless/rtl8814au/Makefile
index ef959e7..f71f524 100644
--- a/drivers/net/wireless/rtl8814au/Makefile
+++ b/drivers/net/wireless/rtl8814au/Makefile
@@ -32,11 +32,11 @@ CONFIG_AUTOCFG_CP = n
########################## WIFI IC ############################
CONFIG_MULTIDRV = n
CONFIG_RTL8188E = n
-CONFIG_RTL8812A = y
-CONFIG_RTL8821A = y
+CONFIG_RTL8812A = n
+CONFIG_RTL8821A = n
CONFIG_RTL8192E = n
CONFIG_RTL8723B = n
-CONFIG_RTL8814A = n
+CONFIG_RTL8814A = y
CONFIG_RTL8723C = n
CONFIG_RTL8188F = n
CONFIG_RTL8822B = n

View file

@ -0,0 +1,24 @@
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 241160d..af4b93b 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -275,7 +275,6 @@ source "drivers/net/wireless/iwlwifi/Kconfig"
source "drivers/net/wireless/iwlegacy/Kconfig"
source "drivers/net/wireless/libertas/Kconfig"
source "drivers/net/wireless/rtl8812au/Kconfig"
-source "drivers/net/wireless/rtl8814au/Kconfig"
source "drivers/net/wireless/orinoco/Kconfig"
source "drivers/net/wireless/p54/Kconfig"
source "drivers/net/wireless/rt2x00/Kconfig"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index d40e0e4..1b227fa 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -44,7 +44,6 @@ obj-$(CONFIG_IWLEGACY) += iwlegacy/
obj-$(CONFIG_RT2X00) += rt2x00/
obj-$(CONFIG_RTL8812AU) += rtl8812au/
-obj-$(CONFIG_RTL8814AU) += rtl8814au/
obj-$(CONFIG_WL_MEDIATEK) += mediatek/
obj-$(CONFIG_P54_COMMON) += p54/

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,26 @@
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index 918f449..561b71c 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -39,6 +39,8 @@ source "drivers/net/wireless/cisco/Kconfig"
source "drivers/net/wireless/intel/Kconfig"
source "drivers/net/wireless/intersil/Kconfig"
source "drivers/net/wireless/marvell/Kconfig"
+source "drivers/net/wireless/rtl8812au/Kconfig"
+source "drivers/net/wireless/rtl8814au/Kconfig"
source "drivers/net/wireless/mediatek/Kconfig"
source "drivers/net/wireless/ralink/Kconfig"
source "drivers/net/wireless/realtek/Kconfig"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index 59df552..614ddf4 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -12,6 +12,8 @@ obj-$(CONFIG_WLAN_VENDOR_CISCO) += cisco/
obj-$(CONFIG_WLAN_VENDOR_INTEL) += intel/
obj-$(CONFIG_WLAN_VENDOR_INTERSIL) += intersil/
obj-$(CONFIG_WLAN_VENDOR_MARVELL) += marvell/
+obj-$(CONFIG_RTL8812AU) += rtl8812au/
+obj-$(CONFIG_RTL8814AU) += rtl8814au/
obj-$(CONFIG_WLAN_VENDOR_MEDIATEK) += mediatek/
obj-$(CONFIG_WLAN_VENDOR_RALINK) += ralink/
obj-$(CONFIG_WLAN_VENDOR_REALTEK) += realtek/

View file

@ -0,0 +1,26 @@
diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig
index f9f9422..241160d 100644
--- a/drivers/net/wireless/Kconfig
+++ b/drivers/net/wireless/Kconfig
@@ -274,6 +274,8 @@ source "drivers/net/wireless/ipw2x00/Kconfig"
source "drivers/net/wireless/iwlwifi/Kconfig"
source "drivers/net/wireless/iwlegacy/Kconfig"
source "drivers/net/wireless/libertas/Kconfig"
+source "drivers/net/wireless/rtl8812au/Kconfig"
+source "drivers/net/wireless/rtl8814au/Kconfig"
source "drivers/net/wireless/orinoco/Kconfig"
source "drivers/net/wireless/p54/Kconfig"
source "drivers/net/wireless/rt2x00/Kconfig"
diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile
index 740fdd3..d40e0e4 100644
--- a/drivers/net/wireless/Makefile
+++ b/drivers/net/wireless/Makefile
@@ -43,6 +43,8 @@ obj-$(CONFIG_IWLWIFI) += iwlwifi/
obj-$(CONFIG_IWLEGACY) += iwlegacy/
obj-$(CONFIG_RT2X00) += rt2x00/
+obj-$(CONFIG_RTL8812AU) += rtl8812au/
+obj-$(CONFIG_RTL8814AU) += rtl8814au/
obj-$(CONFIG_WL_MEDIATEK) += mediatek/
obj-$(CONFIG_P54_COMMON) += p54/

View file

@ -0,0 +1,46 @@
diff --git a/drivers/net/wireless/rtl8812au/Kconfig b/drivers/net/wireless/rtl8812au/Kconfig
index 16d3567..f87653d 100644
--- a/drivers/net/wireless/rtl8812au/Kconfig
+++ b/drivers/net/wireless/rtl8812au/Kconfig
@@ -4,8 +4,3 @@ config RTL8812AU
---help---
Help message of RTL8812AU
-config RTL8814AU
- tristate "Realtek 8814A USB WiFi"
- depends on USB
- ---help---
- Help message of RTL8814AU
diff --git a/drivers/net/wireless/rtl8814au/Kconfig b/drivers/net/wireless/rtl8814au/Kconfig
index 16d3567..730c4e0 100644
--- a/drivers/net/wireless/rtl8814au/Kconfig
+++ b/drivers/net/wireless/rtl8814au/Kconfig
@@ -1,9 +1,3 @@
-config RTL8812AU
- tristate "Realtek 8812A USB WiFi"
- depends on USB
- ---help---
- Help message of RTL8812AU
-
config RTL8814AU
tristate "Realtek 8814A USB WiFi"
depends on USB
diff --git a/drivers/net/wireless/rtl8814au/Makefile b/drivers/net/wireless/rtl8814au/Makefile
index ef959e7..f71f524 100644
--- a/drivers/net/wireless/rtl8814au/Makefile
+++ b/drivers/net/wireless/rtl8814au/Makefile
@@ -32,11 +32,11 @@ CONFIG_AUTOCFG_CP = n
########################## WIFI IC ############################
CONFIG_MULTIDRV = n
CONFIG_RTL8188E = n
-CONFIG_RTL8812A = y
-CONFIG_RTL8821A = y
+CONFIG_RTL8812A = n
+CONFIG_RTL8821A = n
CONFIG_RTL8192E = n
CONFIG_RTL8723B = n
-CONFIG_RTL8814A = n
+CONFIG_RTL8814A = y
CONFIG_RTL8723C = n
CONFIG_RTL8188F = n
CONFIG_RTL8822B = n