Update linux-drd to 3.13.1

This commit is contained in:
Tom Willemse 2014-02-02 14:23:06 +01:00
parent bac16d5021
commit c6f9b45fdb
15 changed files with 685 additions and 647 deletions

View file

@ -1,5 +1,7 @@
Bugzilla: N/A From 4b9a445e3eeb8bd9278b1ae51c1b3a651e370cd6 Mon Sep 17 00:00:00 2001
Upstream-status: queued in NFS git tree (for 3.13/3.14?) From: Jeff Layton <jlayton@redhat.com>
Date: Thu, 14 Nov 2013 07:25:17 -0500
Subject: [PATCH 1/6] sunrpc: create a new dummy pipe for gssd to hold open
rpc.gssd will naturally hold open any pipe named */clnt*/gssd that shows rpc.gssd will naturally hold open any pipe named */clnt*/gssd that shows
up under rpc_pipefs. That behavior gives us a reliable mechanism to tell up under rpc_pipefs. That behavior gives us a reliable mechanism to tell
@ -15,16 +17,17 @@ it will just return -EINVAL.
Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--- ---
include/linux/sunrpc/rpc_pipe_fs.h | 3 +- include/linux/sunrpc/rpc_pipe_fs.h | 3 +-
net/sunrpc/netns.h | 1 + net/sunrpc/netns.h | 1 +
net/sunrpc/rpc_pipe.c | 93 ++++++++++++++++++++++++++++++++++- net/sunrpc/rpc_pipe.c | 93 ++++++++++++++++++++++++++++++++++++--
net/sunrpc/sunrpc_syms.c | 8 +++- net/sunrpc/sunrpc_syms.c | 8 +++-
4 files changed, 100 insertions(+), 5 deletions(-) 4 files changed, 100 insertions(+), 5 deletions(-)
diff -up linux-3.11.9-200.fc19.x86_64/include/linux/sunrpc/rpc_pipe_fs.h.orig linux-3.11.9-200.fc19.x86_64/include/linux/sunrpc/rpc_pipe_fs.h diff --git a/include/linux/sunrpc/rpc_pipe_fs.h b/include/linux/sunrpc/rpc_pipe_fs.h
--- linux-3.11.9-200.fc19.x86_64/include/linux/sunrpc/rpc_pipe_fs.h.orig 2013-09-02 16:46:10.000000000 -0400 index a353e03..85f1342 100644
+++ linux-3.11.9-200.fc19.x86_64/include/linux/sunrpc/rpc_pipe_fs.h 2013-11-21 10:11:17.893026000 -0500 --- a/include/linux/sunrpc/rpc_pipe_fs.h
@@ -64,7 +64,8 @@ enum { +++ b/include/linux/sunrpc/rpc_pipe_fs.h
@@ -84,7 +84,8 @@ enum {
extern struct dentry *rpc_d_lookup_sb(const struct super_block *sb, extern struct dentry *rpc_d_lookup_sb(const struct super_block *sb,
const unsigned char *dir_name); const unsigned char *dir_name);
@ -34,9 +37,10 @@ diff -up linux-3.11.9-200.fc19.x86_64/include/linux/sunrpc/rpc_pipe_fs.h.orig li
extern struct super_block *rpc_get_sb_net(const struct net *net); extern struct super_block *rpc_get_sb_net(const struct net *net);
extern void rpc_put_sb_net(const struct net *net); extern void rpc_put_sb_net(const struct net *net);
diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/netns.h.orig linux-3.11.9-200.fc19.x86_64/net/sunrpc/netns.h diff --git a/net/sunrpc/netns.h b/net/sunrpc/netns.h
--- linux-3.11.9-200.fc19.x86_64/net/sunrpc/netns.h.orig 2013-09-02 16:46:10.000000000 -0400 index 779742c..8a8e841 100644
+++ linux-3.11.9-200.fc19.x86_64/net/sunrpc/netns.h 2013-11-21 10:11:17.897029000 -0500 --- a/net/sunrpc/netns.h
+++ b/net/sunrpc/netns.h
@@ -14,6 +14,7 @@ struct sunrpc_net { @@ -14,6 +14,7 @@ struct sunrpc_net {
struct cache_detail *rsi_cache; struct cache_detail *rsi_cache;
@ -45,9 +49,10 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/netns.h.orig linux-3.11.9-200.f
struct mutex pipefs_sb_lock; struct mutex pipefs_sb_lock;
struct list_head all_clients; struct list_head all_clients;
diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c
--- linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig 2013-09-02 16:46:10.000000000 -0400 index bf04b30..c23458b 100644
+++ linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c 2013-11-21 10:11:17.903026000 -0500 --- a/net/sunrpc/rpc_pipe.c
+++ b/net/sunrpc/rpc_pipe.c
@@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
#define NET_NAME(net) ((net == &init_net) ? " (init_net)" : "") #define NET_NAME(net) ((net == &init_net) ? " (init_net)" : "")
@ -57,7 +62,7 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
static struct kmem_cache *rpc_inode_cachep __read_mostly; static struct kmem_cache *rpc_inode_cachep __read_mostly;
@@ -1019,6 +1019,7 @@ enum { @@ -1159,6 +1159,7 @@ enum {
RPCAUTH_nfsd4_cb, RPCAUTH_nfsd4_cb,
RPCAUTH_cache, RPCAUTH_cache,
RPCAUTH_nfsd, RPCAUTH_nfsd,
@ -65,7 +70,7 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
RPCAUTH_RootEOF RPCAUTH_RootEOF
}; };
@@ -1055,6 +1056,10 @@ static const struct rpc_filelist files[] @@ -1195,6 +1196,10 @@ static const struct rpc_filelist files[] = {
.name = "nfsd", .name = "nfsd",
.mode = S_IFDIR | S_IRUGO | S_IXUGO, .mode = S_IFDIR | S_IRUGO | S_IXUGO,
}, },
@ -76,7 +81,7 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
}; };
/* /*
@@ -1068,13 +1073,25 @@ struct dentry *rpc_d_lookup_sb(const str @@ -1208,13 +1213,25 @@ struct dentry *rpc_d_lookup_sb(const struct super_block *sb,
} }
EXPORT_SYMBOL_GPL(rpc_d_lookup_sb); EXPORT_SYMBOL_GPL(rpc_d_lookup_sb);
@ -103,7 +108,7 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
} }
/* /*
@@ -1104,11 +1121,73 @@ void rpc_put_sb_net(const struct net *ne @@ -1244,11 +1261,73 @@ void rpc_put_sb_net(const struct net *net)
} }
EXPORT_SYMBOL_GPL(rpc_put_sb_net); EXPORT_SYMBOL_GPL(rpc_put_sb_net);
@ -178,7 +183,7 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
struct net *net = data; struct net *net = data;
struct sunrpc_net *sn = net_generic(net, sunrpc_net_id); struct sunrpc_net *sn = net_generic(net, sunrpc_net_id);
int err; int err;
@@ -1126,6 +1205,13 @@ rpc_fill_super(struct super_block *sb, v @@ -1266,6 +1345,13 @@ rpc_fill_super(struct super_block *sb, void *data, int silent)
return -ENOMEM; return -ENOMEM;
if (rpc_populate(root, files, RPCAUTH_lockd, RPCAUTH_RootEOF, NULL)) if (rpc_populate(root, files, RPCAUTH_lockd, RPCAUTH_RootEOF, NULL))
return -ENOMEM; return -ENOMEM;
@ -192,7 +197,7 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
dprintk("RPC: sending pipefs MOUNT notification for net %p%s\n", dprintk("RPC: sending pipefs MOUNT notification for net %p%s\n",
net, NET_NAME(net)); net, NET_NAME(net));
mutex_lock(&sn->pipefs_sb_lock); mutex_lock(&sn->pipefs_sb_lock);
@@ -1140,6 +1226,7 @@ rpc_fill_super(struct super_block *sb, v @@ -1280,6 +1366,7 @@ rpc_fill_super(struct super_block *sb, void *data, int silent)
return 0; return 0;
err_depopulate: err_depopulate:
@ -200,10 +205,11 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/rpc_pipe.c.orig linux-3.11.9-20
blocking_notifier_call_chain(&rpc_pipefs_notifier_list, blocking_notifier_call_chain(&rpc_pipefs_notifier_list,
RPC_PIPEFS_UMOUNT, RPC_PIPEFS_UMOUNT,
sb); sb);
diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/sunrpc_syms.c.orig linux-3.11.9-200.fc19.x86_64/net/sunrpc/sunrpc_syms.c diff --git a/net/sunrpc/sunrpc_syms.c b/net/sunrpc/sunrpc_syms.c
--- linux-3.11.9-200.fc19.x86_64/net/sunrpc/sunrpc_syms.c.orig 2013-09-02 16:46:10.000000000 -0400 index 3d6498a..cd30120 100644
+++ linux-3.11.9-200.fc19.x86_64/net/sunrpc/sunrpc_syms.c 2013-11-21 10:11:17.908026000 -0500 --- a/net/sunrpc/sunrpc_syms.c
@@ -44,12 +44,17 @@ static __net_init int sunrpc_init_net(st +++ b/net/sunrpc/sunrpc_syms.c
@@ -44,12 +44,17 @@ static __net_init int sunrpc_init_net(struct net *net)
if (err) if (err)
goto err_unixgid; goto err_unixgid;
@ -230,4 +236,6 @@ diff -up linux-3.11.9-200.fc19.x86_64/net/sunrpc/sunrpc_syms.c.orig linux-3.11.9
unix_gid_cache_destroy(net); unix_gid_cache_destroy(net);
ip_map_cache_destroy(net); ip_map_cache_destroy(net);
rpc_proc_exit(net); rpc_proc_exit(net);
--
1.8.5.3

View file

@ -0,0 +1,68 @@
From 83460ec8dcac14142e7860a01fa59c267ac4657c Mon Sep 17 00:00:00 2001
From: Andi Kleen <ak@linux.intel.com>
Date: Tue, 12 Nov 2013 15:08:36 -0800
Subject: [PATCH] syscalls.h: use gcc alias instead of assembler aliases for
syscalls
Use standard gcc __attribute__((alias(foo))) to define the syscall aliases
instead of custom assembler macros.
This is far cleaner, and also fixes my LTO kernel build.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---
include/linux/compat.h | 4 ++--
include/linux/syscalls.h | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/include/linux/compat.h b/include/linux/compat.h
index 345da00..ada34c9 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
@@ -41,14 +41,14 @@
COMPAT_SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
#define COMPAT_SYSCALL_DEFINEx(x, name, ...) \
- asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
+ asmlinkage long compat_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))\
+ __attribute__((alias(__stringify(compat_SyS##name)))); \
static inline long C_SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
asmlinkage long compat_SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__));\
asmlinkage long compat_SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__))\
{ \
return C_SYSC##name(__MAP(x,__SC_DELOUSE,__VA_ARGS__)); \
} \
- SYSCALL_ALIAS(compat_sys##name, compat_SyS##name); \
static inline long C_SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__))
#ifndef compat_user_stack_pointer
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h
index 7fac04e..c27f846 100644
--- a/include/linux/syscalls.h
+++ b/include/linux/syscalls.h
@@ -184,7 +184,8 @@ extern struct trace_event_functions exit_syscall_print_funcs;
#define __PROTECT(...) asmlinkage_protect(__VA_ARGS__)
#define __SYSCALL_DEFINEx(x, name, ...) \
- asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \
+ asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
+ __attribute__((alias(__stringify(SyS##name)))); \
static inline long SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \
asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
asmlinkage long SyS##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
@@ -194,7 +195,6 @@ extern struct trace_event_functions exit_syscall_print_funcs;
__PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__)); \
return ret; \
} \
- SYSCALL_ALIAS(sys##name, SyS##name); \
static inline long SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__))
asmlinkage long sys_time(time_t __user *tloc);
--
1.8.5.3

View file

@ -0,0 +1,80 @@
From 2def2ef2ae5f3990aabdbe8a755911902707d268 Mon Sep 17 00:00:00 2001
From: PaX Team <pageexec@freemail.hu>
Date: Thu, 30 Jan 2014 16:59:25 -0800
Subject: [PATCH] x86, x32: Correct invalid use of user timespec in the kernel
The x32 case for the recvmsg() timout handling is broken:
asmlinkage long compat_sys_recvmmsg(int fd, struct compat_mmsghdr __user *mmsg,
unsigned int vlen, unsigned int flags,
struct compat_timespec __user *timeout)
{
int datagrams;
struct timespec ktspec;
if (flags & MSG_CMSG_COMPAT)
return -EINVAL;
if (COMPAT_USE_64BIT_TIME)
return __sys_recvmmsg(fd, (struct mmsghdr __user *)mmsg, vlen,
flags | MSG_CMSG_COMPAT,
(struct timespec *) timeout);
...
The timeout pointer parameter is provided by userland (hence the __user
annotation) but for x32 syscalls it's simply cast to a kernel pointer
and is passed to __sys_recvmmsg which will eventually directly
dereference it for both reading and writing. Other callers to
__sys_recvmmsg properly copy from userland to the kernel first.
The bug was introduced by commit ee4fa23c4bfc ("compat: Use
COMPAT_USE_64BIT_TIME in net/compat.c") and should affect all kernels
since 3.4 (and perhaps vendor kernels if they backported x32 support
along with this code).
Note that CONFIG_X86_X32_ABI gets enabled at build time and only if
CONFIG_X86_X32 is enabled and ld can build x32 executables.
Other uses of COMPAT_USE_64BIT_TIME seem fine.
This addresses CVE-2014-0038.
Signed-off-by: PaX Team <pageexec@freemail.hu>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: <stable@vger.kernel.org> # v3.4+
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---
net/compat.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/net/compat.c b/net/compat.c
index dd32e34..f50161f 100644
--- a/net/compat.c
+++ b/net/compat.c
@@ -780,21 +780,16 @@ asmlinkage long compat_sys_recvmmsg(int fd, struct compat_mmsghdr __user *mmsg,
if (flags & MSG_CMSG_COMPAT)
return -EINVAL;
- if (COMPAT_USE_64BIT_TIME)
- return __sys_recvmmsg(fd, (struct mmsghdr __user *)mmsg, vlen,
- flags | MSG_CMSG_COMPAT,
- (struct timespec *) timeout);
-
if (timeout == NULL)
return __sys_recvmmsg(fd, (struct mmsghdr __user *)mmsg, vlen,
flags | MSG_CMSG_COMPAT, NULL);
- if (get_compat_timespec(&ktspec, timeout))
+ if (compat_get_timespec(&ktspec, timeout))
return -EFAULT;
datagrams = __sys_recvmmsg(fd, (struct mmsghdr __user *)mmsg, vlen,
flags | MSG_CMSG_COMPAT, &ktspec);
- if (datagrams > 0 && put_compat_timespec(&ktspec, timeout))
+ if (datagrams > 0 && compat_put_timespec(&ktspec, timeout))
datagrams = -EFAULT;
return datagrams;
--
1.8.5.3

View file

@ -1,5 +1,8 @@
Bugzilla: N/A From 89f842435c630f8426f414e6030bc2ffea0d6f81 Mon Sep 17 00:00:00 2001
Upstream-status: queued in NFS git tree (for 3.13/3.14?) From: Jeff Layton <jlayton@redhat.com>
Date: Thu, 14 Nov 2013 07:25:18 -0500
Subject: [PATCH 2/6] sunrpc: replace sunrpc_net->gssd_running flag with a more
reliable check
Now that we have a more reliable method to tell if gssd is running, we Now that we have a more reliable method to tell if gssd is running, we
can replace the sn->gssd_running flag with a function that will query to can replace the sn->gssd_running flag with a function that will query to
@ -14,12 +17,10 @@ extraneous newline from the message.
Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--- ---
Fixed up to apply to 3.12.1 by Josh Boyer <jwboyer@fedoraproject.org> include/linux/sunrpc/rpc_pipe_fs.h | 2 ++
net/sunrpc/auth_gss/auth_gss.c | 17 +++++++----------
include/linux/sunrpc/rpc_pipe_fs.h | 2 ++ net/sunrpc/netns.h | 2 --
net/sunrpc/auth_gss/auth_gss.c | 17 +++++++---------- net/sunrpc/rpc_pipe.c | 14 ++++++++++----
net/sunrpc/netns.h | 2 --
net/sunrpc/rpc_pipe.c | 14 ++++++++++----
4 files changed, 19 insertions(+), 16 deletions(-) 4 files changed, 19 insertions(+), 16 deletions(-)
diff --git a/include/linux/sunrpc/rpc_pipe_fs.h b/include/linux/sunrpc/rpc_pipe_fs.h diff --git a/include/linux/sunrpc/rpc_pipe_fs.h b/include/linux/sunrpc/rpc_pipe_fs.h
@ -35,10 +36,10 @@ index 85f1342..7f490be 100644
#endif #endif
#endif #endif
diff --git a/net/sunrpc/auth_gss/auth_gss.c b/net/sunrpc/auth_gss/auth_gss.c diff --git a/net/sunrpc/auth_gss/auth_gss.c b/net/sunrpc/auth_gss/auth_gss.c
index 0846566..1ada878 100644 index 42fdfc6..0a2aee0 100644
--- a/net/sunrpc/auth_gss/auth_gss.c --- a/net/sunrpc/auth_gss/auth_gss.c
+++ b/net/sunrpc/auth_gss/auth_gss.c +++ b/net/sunrpc/auth_gss/auth_gss.c
@@ -517,8 +517,7 @@ static void warn_gssd(void) @@ -536,8 +536,7 @@ static void warn_gssd(void)
unsigned long now = jiffies; unsigned long now = jiffies;
if (time_after(now, ratelimit)) { if (time_after(now, ratelimit)) {
@ -48,7 +49,7 @@ index 0846566..1ada878 100644
ratelimit = now + 15*HZ; ratelimit = now + 15*HZ;
} }
} }
@@ -581,7 +580,6 @@ gss_create_upcall(struct gss_auth *gss_auth, struct gss_cred *gss_cred) @@ -600,7 +599,6 @@ gss_create_upcall(struct gss_auth *gss_auth, struct gss_cred *gss_cred)
struct rpc_pipe *pipe; struct rpc_pipe *pipe;
struct rpc_cred *cred = &gss_cred->gc_base; struct rpc_cred *cred = &gss_cred->gc_base;
struct gss_upcall_msg *gss_msg; struct gss_upcall_msg *gss_msg;
@ -56,7 +57,7 @@ index 0846566..1ada878 100644
DEFINE_WAIT(wait); DEFINE_WAIT(wait);
int err; int err;
@@ -589,17 +587,16 @@ gss_create_upcall(struct gss_auth *gss_auth, struct gss_cred *gss_cred) @@ -608,17 +606,16 @@ gss_create_upcall(struct gss_auth *gss_auth, struct gss_cred *gss_cred)
__func__, from_kuid(&init_user_ns, cred->cr_uid)); __func__, from_kuid(&init_user_ns, cred->cr_uid));
retry: retry:
err = 0; err = 0;
@ -94,7 +95,7 @@ index 8a8e841..94e506f 100644
extern int sunrpc_net_id; extern int sunrpc_net_id;
diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c
index 40aef18..ad444f3 100644 index c23458b..5cd7ad1 100644
--- a/net/sunrpc/rpc_pipe.c --- a/net/sunrpc/rpc_pipe.c
+++ b/net/sunrpc/rpc_pipe.c +++ b/net/sunrpc/rpc_pipe.c
@@ -216,14 +216,11 @@ rpc_destroy_inode(struct inode *inode) @@ -216,14 +216,11 @@ rpc_destroy_inode(struct inode *inode)
@ -112,7 +113,7 @@ index 40aef18..ad444f3 100644
pipe = RPC_I(inode)->pipe; pipe = RPC_I(inode)->pipe;
if (pipe == NULL) if (pipe == NULL)
goto out; goto out;
@@ -1231,7 +1228,6 @@ int rpc_pipefs_init_net(struct net *net) @@ -1222,7 +1219,6 @@ int rpc_pipefs_init_net(struct net *net)
return PTR_ERR(sn->gssd_dummy); return PTR_ERR(sn->gssd_dummy);
mutex_init(&sn->pipefs_sb_lock); mutex_init(&sn->pipefs_sb_lock);
@ -120,7 +121,7 @@ index 40aef18..ad444f3 100644
sn->pipe_version = -1; sn->pipe_version = -1;
return 0; return 0;
} }
@@ -1385,6 +1381,16 @@ err_depopulate: @@ -1376,6 +1372,16 @@ err_depopulate:
return err; return err;
} }
@ -137,3 +138,6 @@ index 40aef18..ad444f3 100644
static struct dentry * static struct dentry *
rpc_mount(struct file_system_type *fs_type, rpc_mount(struct file_system_type *fs_type,
int flags, const char *dev_name, void *data) int flags, const char *dev_name, void *data)
--
1.8.5.3

View file

@ -1,5 +1,8 @@
Bugzilla: N/A From 6aa23d76a7b549521a03b63b6d5b7880ea87eab7 Mon Sep 17 00:00:00 2001
Upstream-status: queued in NFS git tree (for 3.13/3.14?) From: Jeff Layton <jlayton@redhat.com>
Date: Thu, 14 Nov 2013 07:25:19 -0500
Subject: [PATCH 3/6] nfs: check if gssd is running before attempting to use
krb5i auth in SETCLIENTID call
Currently, the client will attempt to use krb5i in the SETCLIENTID call Currently, the client will attempt to use krb5i in the SETCLIENTID call
even if rpc.gssd isn't running. When that fails, it'll then fall back to even if rpc.gssd isn't running. When that fails, it'll then fall back to
@ -14,12 +17,13 @@ fail at a later stage of the mount attempt.
Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--- ---
fs/nfs/nfs4client.c | 7 ++++++- fs/nfs/nfs4client.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-) 1 file changed, 6 insertions(+), 1 deletion(-)
diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c diff --git a/fs/nfs/nfs4client.c b/fs/nfs/nfs4client.c
--- linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig 2013-09-02 16:46:10.000000000 -0400 index b4a160a..c1b7a80 100644
+++ linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c 2013-11-21 10:20:27.288286000 -0500 --- a/fs/nfs/nfs4client.c
+++ b/fs/nfs/nfs4client.c
@@ -10,6 +10,7 @@ @@ -10,6 +10,7 @@
#include <linux/sunrpc/auth.h> #include <linux/sunrpc/auth.h>
#include <linux/sunrpc/xprt.h> #include <linux/sunrpc/xprt.h>
@ -28,10 +32,10 @@ diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.
#include "internal.h" #include "internal.h"
#include "callback.h" #include "callback.h"
#include "delegation.h" #include "delegation.h"
@@ -206,7 +207,11 @@ struct nfs_client *nfs4_init_client(stru @@ -370,7 +371,11 @@ struct nfs_client *nfs4_init_client(struct nfs_client *clp,
if (clp->cl_minorversion != 0)
__set_bit(NFS_CS_INFINITE_SLOTS, &clp->cl_flags); __set_bit(NFS_CS_INFINITE_SLOTS, &clp->cl_flags);
__set_bit(NFS_CS_DISCRTRY, &clp->cl_flags); __set_bit(NFS_CS_DISCRTRY, &clp->cl_flags);
__set_bit(NFS_CS_NO_RETRANS_TIMEOUT, &clp->cl_flags);
- error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_GSS_KRB5I); - error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_GSS_KRB5I);
+ +
+ error = -EINVAL; + error = -EINVAL;
@ -41,8 +45,6 @@ diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.
if (error == -EINVAL) if (error == -EINVAL)
error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_UNIX); error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_UNIX);
if (error < 0) if (error < 0)
--
1.8.5.3
_______________________________________________
kernel mailing list
kernel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/kernel

View file

@ -1,11 +1,15 @@
Bugzilla: 1037793 From 3396f92f8be606ea485b0a82d4e7749a448b013b Mon Sep 17 00:00:00 2001
Upstream-status: submitted for 3.14 From: Jeff Layton <jlayton@redhat.com>
Date: Thu, 5 Dec 2013 07:33:49 -0500
Subject: [PATCH 4/6] rpc_pipe: remove the clntXX dir if creating the pipe
fails
In the event that we create the gssd/clntXX dir, but the pipe creation In the event that we create the gssd/clntXX dir, but the pipe creation
subsequently fails, then we should remove the clntXX dir before subsequently fails, then we should remove the clntXX dir before
returning. returning.
Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--- ---
net/sunrpc/rpc_pipe.c | 2 ++ net/sunrpc/rpc_pipe.c | 2 ++
1 file changed, 2 insertions(+) 1 file changed, 2 insertions(+)
@ -24,9 +28,5 @@ index 5cd7ad1..0b74c61 100644
dput(clnt_dentry); dput(clnt_dentry);
dput(gssd_dentry); dput(gssd_dentry);
-- --
1.8.4.2 1.8.5.3
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

View file

@ -1,5 +1,7 @@
Bugzilla: 1037793 From e2f0c83a9de331d9352185ca3642616c13127539 Mon Sep 17 00:00:00 2001
Upstream-status: submitted for 3.14 From: Jeff Layton <jlayton@redhat.com>
Date: Thu, 5 Dec 2013 07:34:44 -0500
Subject: [PATCH 5/6] sunrpc: add an "info" file for the dummy gssd pipe
rpc.gssd expects to see an "info" file in each clntXX dir. Since adding rpc.gssd expects to see an "info" file in each clntXX dir. Since adding
the dummy gssd pipe, users that run rpc.gssd see a lot of these messages the dummy gssd pipe, users that run rpc.gssd see a lot of these messages
@ -11,6 +13,7 @@ spamming the logs:
Add a dummy gssd/clntXX/info file to help silence these messages. Add a dummy gssd/clntXX/info file to help silence these messages.
Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--- ---
net/sunrpc/rpc_pipe.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- net/sunrpc/rpc_pipe.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 49 insertions(+), 1 deletion(-) 1 file changed, 49 insertions(+), 1 deletion(-)
@ -93,4 +96,5 @@ index 0b74c61..5d973b2 100644
dput(clnt_dentry); dput(clnt_dentry);
dput(gssd_dentry); dput(gssd_dentry);
-- --
1.8.4.2 1.8.5.3

View file

@ -1,10 +1,14 @@
Bugzilla: 1037793 From 23e66ba97127ff3b064d4c6c5138aa34eafc492f Mon Sep 17 00:00:00 2001
Upstream-status: submitted for 3.14 From: Jeff Layton <jlayton@redhat.com>
Date: Mon, 9 Dec 2013 09:38:00 -0500
Subject: [PATCH 6/6] rpc_pipe: fix cleanup of dummy gssd directory when
notification fails
Currently, it could leak dentry references in some cases. Make sure Currently, it could leak dentry references in some cases. Make sure
we clean up properly. we clean up properly.
Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
--- ---
net/sunrpc/rpc_pipe.c | 14 +++++++++++++- net/sunrpc/rpc_pipe.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-) 1 file changed, 13 insertions(+), 1 deletion(-)
@ -42,9 +46,5 @@ index 5d973b2..b185548 100644
RPC_PIPEFS_UMOUNT, RPC_PIPEFS_UMOUNT,
sb); sb);
-- --
1.8.4.2 1.8.5.3
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html

View file

@ -1,12 +1,12 @@
# $Id: PKGBUILD 204289 2014-01-16 11:42:03Z tpowa $ # $Id: PKGBUILD 204912 2014-01-31 10:00:00Z bluewind $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Baechler <thomas@archlinux.org> # Maintainer: Thomas Baechler <thomas@archlinux.org>
# pkgbase=linux # Build stock -ARCH kernel # pkgbase=linux # Build stock -ARCH kernel
pkgbase=linux-drd # Build kernel with a different name pkgbase=linux-drd # Build kernel with a different name
_srcname=linux-3.12 _srcname=linux-3.13
pkgver=3.12.8 pkgver=3.13.1
pkgrel=1 pkgrel=2
arch=('i686' 'x86_64') arch=('i686' 'x86_64')
url="http://www.kernel.org/" url="http://www.kernel.org/"
license=('GPL2') license=('GPL2')
@ -21,23 +21,24 @@ source=(
'linux.preset' 'linux.preset'
'change-default-console-loglevel.patch' 'change-default-console-loglevel.patch'
'criu-no-expert.patch' 'criu-no-expert.patch'
'sunrpc-create-a-new-dummy-pipe-for-gssd-to-hold-open.patch' '0001-sunrpc-create-a-new-dummy-pipe-for-gssd-to-hold-open.patch'
'sunrpc-replace-gssd_running-with-more-reliable-check.patch' '0002-sunrpc-replace-sunrpc_net-gssd_running-flag-with-a-m.patch'
'nfs-check-gssd-running-before-krb5i-auth.patch' '0003-nfs-check-if-gssd-is-running-before-attempting-to-us.patch'
'rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch' '0004-rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-.patch'
'sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch' '0005-sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch'
'rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-notification-fails.patch' '0006-rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-no.patch'
'aufs3-standalone::git://git.code.sf.net/p/aufs/aufs3-standalone#branch=aufs3.12' '0001-syscalls.h-use-gcc-alias-instead-of-assembler-aliase.patch'
'aufs3-mmap.patch' 'i8042-fix-aliases.patch'
'0001-x86-x32-Correct-invalid-use-of-user-timespec-in-the-.patch'
'aufs3-standalone::git://git.code.sf.net/p/aufs/aufs3-standalone#branch=aufs3.13'
# 'aufs3-mmap.patch'
) )
_kernelname=${pkgbase#linux} _kernelname=${pkgbase#linux}
# module.symbols md5sums # module.symbols md5sums
# x86_64 # x86_64
# 23ef8d9dae0c916c9e1a7a07b77f797d /lib/modules/3.12.6-1-ARCH/modules.symbols
# i686 # i686
# eadbff034e17f92ccb4a7737302f3dbd /lib/modules/3.12.6-1-ARCH/modules.symbols
prepare() { prepare() {
cd "${srcdir}/${_srcname}" cd "${srcdir}/${_srcname}"
@ -51,28 +52,41 @@ prepare() {
# set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
# remove this when a Kconfig knob is made available by upstream # remove this when a Kconfig knob is made available by upstream
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch" patch -p1 -i "${srcdir}/change-default-console-loglevel.patch"
# allow criu without expert option set # allow Checkpoint/restore (for criu) without EXPERT=y
# patch from fedora patch -p1 -i "${srcdir}/criu-no-expert.patch"
patch -Np1 -i "${srcdir}/criu-no-expert.patch"
# fix 15 seocnds nfs delay # fix 15 seocnds nfs delay
patch -Np1 -i "${srcdir}/sunrpc-create-a-new-dummy-pipe-for-gssd-to-hold-open.patch" # http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=4b9a445e3eeb8bd9278b1ae51c1b3a651e370cd6
patch -Np1 -i "${srcdir}/sunrpc-replace-gssd_running-with-more-reliable-check.patch" patch -p1 -i "${srcdir}/0001-sunrpc-create-a-new-dummy-pipe-for-gssd-to-hold-open.patch"
patch -Np1 -i "${srcdir}/nfs-check-gssd-running-before-krb5i-auth.patch" # http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=89f842435c630f8426f414e6030bc2ffea0d6f81
# fix nfs kernel oops patch -p1 -i "${srcdir}/0002-sunrpc-replace-sunrpc_net-gssd_running-flag-with-a-m.patch"
# #37866 # http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=6aa23d76a7b549521a03b63b6d5b7880ea87eab7
patch -Np1 -i "${srcdir}/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch" patch -p1 -i "${srcdir}/0003-nfs-check-if-gssd-is-running-before-attempting-to-us.patch"
patch -Np1 -i "${srcdir}/sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch"
patch -Np1 -i "${srcdir}/rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-notification-fails.patch" # fix nfs kernel oops
# http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=3396f92f8be606ea485b0a82d4e7749a448b013b
patch -p1 -i "${srcdir}/0004-rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-.patch"
# http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=e2f0c83a9de331d9352185ca3642616c13127539
patch -p1 -i "${srcdir}/0005-sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch"
# http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=23e66ba97127ff3b064d4c6c5138aa34eafc492f
patch -p1 -i "${srcdir}/0006-rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-no.patch"
# Fix symbols: Revert http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=83460ec8dcac14142e7860a01fa59c267ac4657c
patch -Rp1 -i "${srcdir}/0001-syscalls.h-use-gcc-alias-instead-of-assembler-aliase.patch"
# Fix i8042 aliases
patch -p1 -i "${srcdir}/i8042-fix-aliases.patch"
# Fix CVE-2014-0038
patch -p1 -i "${srcdir}/0001-x86-x32-Correct-invalid-use-of-user-timespec-in-the-.patch"
## aufs3 ## aufs3
patch -p1 -i "${srcdir}/aufs3-standalone/aufs3-kbuild.patch" patch -p1 -i "${srcdir}/aufs3-standalone/aufs3-kbuild.patch"
patch -p1 -i "${srcdir}/aufs3-standalone/aufs3-base.patch" patch -p1 -i "${srcdir}/aufs3-standalone/aufs3-base.patch"
# patch -p1 -i "${srcdir}/aufs3-standalone/aufs3-mmap.patch" patch -p1 -i "${srcdir}/aufs3-standalone/aufs3-mmap.patch"
patch -p1 -i "${srcdir}/aufs3-mmap.patch" # patch -p1 -i "${srcdir}/aufs3-mmap.patch"
cp -R "${srcdir}/aufs3-standalone/Documentation" . cp -R "${srcdir}/aufs3-standalone/Documentation" .
cp -R "${srcdir}/aufs3-standalone/fs" . cp -R "${srcdir}/aufs3-standalone/fs" .
cp -R "${srcdir}/aufs3-standalone/include/uapi/linux/aufs_type.h" \ cp -R "${srcdir}/aufs3-standalone/include/uapi/linux/aufs_type.h" \
@ -94,10 +108,6 @@ prepare() {
# don't run depmod on 'make install'. We'll do this ourselves in packaging # don't run depmod on 'make install'. We'll do this ourselves in packaging
sed -i '2iexit 0' scripts/depmod.sh sed -i '2iexit 0' scripts/depmod.sh
}
build() {
cd "${srcdir}/${_srcname}"
# get kernel version # get kernel version
make prepare make prepare
@ -105,13 +115,17 @@ build() {
# load configuration # load configuration
# Configure the kernel. Replace the line below with one of your choice. # Configure the kernel. Replace the line below with one of your choice.
#make menuconfig # CLI menu for configuration #make menuconfig # CLI menu for configuration
make nconfig # new CLI menu for configuration #make nconfig # new CLI menu for configuration
#make xconfig # X-based configuration #make xconfig # X-based configuration
#make oldconfig # using old config from previous kernel version #make oldconfig # using old config from previous kernel version
# ... or manually edit .config # ... or manually edit .config
# rewrite configuration # rewrite configuration
yes "" | make config >/dev/null yes "" | make config >/dev/null
}
build() {
cd "${srcdir}/${_srcname}"
# save configuration for later reuse # save configuration for later reuse
if [ "${CARCH}" = "x86_64" ]; then if [ "${CARCH}" = "x86_64" ]; then
@ -154,9 +168,6 @@ _package() {
make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install
cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}" cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}"
# add vmlinux
install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
# set correct depmod command for install # set correct depmod command for install
cp -f "${startdir}/${install}" "${startdir}/${install}.pkg" cp -f "${startdir}/${install}" "${startdir}/${install}.pkg"
true && install=${install}.pkg true && install=${install}.pkg
@ -187,10 +198,14 @@ _package() {
echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}/version" echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}/version"
# Now we call depmod... # Now we call depmod...
depmod -b "$pkgdir" -F System.map "$_kernver" depmod -b "${pkgdir}" -F System.map "${_kernver}"
# move module tree /lib -> /usr/lib # move module tree /lib -> /usr/lib
mv "$pkgdir/lib" "$pkgdir/usr" mkdir -p "${pkgdir}/usr"
mv "${pkgdir}/lib" "${pkgdir}/usr/"
# add vmlinux
install -D -m644 vmlinux "${pkgdir}/usr/lib/modules/${_kernver}/build/vmlinux"
} }
_package-headers() { _package-headers() {
@ -201,124 +216,121 @@ _package-headers() {
install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}"
cd "${pkgdir}/usr/lib/modules/${_kernver}"
ln -sf ../../../src/linux-${_kernver} build
cd "${srcdir}/${_srcname}" cd "${srcdir}/${_srcname}"
install -D -m644 Makefile \ install -D -m644 Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/Makefile" "${pkgdir}/usr/lib/modules/${_kernver}/build/Makefile"
install -D -m644 kernel/Makefile \ install -D -m644 kernel/Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile" "${pkgdir}/usr/lib/modules/${_kernver}/build/kernel/Makefile"
install -D -m644 .config \ install -D -m644 .config \
"${pkgdir}/usr/src/linux-${_kernver}/.config" "${pkgdir}/usr/lib/modules/${_kernver}/build/.config"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/include"
for i in acpi asm-generic config crypto drm generated keys linux math-emu \ for i in acpi asm-generic config crypto drm generated keys linux math-emu \
media net pcmcia scsi sound trace uapi video xen; do media net pcmcia scsi sound trace uapi video xen; do
cp -a include/${i} "${pkgdir}/usr/src/linux-${_kernver}/include/" cp -a include/${i} "${pkgdir}/usr/lib/modules/${_kernver}/build/include/"
done done
# copy arch includes for external modules # copy arch includes for external modules
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/x86" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/x86"
cp -a arch/x86/include "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/" cp -a arch/x86/include "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/x86/"
# copy files necessary for later builds, like nvidia and vmware # copy files necessary for later builds, like nvidia and vmware
cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}" cp Module.symvers "${pkgdir}/usr/lib/modules/${_kernver}/build"
cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}" cp -a scripts "${pkgdir}/usr/lib/modules/${_kernver}/build"
# fix permissions on scripts dir # fix permissions on scripts dir
chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts" chmod og-w -R "${pkgdir}/usr/lib/modules/${_kernver}/build/scripts"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/.tmp_versions"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/kernel"
cp arch/${KARCH}/Makefile "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" cp arch/${KARCH}/Makefile "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/"
if [ "${CARCH}" = "i686" ]; then if [ "${CARCH}" = "i686" ]; then
cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" cp arch/${KARCH}/Makefile_32.cpu "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/"
fi fi
cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/kernel/" cp arch/${KARCH}/kernel/asm-offsets.s "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/kernel/"
# add headers for lirc package # add headers for lirc package
# pci # pci
for i in bt8xx cx88 saa7134; do for i in bt8xx cx88 saa7134; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/pci/${i}"
cp -a drivers/media/pci/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/pci/${i}" cp -a drivers/media/pci/${i}/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/pci/${i}"
done done
# usb # usb
for i in cpia2 em28xx pwc sn9c102; do for i in cpia2 em28xx pwc sn9c102; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/usb/${i}"
cp -a drivers/media/usb/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/${i}" cp -a drivers/media/usb/${i}/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/usb/${i}"
done done
# i2c # i2c
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/i2c"
cp drivers/media/i2c/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/" cp drivers/media/i2c/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/i2c/"
for i in cx25840; do for i in cx25840; do
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/i2c/${i}"
cp -a drivers/media/i2c/${i}/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/${i}" cp -a drivers/media/i2c/${i}/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/i2c/${i}"
done done
# add docbook makefile # add docbook makefile
install -D -m644 Documentation/DocBook/Makefile \ install -D -m644 Documentation/DocBook/Makefile \
"${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" "${pkgdir}/usr/lib/modules/${_kernver}/build/Documentation/DocBook/Makefile"
# add dm headers # add dm headers
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/md" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/md"
cp drivers/md/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/md" cp drivers/md/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/md"
# add inotify.h # add inotify.h
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/linux" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/include/linux"
cp include/linux/inotify.h "${pkgdir}/usr/src/linux-${_kernver}/include/linux/" cp include/linux/inotify.h "${pkgdir}/usr/lib/modules/${_kernver}/build/include/linux/"
# add wireless headers # add wireless headers
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/net/mac80211/"
cp net/mac80211/*.h "${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/" cp net/mac80211/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/net/mac80211/"
# add dvb headers for external modules # add dvb headers for external modules
# in reference to: # in reference to:
# http://bugs.archlinux.org/task/9912 # http://bugs.archlinux.org/task/9912
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/dvb-core"
cp drivers/media/dvb-core/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-core/" cp drivers/media/dvb-core/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/dvb-core/"
# and... # and...
# http://bugs.archlinux.org/task/11194 # http://bugs.archlinux.org/task/11194
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/include/config/dvb/"
cp include/config/dvb/*.h "${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/" cp include/config/dvb/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/include/config/dvb/"
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new # add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# in reference to: # in reference to:
# http://bugs.archlinux.org/task/13146 # http://bugs.archlinux.org/task/13146
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/dvb-frontends/"
cp drivers/media/dvb-frontends/lgdt330x.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/" cp drivers/media/dvb-frontends/lgdt330x.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/dvb-frontends/"
cp drivers/media/i2c/msp3400-driver.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/i2c/" cp drivers/media/i2c/msp3400-driver.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/i2c/"
# add dvb headers # add dvb headers
# in reference to: # in reference to:
# http://bugs.archlinux.org/task/20402 # http://bugs.archlinux.org/task/20402
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/usb/dvb-usb"
cp drivers/media/usb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/usb/dvb-usb/" cp drivers/media/usb/dvb-usb/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/usb/dvb-usb/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/dvb-frontends"
cp drivers/media/dvb-frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb-frontends/" cp drivers/media/dvb-frontends/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/dvb-frontends/"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/tuners"
cp drivers/media/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/tuners/" cp drivers/media/tuners/*.h "${pkgdir}/usr/lib/modules/${_kernver}/build/drivers/media/tuners/"
# add xfs and shmem for aufs building # add xfs and shmem for aufs building
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/fs/xfs"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/mm" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/mm"
cp fs/xfs/xfs_sb.h "${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h" cp fs/xfs/xfs_sb.h "${pkgdir}/usr/lib/modules/${_kernver}/build/fs/xfs/xfs_sb.h"
# copy in Kconfig files # copy in Kconfig files
for i in `find . -name "Kconfig*"`; do for i in $(find . -name "Kconfig*"); do
mkdir -p "${pkgdir}"/usr/src/linux-${_kernver}/`echo ${i} | sed 's|/Kconfig.*||'` mkdir -p "${pkgdir}"/usr/lib/modules/${_kernver}/build/`echo ${i} | sed 's|/Kconfig.*||'`
cp ${i} "${pkgdir}/usr/src/linux-${_kernver}/${i}" cp ${i} "${pkgdir}/usr/lib/modules/${_kernver}/build/${i}"
done done
chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}" chown -R root.root "${pkgdir}/usr/lib/modules/${_kernver}/build"
find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \; find "${pkgdir}/usr/lib/modules/${_kernver}/build" -type d -exec chmod 755 {} \;
# strip scripts directory # strip scripts directory
find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do find "${pkgdir}/usr/lib/modules/${_kernver}/build/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do
case "$(file -bi "${binary}")" in case "$(file -bi "${binary}")" in
*application/x-sharedlib*) # Libraries (.so) *application/x-sharedlib*) # Libraries (.so)
/usr/bin/strip ${STRIP_SHARED} "${binary}";; /usr/bin/strip ${STRIP_SHARED} "${binary}";;
@ -330,7 +342,7 @@ _package-headers() {
done done
# remove unneeded architectures # remove unneeded architectures
rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arc,arm,arm26,arm64,avr32,blackfin,c6x,cris,frv,h8300,hexagon,ia64,m32r,m68k,m68knommu,metag,mips,microblaze,mn10300,openrisc,parisc,powerpc,ppc,s390,score,sh,sh64,sparc,sparc64,tile,unicore32,um,v850,xtensa} rm -rf "${pkgdir}"/usr/lib/modules/${_kernver}/build/arch/{alpha,arc,arm,arm26,arm64,avr32,blackfin,c6x,cris,frv,h8300,hexagon,ia64,m32r,m68k,m68knommu,metag,mips,microblaze,mn10300,openrisc,parisc,powerpc,ppc,s390,score,sh,sh64,sparc,sparc64,tile,unicore32,um,v850,xtensa}
} }
_package-docs() { _package-docs() {
@ -341,13 +353,13 @@ _package-docs() {
cd "${srcdir}/${_srcname}" cd "${srcdir}/${_srcname}"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}" mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build"
cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}" cp -al Documentation "${pkgdir}/usr/lib/modules/${_kernver}/build"
find "${pkgdir}" -type f -exec chmod 444 {} \; find "${pkgdir}" -type f -exec chmod 444 {} \;
find "${pkgdir}" -type d -exec chmod 755 {} \; find "${pkgdir}" -type d -exec chmod 755 {} \;
# remove a file already in linux package # remove a file already in linux package
rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" rm -f "${pkgdir}/usr/lib/modules/${_kernver}/build/Documentation/DocBook/Makefile"
} }
_package-api-headers() { _package-api-headers() {
@ -370,18 +382,20 @@ for _p in ${pkgname[@]}; do
}" }"
done done
md5sums=('cc6ee608854e0da4b64f6c1ff8b6398c' md5sums=('0ecbaf65c00374eb4a826c2f9f37606f'
'03d34842e3a1197d17055610f62627b8' '675692f24410f375055d422e7886f3d8'
'a9281e90e529795eaf10b45d70ab2868' 'ba4468d313adfaf22368add7f58204aa'
'04b3adc5c78f9db16dfe8075205d73a0' '036251c6d0e3cd1b648a881230d8f1bd'
'eb14dcfd80c00852ef81ded6e826826a' 'eb14dcfd80c00852ef81ded6e826826a'
'98beb36f9b8cf16e58de2483ea9985e3' '98beb36f9b8cf16e58de2483ea9985e3'
'd50c1ac47394e9aec637002ef3392bd1' '989dc54ff8b179b0f80333cc97c0d43f'
'd4a75f77e6bd5d700dcd534cd5f0dfce' 'dd2adb99cd3feed6f11022562901965c'
'dc86fdc37615c97f03c1e0c31b7b833a' 'b00cc399d3797cb0793e18b5bf387a50'
'88eef9d3b5012ef7e82af1af8cc4e517' '7cbd2349cdf046acc37b652c06ba36be'
'cec0bb8981936eab2943b2009b7a6fff' '10dbaf863e22b2437e68f9190d65c861'
'88d9cddf9e0050a76ec4674f264fb2a1' 'd5907a721b97299f0685c583499f7820'
'cb9016630212ef07b168892fbcfd4e5d' 'a724515b350b29c53f20e631c6cf9a14'
'SKIP' 'e6fa278c092ad83780e2dd0568e24ca6'
'f1d75b8006daca313788e2f01d6a5465') '93dbf73af819b77f03453a9c6de2bb47'
'336d2c4afd7ee5f2bdf0dcb1a54df4b2'
'SKIP')

View file

@ -1,397 +0,0 @@
aufs3.12 mmap patch
diff --git a/fs/buffer.c b/fs/buffer.c
index 6024877..95bbf13 100644
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@ -2446,7 +2446,7 @@ int block_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf,
* Update file times before taking page lock. We may end up failing the
* fault so this update may be superfluous but who really cares...
*/
- file_update_time(vma->vm_file);
+ vma_file_update_time(vma);
ret = __block_page_mkwrite(vma, vmf, get_block);
sb_end_pagefault(sb);
diff --git a/fs/proc/nommu.c b/fs/proc/nommu.c
index ccfd99b..bca7789 100644
--- a/fs/proc/nommu.c
+++ b/fs/proc/nommu.c
@@ -45,7 +45,9 @@ static int nommu_region_show(struct seq_file *m, struct vm_region *region)
file = region->vm_file;
if (file) {
- struct inode *inode = file_inode(region->vm_file);
+ struct inode *inode;
+ file = vmr_pr_or_file(region);
+ inode = file_inode(file);
dev = inode->i_sb->s_dev;
ino = inode->i_ino;
}
diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 390bdab..ad05546 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -272,7 +272,9 @@ show_map_vma(struct seq_file *m, struct vm_area_struct *vma, int is_pid)
const char *name = NULL;
if (file) {
- struct inode *inode = file_inode(vma->vm_file);
+ struct inode *inode;
+ file = vma_pr_or_file(vma);
+ inode = file_inode(file);
dev = inode->i_sb->s_dev;
ino = inode->i_ino;
pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
@@ -1412,6 +1414,7 @@ static int show_numa_map(struct seq_file *m, void *v, int is_pid)
seq_printf(m, "%08lx %s", vma->vm_start, buffer);
if (file) {
+ file = vma_pr_or_file(vma);
seq_printf(m, " file=");
seq_path(m, &file->f_path, "\n\t= ");
} else if (vma->vm_start <= mm->brk && vma->vm_end >= mm->start_brk) {
diff --git a/fs/proc/task_nommu.c b/fs/proc/task_nommu.c
index 56123a6..d19737f 100644
--- a/fs/proc/task_nommu.c
+++ b/fs/proc/task_nommu.c
@@ -149,7 +149,9 @@ static int nommu_vma_show(struct seq_file *m, struct vm_area_struct *vma,
file = vma->vm_file;
if (file) {
- struct inode *inode = file_inode(vma->vm_file);
+ struct inode *inode;
+ file = vma_pr_or_file(file);
+ inode = file_inode(file);
dev = inode->i_sb->s_dev;
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 8b6e55e..1359c80 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -17,6 +17,9 @@
#include <linux/pfn.h>
#include <linux/bit_spinlock.h>
#include <linux/shrinker.h>
+#include <linux/dcache.h>
+#include <linux/file.h>
+#include <linux/fs.h>
struct mempolicy;
struct anon_vma;
@@ -1017,6 +1020,87 @@ static inline int fixup_user_fault(struct task_struct *tsk,
}
#endif
+/*
+ * Mainly for aufs which mmap(2) diffrent file and wants to print different path
+ * in /proc/PID/maps.
+ */
+/* #define AUFS_DEBUG_MMAP */
+static inline void aufs_trace(struct file *f, struct file *pr,
+ const char func[], int line, const char func2[])
+{
+#ifdef AUFS_DEBUG_MMAP
+ if (pr)
+ pr_info("%s:%d: %s, %p\n", func, line, func2,
+ f ? (char *)f->f_dentry->d_name.name : "(null)");
+#endif
+}
+
+static inline struct file *vmr_do_pr_or_file(struct vm_region *region,
+ const char func[], int line)
+{
+ struct file *f = region->vm_file, *pr = region->vm_prfile;
+ aufs_trace(f, pr, func, line, __func__);
+ return (f && pr) ? pr : f;
+}
+
+static inline void vmr_do_fput(struct vm_region *region,
+ const char func[], int line)
+{
+ struct file *f = region->vm_file, *pr = region->vm_prfile;
+ aufs_trace(f, pr, func, line, __func__);
+ fput(f);
+ if (f && pr)
+ fput(pr);
+}
+
+static inline void vma_do_file_update_time(struct vm_area_struct *vma,
+ const char func[], int line)
+{
+ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
+ aufs_trace(f, pr, func, line, __func__);
+ file_update_time(f);
+ if (f && pr)
+ file_update_time(pr);
+}
+
+static inline struct file *vma_do_pr_or_file(struct vm_area_struct *vma,
+ const char func[], int line)
+{
+ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
+ aufs_trace(f, pr, func, line, __func__);
+ return (f && pr) ? pr : f;
+}
+
+static inline void vma_do_get_file(struct vm_area_struct *vma,
+ const char func[], int line)
+{
+ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
+ aufs_trace(f, pr, func, line, __func__);
+ get_file(f);
+ if (f && pr)
+ get_file(pr);
+}
+
+static inline void vma_do_fput(struct vm_area_struct *vma,
+ const char func[], int line)
+{
+ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
+ aufs_trace(f, pr, func, line, __func__);
+ fput(f);
+ if (f && pr)
+ fput(pr);
+}
+
+#define vmr_pr_or_file(region) vmr_do_pr_or_file(region, __func__, \
+ __LINE__)
+#define vmr_fput(region) vmr_do_fput(region, __func__, __LINE__)
+#define vma_file_update_time(vma) vma_do_file_update_time(vma, __func__, \
+ __LINE__)
+#define vma_pr_or_file(vma) vma_do_pr_or_file(vma, __func__, \
+ __LINE__)
+#define vma_get_file(vma) vma_do_get_file(vma, __func__, __LINE__)
+#define vma_fput(vma) vma_do_fput(vma, __func__, __LINE__)
+
extern int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, int len, int write);
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 d9851ee..4bde7bf 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -213,6 +213,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 */
+ struct file *vm_prfile; /* the virtual backing file or NULL */
int vm_usage; /* region usage count (access under nommu_region_sem) */
bool vm_icache_flushed : 1; /* true if the icache has been flushed for
@@ -281,6 +282,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). */
+ struct file *vm_prfile; /* shadow of vm_file */
void * vm_private_data; /* was vm_pte (shared mem) */
#ifndef CONFIG_MMU
diff --git a/kernel/fork.c b/kernel/fork.c
index 086fe73..003e30c 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -412,7 +412,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;
- get_file(file);
+ vma_get_file(tmp);
if (tmp->vm_flags & VM_DENYWRITE)
atomic_dec(&inode->i_writecount);
mutex_lock(&mapping->i_mmap_mutex);
diff --git a/mm/filemap.c b/mm/filemap.c
index ae4846f..3f890ee 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -1735,7 +1735,7 @@ int filemap_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf)
int ret = VM_FAULT_LOCKED;
sb_start_pagefault(inode->i_sb);
- file_update_time(vma->vm_file);
+ vma_file_update_time(vma);
lock_page(page);
if (page->mapping != inode->i_mapping) {
unlock_page(page);
diff --git a/mm/fremap.c b/mm/fremap.c
index 5bff081..246a9c7 100644
--- a/mm/fremap.c
+++ b/mm/fremap.c
@@ -207,11 +207,12 @@ get_write_lock:
*/
if (mapping_cap_account_dirty(mapping)) {
unsigned long addr;
- struct file *file = get_file(vma->vm_file);
+ struct file *file = vma->vm_file;
/* mmap_region may free vma; grab the info now */
vm_flags = vma->vm_flags;
+ vma_get_file(vma);
addr = mmap_region(file, start, size, vm_flags, pgoff);
- fput(file);
+ vma_fput(vma);
if (IS_ERR_VALUE(addr)) {
err = addr;
} else {
diff --git a/mm/madvise.c b/mm/madvise.c
index 539eeb9..5e700b1 100644
--- a/mm/madvise.c
+++ b/mm/madvise.c
@@ -327,12 +327,12 @@ static long madvise_remove(struct vm_area_struct *vma,
* vma's reference to the file) can go away as soon as we drop
* mmap_sem.
*/
- get_file(f);
+ vma_get_file(vma);
up_read(&current->mm->mmap_sem);
error = do_fallocate(f,
FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE,
offset, end - start);
- fput(f);
+ vma_fput(vma);
down_read(&current->mm->mmap_sem);
return error;
}
diff --git a/mm/memory.c b/mm/memory.c
index d176154..49cafa9 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2745,7 +2745,7 @@ reuse:
set_page_dirty_balance(dirty_page, page_mkwrite);
/* file_update_time outside page_lock */
if (vma->vm_file)
- file_update_time(vma->vm_file);
+ vma_file_update_time(vma);
}
put_page(dirty_page);
if (page_mkwrite) {
@@ -3456,7 +3456,7 @@ static int __do_fault(struct mm_struct *mm, struct vm_area_struct *vma,
/* file_update_time outside page_lock */
if (vma->vm_file && !page_mkwrite)
- file_update_time(vma->vm_file);
+ vma_file_update_time(vma);
} else {
unlock_page(vmf.page);
if (anon)
diff --git a/mm/mmap.c b/mm/mmap.c
index 9d54851..64ae6ce 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -250,7 +250,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)
- fput(vma->vm_file);
+ vma_fput(vma);
mpol_put(vma_policy(vma));
kmem_cache_free(vm_area_cachep, vma);
return next;
@@ -860,7 +860,7 @@ again: remove_next = 1 + (end > next->vm_end);
if (remove_next) {
if (file) {
uprobe_munmap(next, next->vm_start, next->vm_end);
- fput(file);
+ vma_fput(vma);
}
if (next->anon_vma)
anon_vma_merge(vma, next);
@@ -1622,8 +1622,8 @@ out:
unmap_and_free_vma:
if (vm_flags & VM_DENYWRITE)
allow_write_access(file);
+ vma_fput(vma);
vma->vm_file = NULL;
- fput(file);
/* Undo any partial mapping done by a device driver. */
unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
@@ -2412,7 +2412,7 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
goto out_free_mpol;
if (new->vm_file)
- get_file(new->vm_file);
+ vma_get_file(new);
if (new->vm_ops && new->vm_ops->open)
new->vm_ops->open(new);
@@ -2431,7 +2431,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)
- fput(new->vm_file);
+ vma_fput(new);
unlink_anon_vmas(new);
out_free_mpol:
mpol_put(vma_policy(new));
@@ -2828,7 +2828,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)
- get_file(new_vma->vm_file);
+ vma_get_file(new_vma);
if (new_vma->vm_ops && new_vma->vm_ops->open)
new_vma->vm_ops->open(new_vma);
vma_link(mm, new_vma, prev, rb_link, rb_parent);
diff --git a/mm/msync.c b/mm/msync.c
index 632df45..02d770e 100644
--- a/mm/msync.c
+++ b/mm/msync.c
@@ -80,10 +80,10 @@ SYSCALL_DEFINE3(msync, unsigned long, start, size_t, len, int, flags)
start = vma->vm_end;
if ((flags & MS_SYNC) && file &&
(vma->vm_flags & VM_SHARED)) {
- get_file(file);
+ vma_get_file(vma);
up_read(&mm->mmap_sem);
error = vfs_fsync(file, 0);
- fput(file);
+ vma_fput(vma);
if (error || start >= end)
goto out;
down_read(&mm->mmap_sem);
diff --git a/mm/nommu.c b/mm/nommu.c
index ecd1f15..d4306cd 100644
--- a/mm/nommu.c
+++ b/mm/nommu.c
@@ -652,7 +652,7 @@ static void __put_nommu_region(struct vm_region *region)
up_write(&nommu_region_sem);
if (region->vm_file)
- fput(region->vm_file);
+ vmr_fput(region);
/* IO memory and memory shared directly out of the pagecache
* from ramfs/tmpfs mustn't be released here */
@@ -810,7 +810,7 @@ static void delete_vma(struct mm_struct *mm, struct vm_area_struct *vma)
if (vma->vm_ops && vma->vm_ops->close)
vma->vm_ops->close(vma);
if (vma->vm_file)
- fput(vma->vm_file);
+ vma_fput(vma);
put_nommu_region(vma->vm_region);
kmem_cache_free(vm_area_cachep, vma);
}
@@ -1376,7 +1376,7 @@ unsigned long do_mmap_pgoff(struct file *file,
goto error_just_free;
}
}
- fput(region->vm_file);
+ vmr_fput(region);
kmem_cache_free(vm_region_jar, region);
region = pregion;
result = start;
@@ -1452,10 +1452,10 @@ error_just_free:
up_write(&nommu_region_sem);
error:
if (region->vm_file)
- fput(region->vm_file);
+ vmr_fput(region);
kmem_cache_free(vm_region_jar, region);
if (vma->vm_file)
- fput(vma->vm_file);
+ vma_fput(vma);
kmem_cache_free(vm_area_cachep, vma);
kleave(" = %d", ret);
return ret;

View file

@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/x86 3.12.7-1 Kernel Configuration # Linux/x86 3.13.0 Kernel Configuration
# #
# CONFIG_64BIT is not set # CONFIG_64BIT is not set
CONFIG_X86_32=y CONFIG_X86_32=y
@ -38,7 +38,6 @@ CONFIG_HAVE_INTEL_TXT=y
CONFIG_X86_32_SMP=y CONFIG_X86_32_SMP=y
CONFIG_X86_HT=y CONFIG_X86_HT=y
CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx"
CONFIG_ARCH_CPU_PROBE_RELEASE=y
CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_IRQ_WORK=y CONFIG_IRQ_WORK=y
@ -75,7 +74,6 @@ CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y CONFIG_AUDITSYSCALL=y
CONFIG_AUDIT_WATCH=y CONFIG_AUDIT_WATCH=y
CONFIG_AUDIT_TREE=y CONFIG_AUDIT_TREE=y
CONFIG_AUDIT_LOGINUID_IMMUTABLE=y
# #
# IRQ subsystem # IRQ subsystem
@ -159,7 +157,7 @@ CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y CONFIG_RT_GROUP_SCHED=y
CONFIG_BLK_CGROUP=y CONFIG_BLK_CGROUP=y
# CONFIG_DEBUG_BLK_CGROUP is not set # CONFIG_DEBUG_BLK_CGROUP is not set
# CONFIG_CHECKPOINT_RESTORE is not set CONFIG_CHECKPOINT_RESTORE=y
CONFIG_NAMESPACES=y CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y CONFIG_UTS_NS=y
CONFIG_IPC_NS=y CONFIG_IPC_NS=y
@ -240,7 +238,6 @@ CONFIG_HAVE_KPROBES_ON_FTRACE=y
CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DMA_CONTIGUOUS=y CONFIG_HAVE_DMA_CONTIGUOUS=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_DMA_API_DEBUG=y CONFIG_HAVE_DMA_API_DEBUG=y
@ -274,6 +271,7 @@ CONFIG_HAVE_GENERIC_DMA_COHERENT=y
CONFIG_SLABINFO=y CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0 CONFIG_BASE_SMALL=0
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
CONFIG_MODULES=y CONFIG_MODULES=y
CONFIG_MODULE_FORCE_LOAD=y CONFIG_MODULE_FORCE_LOAD=y
CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_UNLOAD=y
@ -472,6 +470,7 @@ CONFIG_FRONTSWAP=y
# CONFIG_CMA is not set # CONFIG_CMA is not set
CONFIG_ZBUD=y CONFIG_ZBUD=y
CONFIG_ZSWAP=y CONFIG_ZSWAP=y
CONFIG_MEM_SOFT_DIRTY=y
# CONFIG_HIGHPTE is not set # CONFIG_HIGHPTE is not set
CONFIG_X86_CHECK_BIOS_CORRUPTION=y CONFIG_X86_CHECK_BIOS_CORRUPTION=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
@ -529,13 +528,13 @@ CONFIG_PM_DEBUG=y
CONFIG_PM_ADVANCED_DEBUG=y CONFIG_PM_ADVANCED_DEBUG=y
# CONFIG_PM_TEST_SUSPEND is not set # CONFIG_PM_TEST_SUSPEND is not set
CONFIG_PM_SLEEP_DEBUG=y CONFIG_PM_SLEEP_DEBUG=y
# CONFIG_DPM_WATCHDOG is not set
CONFIG_PM_TRACE=y CONFIG_PM_TRACE=y
CONFIG_PM_TRACE_RTC=y CONFIG_PM_TRACE_RTC=y
CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
CONFIG_ACPI=y CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y CONFIG_ACPI_SLEEP=y
# CONFIG_ACPI_PROCFS is not set # CONFIG_ACPI_PROCFS is not set
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_EC_DEBUGFS=m CONFIG_ACPI_EC_DEBUGFS=m
CONFIG_ACPI_AC=m CONFIG_ACPI_AC=m
CONFIG_ACPI_BATTERY=m CONFIG_ACPI_BATTERY=m
@ -550,7 +549,6 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_THERMAL=m CONFIG_ACPI_THERMAL=m
# CONFIG_ACPI_CUSTOM_DSDT is not set # CONFIG_ACPI_CUSTOM_DSDT is not set
CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_PCI_SLOT=y CONFIG_ACPI_PCI_SLOT=y
CONFIG_X86_PM_TIMER=y CONFIG_X86_PM_TIMER=y
@ -565,6 +563,7 @@ CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=m CONFIG_ACPI_APEI_EINJ=m
CONFIG_ACPI_APEI_ERST_DEBUG=m CONFIG_ACPI_APEI_ERST_DEBUG=m
CONFIG_ACPI_EXTLOG=m
CONFIG_SFI=y CONFIG_SFI=y
CONFIG_X86_APM_BOOT=y CONFIG_X86_APM_BOOT=y
CONFIG_APM=y CONFIG_APM=y
@ -578,7 +577,6 @@ CONFIG_APM_DO_ENABLE=y
# CPU Frequency scaling # CPU Frequency scaling
# #
CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_GOV_COMMON=y CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=m CONFIG_CPU_FREQ_STAT=m
CONFIG_CPU_FREQ_STAT_DETAILS=y CONFIG_CPU_FREQ_STAT_DETAILS=y
@ -679,7 +677,7 @@ CONFIG_OLPC_XO1_PM=y
CONFIG_OLPC_XO1_RTC=y CONFIG_OLPC_XO1_RTC=y
CONFIG_OLPC_XO1_SCI=y CONFIG_OLPC_XO1_SCI=y
CONFIG_OLPC_XO15_SCI=y CONFIG_OLPC_XO15_SCI=y
# CONFIG_ALIX is not set CONFIG_ALIX=y
# CONFIG_NET5501 is not set # CONFIG_NET5501 is not set
# CONFIG_GEOS is not set # CONFIG_GEOS is not set
CONFIG_AMD_NB=y CONFIG_AMD_NB=y
@ -810,7 +808,6 @@ CONFIG_DEFAULT_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic" CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set # CONFIG_TCP_MD5SIG is not set
CONFIG_IPV6=y CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_IPV6_ROUTER_PREF=y CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_ROUTE_INFO=y CONFIG_IPV6_ROUTE_INFO=y
CONFIG_IPV6_OPTIMISTIC_DAD=y CONFIG_IPV6_OPTIMISTIC_DAD=y
@ -824,6 +821,7 @@ CONFIG_INET6_XFRM_MODE_TRANSPORT=m
CONFIG_INET6_XFRM_MODE_TUNNEL=m CONFIG_INET6_XFRM_MODE_TUNNEL=m
CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_BEET=m
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
CONFIG_IPV6_VTI=m
CONFIG_IPV6_SIT=m CONFIG_IPV6_SIT=m
CONFIG_IPV6_SIT_6RD=y CONFIG_IPV6_SIT_6RD=y
CONFIG_IPV6_NDISC_NODETYPE=y CONFIG_IPV6_NDISC_NODETYPE=y
@ -886,6 +884,17 @@ CONFIG_NF_NAT_IRC=m
CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_SIP=m
CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_TFTP=m
CONFIG_NETFILTER_SYNPROXY=m CONFIG_NETFILTER_SYNPROXY=m
CONFIG_NF_TABLES=m
CONFIG_NFT_EXTHDR=m
CONFIG_NFT_META=m
CONFIG_NFT_CT=m
CONFIG_NFT_RBTREE=m
CONFIG_NFT_HASH=m
CONFIG_NFT_COUNTER=m
CONFIG_NFT_LOG=m
CONFIG_NFT_LIMIT=m
CONFIG_NFT_NAT=m
CONFIG_NFT_COMPAT=m
CONFIG_NETFILTER_XTABLES=m CONFIG_NETFILTER_XTABLES=m
# #
@ -979,7 +988,9 @@ CONFIG_IP_SET_HASH_IP=m
CONFIG_IP_SET_HASH_IPPORT=m CONFIG_IP_SET_HASH_IPPORT=m
CONFIG_IP_SET_HASH_IPPORTIP=m CONFIG_IP_SET_HASH_IPPORTIP=m
CONFIG_IP_SET_HASH_IPPORTNET=m CONFIG_IP_SET_HASH_IPPORTNET=m
CONFIG_IP_SET_HASH_NETPORTNET=m
CONFIG_IP_SET_HASH_NET=m CONFIG_IP_SET_HASH_NET=m
CONFIG_IP_SET_HASH_NETNET=m
CONFIG_IP_SET_HASH_NETPORT=m CONFIG_IP_SET_HASH_NETPORT=m
CONFIG_IP_SET_HASH_NETIFACE=m CONFIG_IP_SET_HASH_NETIFACE=m
CONFIG_IP_SET_LIST_SET=m CONFIG_IP_SET_LIST_SET=m
@ -1030,6 +1041,11 @@ CONFIG_IP_VS_PE_SIP=m
CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_DEFRAG_IPV4=m
CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m
# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set # CONFIG_NF_CONNTRACK_PROC_COMPAT is not set
CONFIG_NF_TABLES_IPV4=m
CONFIG_NFT_REJECT_IPV4=m
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
CONFIG_NFT_CHAIN_NAT_IPV4=m
CONFIG_NF_TABLES_ARP=m
CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_AH=m CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_ECN=m
@ -1062,6 +1078,9 @@ CONFIG_IP_NF_ARP_MANGLE=m
# #
CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_DEFRAG_IPV6=m
CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m
CONFIG_NF_TABLES_IPV6=m
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
CONFIG_NFT_CHAIN_NAT_IPV6=m
CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_AH=m
CONFIG_IP6_NF_MATCH_EUI64=m CONFIG_IP6_NF_MATCH_EUI64=m
@ -1082,6 +1101,7 @@ CONFIG_IP6_NF_SECURITY=m
CONFIG_NF_NAT_IPV6=m CONFIG_NF_NAT_IPV6=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_MASQUERADE=m
CONFIG_IP6_NF_TARGET_NPT=m CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_NF_TABLES_BRIDGE=m
CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_NF_EBTABLES=m
CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_BROUTE=m
CONFIG_BRIDGE_EBT_T_FILTER=m CONFIG_BRIDGE_EBT_T_FILTER=m
@ -1218,6 +1238,7 @@ CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_FLOW=m CONFIG_NET_CLS_FLOW=m
CONFIG_NET_CLS_CGROUP=y CONFIG_NET_CLS_CGROUP=y
CONFIG_NET_CLS_BPF=m
# CONFIG_NET_EMATCH is not set # CONFIG_NET_EMATCH is not set
CONFIG_NET_CLS_ACT=y CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=m CONFIG_NET_ACT_POLICE=m
@ -1247,6 +1268,7 @@ CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_NETLINK_MMAP=y CONFIG_NETLINK_MMAP=y
CONFIG_NETLINK_DIAG=m CONFIG_NETLINK_DIAG=m
CONFIG_NET_MPLS_GSO=m CONFIG_NET_MPLS_GSO=m
CONFIG_HSR=m
CONFIG_RPS=y CONFIG_RPS=y
CONFIG_RFS_ACCEL=y CONFIG_RFS_ACCEL=y
CONFIG_XPS=y CONFIG_XPS=y
@ -1414,6 +1436,7 @@ CONFIG_WIMAX_DEBUG_LEVEL=8
CONFIG_RFKILL=m CONFIG_RFKILL=m
CONFIG_RFKILL_LEDS=y CONFIG_RFKILL_LEDS=y
CONFIG_RFKILL_INPUT=y CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_GPIO=m
CONFIG_NET_9P=m CONFIG_NET_9P=m
CONFIG_NET_9P_VIRTIO=m CONFIG_NET_9P_VIRTIO=m
# CONFIG_NET_9P_DEBUG is not set # CONFIG_NET_9P_DEBUG is not set
@ -1425,6 +1448,7 @@ CONFIG_CEPH_LIB=m
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set # CONFIG_CEPH_LIB_PRETTYDEBUG is not set
# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set # CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
CONFIG_NFC=m CONFIG_NFC=m
CONFIG_NFC_DIGITAL=m
CONFIG_NFC_NCI=m CONFIG_NFC_NCI=m
# CONFIG_NFC_NCI_SPI is not set # CONFIG_NFC_NCI_SPI is not set
CONFIG_NFC_HCI=m CONFIG_NFC_HCI=m
@ -1437,6 +1461,7 @@ CONFIG_NFC_PN533=m
CONFIG_NFC_WILINK=m CONFIG_NFC_WILINK=m
CONFIG_NFC_MEI_PHY=m CONFIG_NFC_MEI_PHY=m
CONFIG_NFC_SIM=m CONFIG_NFC_SIM=m
CONFIG_NFC_PORT100=m
CONFIG_NFC_PN544=m CONFIG_NFC_PN544=m
CONFIG_NFC_PN544_MEI=m CONFIG_NFC_PN544_MEI=m
CONFIG_NFC_MICROREAD=m CONFIG_NFC_MICROREAD=m
@ -1599,6 +1624,7 @@ CONFIG_OF_PCI=y
CONFIG_OF_PCI_IRQ=y CONFIG_OF_PCI_IRQ=y
CONFIG_OF_MTD=y CONFIG_OF_MTD=y
CONFIG_PARPORT=m CONFIG_PARPORT=m
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
CONFIG_PARPORT_PC=m CONFIG_PARPORT_PC=m
CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_SERIAL=m
# CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_FIFO is not set
@ -1618,10 +1644,10 @@ CONFIG_ISAPNP=y
# CONFIG_PNPBIOS is not set # CONFIG_PNPBIOS is not set
CONFIG_PNPACPI=y CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_NULL_BLK is not set
CONFIG_BLK_DEV_FD=m CONFIG_BLK_DEV_FD=m
# CONFIG_PARIDE is not set # CONFIG_PARIDE is not set
CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
CONFIG_BLK_CPQ_DA=m
CONFIG_BLK_CPQ_CISS_DA=m CONFIG_BLK_CPQ_CISS_DA=m
# CONFIG_CISS_SCSI_TAPE is not set # CONFIG_CISS_SCSI_TAPE is not set
CONFIG_BLK_DEV_DAC960=m CONFIG_BLK_DEV_DAC960=m
@ -1716,6 +1742,14 @@ CONFIG_ALTERA_STAPL=m
CONFIG_INTEL_MEI=m CONFIG_INTEL_MEI=m
CONFIG_INTEL_MEI_ME=m CONFIG_INTEL_MEI_ME=m
CONFIG_VMWARE_VMCI=m CONFIG_VMWARE_VMCI=m
#
# Intel MIC Host Driver
#
#
# Intel MIC Card Driver
#
CONFIG_HAVE_IDE=y CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set # CONFIG_IDE is not set
@ -2007,7 +2041,6 @@ CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m CONFIG_MD_FAULTY=m
CONFIG_BCACHE=m CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set # CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_EDEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set # CONFIG_BCACHE_CLOSURES_DEBUG is not set
CONFIG_BLK_DEV_DM=m CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set # CONFIG_DM_DEBUG is not set
@ -2022,8 +2055,8 @@ CONFIG_DM_CACHE=m
CONFIG_DM_CACHE_MQ=m CONFIG_DM_CACHE_MQ=m
CONFIG_DM_CACHE_CLEANER=m CONFIG_DM_CACHE_CLEANER=m
CONFIG_DM_MIRROR=m CONFIG_DM_MIRROR=m
CONFIG_DM_RAID=m
CONFIG_DM_LOG_USERSPACE=m CONFIG_DM_LOG_USERSPACE=m
CONFIG_DM_RAID=m
CONFIG_DM_ZERO=m CONFIG_DM_ZERO=m
CONFIG_DM_MULTIPATH=m CONFIG_DM_MULTIPATH=m
CONFIG_DM_MULTIPATH_QL=m CONFIG_DM_MULTIPATH_QL=m
@ -2418,6 +2451,7 @@ CONFIG_USB_NET_AX88179_178A=m
CONFIG_USB_NET_CDCETHER=m CONFIG_USB_NET_CDCETHER=m
CONFIG_USB_NET_CDC_EEM=m CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_CDC_NCM=m CONFIG_USB_NET_CDC_NCM=m
CONFIG_USB_NET_HUAWEI_CDC_NCM=m
CONFIG_USB_NET_CDC_MBIM=m CONFIG_USB_NET_CDC_MBIM=m
CONFIG_USB_NET_DM9601=m CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_SR9700=m CONFIG_USB_NET_SR9700=m
@ -2502,6 +2536,8 @@ CONFIG_ATH10K_PCI=m
# CONFIG_ATH10K_DEBUG is not set # CONFIG_ATH10K_DEBUG is not set
CONFIG_ATH10K_DEBUGFS=y CONFIG_ATH10K_DEBUGFS=y
# CONFIG_ATH10K_TRACING is not set # CONFIG_ATH10K_TRACING is not set
CONFIG_WCN36XX=m
# CONFIG_WCN36XX_DEBUGFS is not set
CONFIG_B43=m CONFIG_B43=m
CONFIG_B43_BCMA=y CONFIG_B43_BCMA=y
CONFIG_B43_SSB=y CONFIG_B43_SSB=y
@ -2611,6 +2647,7 @@ CONFIG_RT2800USB_RT53XX=y
CONFIG_RT2800USB_RT55XX=y CONFIG_RT2800USB_RT55XX=y
CONFIG_RT2800USB_UNKNOWN=y CONFIG_RT2800USB_UNKNOWN=y
CONFIG_RT2800_LIB=m CONFIG_RT2800_LIB=m
CONFIG_RT2800_LIB_MMIO=m
CONFIG_RT2X00_LIB_MMIO=m CONFIG_RT2X00_LIB_MMIO=m
CONFIG_RT2X00_LIB_PCI=m CONFIG_RT2X00_LIB_PCI=m
CONFIG_RT2X00_LIB_USB=m CONFIG_RT2X00_LIB_USB=m
@ -2824,7 +2861,7 @@ CONFIG_INPUT_MATRIXKMAP=m
# #
# Userland interfaces # Userland interfaces
# #
CONFIG_INPUT_MOUSEDEV=y CONFIG_INPUT_MOUSEDEV=m
CONFIG_INPUT_MOUSEDEV_PSAUX=y CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
@ -2838,7 +2875,7 @@ CONFIG_INPUT_EVDEV=m
CONFIG_INPUT_KEYBOARD=y CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ADP5588=m CONFIG_KEYBOARD_ADP5588=m
CONFIG_KEYBOARD_ADP5589=m CONFIG_KEYBOARD_ADP5589=m
CONFIG_KEYBOARD_ATKBD=y CONFIG_KEYBOARD_ATKBD=m
CONFIG_KEYBOARD_QT1070=m CONFIG_KEYBOARD_QT1070=m
CONFIG_KEYBOARD_QT2160=m CONFIG_KEYBOARD_QT2160=m
# CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_LKKBD is not set
@ -2869,7 +2906,7 @@ CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_SENTELIC=y CONFIG_MOUSE_PS2_SENTELIC=y
# CONFIG_MOUSE_PS2_TOUCHKIT is not set # CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_PS2_OLPC=y CONFIG_MOUSE_PS2_OLPC=y
CONFIG_MOUSE_SERIAL=y CONFIG_MOUSE_SERIAL=m
CONFIG_MOUSE_APPLETOUCH=m CONFIG_MOUSE_APPLETOUCH=m
CONFIG_MOUSE_BCM5974=m CONFIG_MOUSE_BCM5974=m
CONFIG_MOUSE_CYAPA=m CONFIG_MOUSE_CYAPA=m
@ -2988,7 +3025,9 @@ CONFIG_TOUCHSCREEN_TSC_SERIO=m
# CONFIG_TOUCHSCREEN_TSC2005 is not set # CONFIG_TOUCHSCREEN_TSC2005 is not set
CONFIG_TOUCHSCREEN_TSC2007=m CONFIG_TOUCHSCREEN_TSC2007=m
CONFIG_TOUCHSCREEN_ST1232=m CONFIG_TOUCHSCREEN_ST1232=m
CONFIG_TOUCHSCREEN_SUR40=m
CONFIG_TOUCHSCREEN_TPS6507X=m CONFIG_TOUCHSCREEN_TPS6507X=m
CONFIG_TOUCHSCREEN_ZFORCE=m
CONFIG_INPUT_MISC=y CONFIG_INPUT_MISC=y
CONFIG_INPUT_AD714X=m CONFIG_INPUT_AD714X=m
CONFIG_INPUT_AD714X_I2C=m CONFIG_INPUT_AD714X_I2C=m
@ -3014,7 +3053,6 @@ CONFIG_INPUT_RETU_PWRBUTTON=m
CONFIG_INPUT_UINPUT=m CONFIG_INPUT_UINPUT=m
CONFIG_INPUT_PCF50633_PMU=m CONFIG_INPUT_PCF50633_PMU=m
CONFIG_INPUT_PCF8574=m CONFIG_INPUT_PCF8574=m
# CONFIG_INPUT_PWM_BEEPER is not set
CONFIG_INPUT_GPIO_ROTARY_ENCODER=m CONFIG_INPUT_GPIO_ROTARY_ENCODER=m
CONFIG_INPUT_ADXL34X=m CONFIG_INPUT_ADXL34X=m
CONFIG_INPUT_ADXL34X_I2C=m CONFIG_INPUT_ADXL34X_I2C=m
@ -3027,19 +3065,20 @@ CONFIG_INPUT_IDEAPAD_SLIDEBAR=m
# #
# Hardware I/O ports # Hardware I/O ports
# #
CONFIG_SERIO=y CONFIG_SERIO=m
CONFIG_SERIO_I8042=y CONFIG_SERIO_I8042=m
CONFIG_SERIO_SERPORT=m CONFIG_SERIO_SERPORT=m
CONFIG_SERIO_CT82C710=m CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PARKBD=m CONFIG_SERIO_PARKBD=m
CONFIG_SERIO_PCIPS2=m CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=y CONFIG_SERIO_LIBPS2=m
CONFIG_SERIO_RAW=m CONFIG_SERIO_RAW=m
CONFIG_SERIO_ALTERA_PS2=m CONFIG_SERIO_ALTERA_PS2=m
CONFIG_SERIO_PS2MULT=m CONFIG_SERIO_PS2MULT=m
CONFIG_SERIO_ARC_PS2=m CONFIG_SERIO_ARC_PS2=m
CONFIG_SERIO_APBPS2=m CONFIG_SERIO_APBPS2=m
CONFIG_SERIO_OLPC_APSP=m CONFIG_SERIO_OLPC_APSP=m
CONFIG_HYPERV_KEYBOARD=m
CONFIG_GAMEPORT=m CONFIG_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m CONFIG_GAMEPORT_NS558=m
CONFIG_GAMEPORT_L4=m CONFIG_GAMEPORT_L4=m
@ -3116,7 +3155,6 @@ CONFIG_SERIAL_ARC_NR_PORTS=1
CONFIG_SERIAL_RP2=m CONFIG_SERIAL_RP2=m
CONFIG_SERIAL_RP2_NR_UARTS=32 CONFIG_SERIAL_RP2_NR_UARTS=32
CONFIG_SERIAL_FSL_LPUART=m CONFIG_SERIAL_FSL_LPUART=m
CONFIG_SERIAL_ST_ASC=m
CONFIG_PRINTER=m CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set # CONFIG_LP_CONSOLE is not set
CONFIG_PPDEV=m CONFIG_PPDEV=m
@ -3155,10 +3193,13 @@ CONFIG_NSC_GPIO=m
# CONFIG_RAW_DRIVER is not set # CONFIG_RAW_DRIVER is not set
CONFIG_HPET=y CONFIG_HPET=y
CONFIG_HPET_MMAP=y CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y
CONFIG_HANGCHECK_TIMER=m CONFIG_HANGCHECK_TIMER=m
CONFIG_TCG_TPM=m CONFIG_TCG_TPM=m
CONFIG_TCG_TIS=m CONFIG_TCG_TIS=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_INFINEON=m CONFIG_TCG_TIS_I2C_INFINEON=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_NSC=m CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m CONFIG_TCG_ATMEL=m
CONFIG_TCG_INFINEON=m CONFIG_TCG_INFINEON=m
@ -3260,7 +3301,6 @@ CONFIG_SPI_MASTER=y
# CONFIG_SPI_GPIO is not set # CONFIG_SPI_GPIO is not set
# CONFIG_SPI_LM70_LLP is not set # CONFIG_SPI_LM70_LLP is not set
# CONFIG_SPI_FSL_SPI is not set # CONFIG_SPI_FSL_SPI is not set
# CONFIG_SPI_FSL_DSPI is not set
# CONFIG_SPI_OC_TINY is not set # CONFIG_SPI_OC_TINY is not set
# CONFIG_SPI_PXA2XX is not set # CONFIG_SPI_PXA2XX is not set
# CONFIG_SPI_PXA2XX_PCI is not set # CONFIG_SPI_PXA2XX_PCI is not set
@ -3302,8 +3342,8 @@ CONFIG_PTP_1588_CLOCK=m
CONFIG_DP83640_PHY=m CONFIG_DP83640_PHY=m
CONFIG_PTP_1588_CLOCK_PCH=m CONFIG_PTP_1588_CLOCK_PCH=m
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
CONFIG_GPIO_DEVRES=y
CONFIG_GPIOLIB=y CONFIG_GPIOLIB=y
CONFIG_GPIO_DEVRES=y
CONFIG_OF_GPIO=y CONFIG_OF_GPIO=y
CONFIG_GPIO_ACPI=y CONFIG_GPIO_ACPI=y
# CONFIG_DEBUG_GPIO is not set # CONFIG_DEBUG_GPIO is not set
@ -3338,7 +3378,7 @@ CONFIG_GPIO_ARIZONA=m
# #
CONFIG_GPIO_CS5535=y CONFIG_GPIO_CS5535=y
CONFIG_GPIO_AMD8111=m CONFIG_GPIO_AMD8111=m
# CONFIG_GPIO_LANGWELL is not set # CONFIG_GPIO_INTEL_MID is not set
# CONFIG_GPIO_PCH is not set # CONFIG_GPIO_PCH is not set
# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_ML_IOH is not set
# CONFIG_GPIO_SODAVILLE is not set # CONFIG_GPIO_SODAVILLE is not set
@ -3355,7 +3395,7 @@ CONFIG_GPIO_AMD8111=m
# #
# AC97 GPIO expanders: # AC97 GPIO expanders:
# #
CONFIG_GPIO_UCB1400=y CONFIG_GPIO_UCB1400=m
# #
# LPC GPIO expanders: # LPC GPIO expanders:
@ -3364,6 +3404,7 @@ CONFIG_GPIO_UCB1400=y
# #
# MODULbus GPIO expanders: # MODULbus GPIO expanders:
# #
# CONFIG_GPIO_BCM_KONA is not set
# #
# USB GPIO expanders: # USB GPIO expanders:
@ -3389,6 +3430,7 @@ CONFIG_BATTERY_OLPC=m
# CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_GPIO is not set
# CONFIG_CHARGER_BQ2415X is not set # CONFIG_CHARGER_BQ2415X is not set
# CONFIG_CHARGER_BQ24190 is not set # CONFIG_CHARGER_BQ24190 is not set
CONFIG_CHARGER_BQ24735=m
# CONFIG_CHARGER_SMB347 is not set # CONFIG_CHARGER_SMB347 is not set
CONFIG_POWER_RESET=y CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_GPIO=y CONFIG_POWER_RESET_GPIO=y
@ -4120,7 +4162,7 @@ CONFIG_VIDEO_UPD64031A=m
CONFIG_VIDEO_UPD64083=m CONFIG_VIDEO_UPD64083=m
# #
# Miscelaneous helper chips # Miscellaneous helper chips
# #
CONFIG_VIDEO_M52790=m CONFIG_VIDEO_M52790=m
@ -4196,6 +4238,7 @@ CONFIG_DVB_TUNER_CX24113=m
CONFIG_DVB_TDA826X=m CONFIG_DVB_TDA826X=m
CONFIG_DVB_TUA6100=m CONFIG_DVB_TUA6100=m
CONFIG_DVB_CX24116=m CONFIG_DVB_CX24116=m
CONFIG_DVB_CX24117=m
CONFIG_DVB_SI21XX=m CONFIG_DVB_SI21XX=m
CONFIG_DVB_TS2020=m CONFIG_DVB_TS2020=m
CONFIG_DVB_DS3000=m CONFIG_DVB_DS3000=m
@ -4307,6 +4350,7 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_DRM=m CONFIG_DRM=m
CONFIG_DRM_USB=m CONFIG_DRM_USB=m
CONFIG_DRM_KMS_HELPER=m CONFIG_DRM_KMS_HELPER=m
CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DRM_TTM=m CONFIG_DRM_TTM=m
@ -4326,6 +4370,7 @@ CONFIG_NOUVEAU_DEBUG_DEFAULT=3
CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_I915=m CONFIG_DRM_I915=m
CONFIG_DRM_I915_KMS=y CONFIG_DRM_I915_KMS=y
CONFIG_DRM_I915_FBDEV=y
# CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set # CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT is not set
CONFIG_DRM_MGA=m CONFIG_DRM_MGA=m
CONFIG_DRM_SIS=m CONFIG_DRM_SIS=m
@ -4444,7 +4489,7 @@ CONFIG_BACKLIGHT_APPLE=m
# CONFIG_BACKLIGHT_ADP8860 is not set # CONFIG_BACKLIGHT_ADP8860 is not set
# CONFIG_BACKLIGHT_ADP8870 is not set # CONFIG_BACKLIGHT_ADP8870 is not set
CONFIG_BACKLIGHT_PCF50633=m CONFIG_BACKLIGHT_PCF50633=m
# CONFIG_BACKLIGHT_LM3630 is not set CONFIG_BACKLIGHT_LM3630A=m
# CONFIG_BACKLIGHT_LM3639 is not set # CONFIG_BACKLIGHT_LM3639 is not set
# CONFIG_BACKLIGHT_LP855X is not set # CONFIG_BACKLIGHT_LP855X is not set
# CONFIG_BACKLIGHT_OT200 is not set # CONFIG_BACKLIGHT_OT200 is not set
@ -4663,6 +4708,7 @@ CONFIG_SND_USB_6FIRE=m
CONFIG_SND_USB_HIFACE=m CONFIG_SND_USB_HIFACE=m
CONFIG_SND_FIREWIRE=y CONFIG_SND_FIREWIRE=y
CONFIG_SND_FIREWIRE_LIB=m CONFIG_SND_FIREWIRE_LIB=m
CONFIG_SND_DICE=m
CONFIG_SND_FIREWIRE_SPEAKERS=m CONFIG_SND_FIREWIRE_SPEAKERS=m
CONFIG_SND_ISIGHT=m CONFIG_SND_ISIGHT=m
CONFIG_SND_SCS1X=m CONFIG_SND_SCS1X=m
@ -4740,6 +4786,7 @@ CONFIG_HID_ROCCAT=m
CONFIG_HID_SAITEK=m CONFIG_HID_SAITEK=m
CONFIG_HID_SAMSUNG=m CONFIG_HID_SAMSUNG=m
CONFIG_HID_SONY=m CONFIG_HID_SONY=m
CONFIG_SONY_FF=y
CONFIG_HID_SPEEDLINK=m CONFIG_HID_SPEEDLINK=m
CONFIG_HID_STEELSERIES=m CONFIG_HID_STEELSERIES=m
CONFIG_HID_SUNPLUS=m CONFIG_HID_SUNPLUS=m
@ -4972,7 +5019,6 @@ CONFIG_USB_XUSBATM=m
# #
CONFIG_USB_PHY=y CONFIG_USB_PHY=y
CONFIG_NOP_USB_XCEIV=m CONFIG_NOP_USB_XCEIV=m
# CONFIG_AM335X_PHY_USB is not set
CONFIG_SAMSUNG_USBPHY=m CONFIG_SAMSUNG_USBPHY=m
CONFIG_SAMSUNG_USB2PHY=m CONFIG_SAMSUNG_USB2PHY=m
CONFIG_SAMSUNG_USB3PHY=m CONFIG_SAMSUNG_USB3PHY=m
@ -5015,6 +5061,7 @@ CONFIG_USB_F_NCM=m
CONFIG_USB_F_ECM=m CONFIG_USB_F_ECM=m
CONFIG_USB_F_SUBSET=m CONFIG_USB_F_SUBSET=m
CONFIG_USB_F_RNDIS=m CONFIG_USB_F_RNDIS=m
CONFIG_USB_F_MASS_STORAGE=m
# CONFIG_USB_CONFIGFS is not set # CONFIG_USB_CONFIGFS is not set
# CONFIG_USB_ZERO is not set # CONFIG_USB_ZERO is not set
CONFIG_USB_AUDIO=m CONFIG_USB_AUDIO=m
@ -5114,6 +5161,7 @@ CONFIG_LEDS_LP5562=m
CONFIG_LEDS_CLEVO_MAIL=m CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m CONFIG_LEDS_PCA955X=m
# CONFIG_LEDS_PCA963X is not set # CONFIG_LEDS_PCA963X is not set
CONFIG_LEDS_PCA9685=m
# CONFIG_LEDS_DAC124S085 is not set # CONFIG_LEDS_DAC124S085 is not set
# CONFIG_LEDS_PWM is not set # CONFIG_LEDS_PWM is not set
CONFIG_LEDS_BD2802=m CONFIG_LEDS_BD2802=m
@ -5275,6 +5323,7 @@ CONFIG_DMA_OF=y
# #
CONFIG_ASYNC_TX_DMA=y CONFIG_ASYNC_TX_DMA=y
# CONFIG_DMATEST is not set # CONFIG_DMATEST is not set
CONFIG_DMA_ENGINE_RAID=y
CONFIG_DCA=m CONFIG_DCA=m
CONFIG_AUXDISPLAY=y CONFIG_AUXDISPLAY=y
CONFIG_KS0108=m CONFIG_KS0108=m
@ -5575,7 +5624,6 @@ CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m CONFIG_ACER_WMI=m
CONFIG_ACERHDF=m CONFIG_ACERHDF=m
CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_LAPTOP=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_DELL_LAPTOP=m CONFIG_DELL_LAPTOP=m
CONFIG_DELL_WMI=m CONFIG_DELL_WMI=m
CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_AIO=m
@ -5623,6 +5671,8 @@ CONFIG_APPLE_GMUX=m
CONFIG_INTEL_RST=y CONFIG_INTEL_RST=y
CONFIG_INTEL_SMARTCONNECT=y CONFIG_INTEL_SMARTCONNECT=y
CONFIG_PVPANIC=m CONFIG_PVPANIC=m
CONFIG_CHROME_PLATFORMS=y
CONFIG_CHROMEOS_LAPTOP=m
# #
# Hardware Spinlock drivers # Hardware Spinlock drivers
@ -5675,6 +5725,15 @@ CONFIG_FMC_TRIVIAL=m
CONFIG_FMC_WRITE_EEPROM=m CONFIG_FMC_WRITE_EEPROM=m
CONFIG_FMC_CHARDEV=m CONFIG_FMC_CHARDEV=m
#
# PHY Subsystem
#
CONFIG_GENERIC_PHY=m
CONFIG_PHY_EXYNOS_MIPI_VIDEO=m
CONFIG_PHY_EXYNOS_DP_VIDEO=m
CONFIG_POWERCAP=y
CONFIG_INTEL_RAPL=m
# #
# Firmware Drivers # Firmware Drivers
# #
@ -5693,6 +5752,7 @@ CONFIG_ISCSI_IBFT=m
# EFI (Extensible Firmware Interface) Support # EFI (Extensible Firmware Interface) Support
# #
# CONFIG_EFI_VARS is not set # CONFIG_EFI_VARS is not set
CONFIG_UEFI_CPER=y
# #
# File systems # File systems
@ -5838,6 +5898,11 @@ CONFIG_UBIFS_FS_ZLIB=y
CONFIG_LOGFS=m CONFIG_LOGFS=m
CONFIG_CRAMFS=m CONFIG_CRAMFS=m
CONFIG_SQUASHFS=m CONFIG_SQUASHFS=m
# CONFIG_SQUASHFS_FILE_CACHE is not set
CONFIG_SQUASHFS_FILE_DIRECT=y
# CONFIG_SQUASHFS_DECOMP_SINGLE is not set
# CONFIG_SQUASHFS_DECOMP_MULTI is not set
CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y
CONFIG_SQUASHFS_XATTR=y CONFIG_SQUASHFS_XATTR=y
CONFIG_SQUASHFS_ZLIB=y CONFIG_SQUASHFS_ZLIB=y
CONFIG_SQUASHFS_LZO=y CONFIG_SQUASHFS_LZO=y
@ -5867,6 +5932,7 @@ CONFIG_F2FS_STAT_FS=y
CONFIG_F2FS_FS_XATTR=y CONFIG_F2FS_FS_XATTR=y
CONFIG_F2FS_FS_POSIX_ACL=y CONFIG_F2FS_FS_POSIX_ACL=y
CONFIG_F2FS_FS_SECURITY=y CONFIG_F2FS_FS_SECURITY=y
CONFIG_F2FS_CHECK_FS=y
CONFIG_EFIVAR_FS=y CONFIG_EFIVAR_FS=y
CONFIG_ORE=m CONFIG_ORE=m
CONFIG_NETWORK_FILESYSTEMS=y CONFIG_NETWORK_FILESYSTEMS=y
@ -5882,6 +5948,7 @@ CONFIG_PNFS_FILE_LAYOUT=m
CONFIG_PNFS_BLOCK=m CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_OBJLAYOUT=m CONFIG_PNFS_OBJLAYOUT=m
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
CONFIG_NFS_V4_1_MIGRATION=y
CONFIG_NFS_V4_SECURITY_LABEL=y CONFIG_NFS_V4_SECURITY_LABEL=y
CONFIG_NFS_FSCACHE=y CONFIG_NFS_FSCACHE=y
# CONFIG_NFS_USE_LEGACY_DNS is not set # CONFIG_NFS_USE_LEGACY_DNS is not set
@ -6019,6 +6086,7 @@ CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
CONFIG_MAGIC_SYSRQ=y CONFIG_MAGIC_SYSRQ=y
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0
CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_KERNEL=y
# #
@ -6155,6 +6223,7 @@ CONFIG_LKDTM=m
# CONFIG_BACKTRACE_SELF_TEST is not set # CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_RBTREE_TEST is not set # CONFIG_RBTREE_TEST is not set
# CONFIG_INTERVAL_TREE_TEST is not set # CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_PERCPU_TEST=m
# CONFIG_ATOMIC64_SELFTEST is not set # CONFIG_ATOMIC64_SELFTEST is not set
CONFIG_ASYNC_RAID6_TEST=m CONFIG_ASYNC_RAID6_TEST=m
# CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_STRING_HELPERS is not set
@ -6169,6 +6238,7 @@ CONFIG_STRICT_DEVMEM=y
CONFIG_X86_VERBOSE_BOOTUP=y CONFIG_X86_VERBOSE_BOOTUP=y
CONFIG_EARLY_PRINTK=y CONFIG_EARLY_PRINTK=y
# CONFIG_EARLY_PRINTK_DBGP is not set # CONFIG_EARLY_PRINTK_DBGP is not set
CONFIG_EARLY_PRINTK_EFI=y
# CONFIG_X86_PTDUMP is not set # CONFIG_X86_PTDUMP is not set
CONFIG_DEBUG_RODATA=y CONFIG_DEBUG_RODATA=y
# CONFIG_DEBUG_RODATA_TEST is not set # CONFIG_DEBUG_RODATA_TEST is not set
@ -6198,6 +6268,8 @@ CONFIG_DEFAULT_IO_DELAY_TYPE=0
# Security options # Security options
# #
CONFIG_KEYS=y CONFIG_KEYS=y
CONFIG_PERSISTENT_KEYRINGS=y
CONFIG_BIG_KEYS=y
CONFIG_TRUSTED_KEYS=m CONFIG_TRUSTED_KEYS=m
CONFIG_ENCRYPTED_KEYS=m CONFIG_ENCRYPTED_KEYS=m
# CONFIG_KEYS_DEBUG_PROC_KEYS is not set # CONFIG_KEYS_DEBUG_PROC_KEYS is not set
@ -6208,8 +6280,16 @@ CONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set # CONFIG_SECURITY_NETWORK_XFRM is not set
CONFIG_SECURITY_PATH=y CONFIG_SECURITY_PATH=y
# CONFIG_INTEL_TXT is not set # CONFIG_INTEL_TXT is not set
# CONFIG_SECURITY_SELINUX is not set CONFIG_LSM_MMAP_MIN_ADDR=65536
# CONFIG_SECURITY_SMACK is not set CONFIG_SECURITY_SELINUX=y
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0
# CONFIG_SECURITY_SELINUX_DISABLE is not set
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_SECURITY_SELINUX_AVC_STATS=y
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set
CONFIG_SECURITY_SMACK=y
CONFIG_SECURITY_TOMOYO=y CONFIG_SECURITY_TOMOYO=y
CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
@ -6222,6 +6302,8 @@ CONFIG_SECURITY_APPARMOR_HASH=y
CONFIG_SECURITY_YAMA=y CONFIG_SECURITY_YAMA=y
CONFIG_SECURITY_YAMA_STACKED=y CONFIG_SECURITY_YAMA_STACKED=y
# CONFIG_IMA is not set # CONFIG_IMA is not set
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
# CONFIG_DEFAULT_SECURITY_SMACK is not set
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set # CONFIG_DEFAULT_SECURITY_TOMOYO is not set
# CONFIG_DEFAULT_SECURITY_APPARMOR is not set # CONFIG_DEFAULT_SECURITY_APPARMOR is not set
# CONFIG_DEFAULT_SECURITY_YAMA is not set # CONFIG_DEFAULT_SECURITY_YAMA is not set
@ -6261,7 +6343,7 @@ CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CRYPTO_CRYPTD=m CONFIG_CRYPTO_CRYPTD=m
CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_AUTHENC=m
CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_ABLK_HELPER_X86=m CONFIG_CRYPTO_ABLK_HELPER=m
CONFIG_CRYPTO_GLUE_HELPER_X86=m CONFIG_CRYPTO_GLUE_HELPER_X86=m
# #
@ -6355,6 +6437,7 @@ CONFIG_CRYPTO_ANSI_CPRNG=m
CONFIG_CRYPTO_USER_API=m CONFIG_CRYPTO_USER_API=m
CONFIG_CRYPTO_USER_API_HASH=m CONFIG_CRYPTO_USER_API_HASH=m
CONFIG_CRYPTO_USER_API_SKCIPHER=m CONFIG_CRYPTO_USER_API_SKCIPHER=m
CONFIG_CRYPTO_HASH_INFO=y
CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_DEV_PADLOCK=m CONFIG_CRYPTO_DEV_PADLOCK=m
CONFIG_CRYPTO_DEV_PADLOCK_AES=m CONFIG_CRYPTO_DEV_PADLOCK_AES=m
@ -6375,6 +6458,7 @@ CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y CONFIG_KVM_ASYNC_PF=y
CONFIG_HAVE_KVM_MSI=y CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
CONFIG_KVM_VFIO=y
CONFIG_VIRTUALIZATION=y CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m CONFIG_KVM=m
CONFIG_KVM_INTEL=m CONFIG_KVM_INTEL=m
@ -6411,6 +6495,7 @@ CONFIG_CRC7=m
CONFIG_LIBCRC32C=m CONFIG_LIBCRC32C=m
CONFIG_CRC8=m CONFIG_CRC8=m
CONFIG_AUDIT_GENERIC=y CONFIG_AUDIT_GENERIC=y
# CONFIG_RANDOM32_SELFTEST is not set
CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y CONFIG_LZO_COMPRESS=y
@ -6444,6 +6529,7 @@ CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m CONFIG_TEXTSEARCH_FSM=m
CONFIG_BTREE=y CONFIG_BTREE=y
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y CONFIG_HAS_DMA=y

View file

@ -1,6 +1,6 @@
# #
# Automatically generated file; DO NOT EDIT. # Automatically generated file; DO NOT EDIT.
# Linux/x86 3.12.8-1 Kernel Configuration # Linux/x86 3.13.1-2 Kernel Configuration
# #
CONFIG_64BIT=y CONFIG_64BIT=y
CONFIG_X86_64=y CONFIG_X86_64=y
@ -75,7 +75,6 @@ CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y CONFIG_AUDITSYSCALL=y
CONFIG_AUDIT_WATCH=y CONFIG_AUDIT_WATCH=y
CONFIG_AUDIT_TREE=y CONFIG_AUDIT_TREE=y
CONFIG_AUDIT_LOGINUID_IMMUTABLE=y
# #
# IRQ subsystem # IRQ subsystem
@ -142,6 +141,7 @@ CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=19 CONFIG_LOG_BUF_SHIFT=19
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
CONFIG_ARCH_SUPPORTS_INT128=y
CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y
CONFIG_ARCH_USES_NUMA_PROT_NONE=y CONFIG_ARCH_USES_NUMA_PROT_NONE=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@ -246,7 +246,6 @@ CONFIG_HAVE_OPTPROBES=y
CONFIG_HAVE_KPROBES_ON_FTRACE=y CONFIG_HAVE_KPROBES_ON_FTRACE=y
CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y CONFIG_HAVE_DMA_ATTRS=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_DMA_API_DEBUG=y CONFIG_HAVE_DMA_API_DEBUG=y
@ -266,10 +265,12 @@ CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_CONTEXT_TRACKING=y CONFIG_HAVE_CONTEXT_TRACKING=y
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
CONFIG_HAVE_ARCH_SOFT_DIRTY=y CONFIG_HAVE_ARCH_SOFT_DIRTY=y
CONFIG_MODULES_USE_ELF_RELA=y CONFIG_MODULES_USE_ELF_RELA=y
CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
CONFIG_OLD_SIGSUSPEND3=y CONFIG_OLD_SIGSUSPEND3=y
CONFIG_COMPAT_OLD_SIGACTION=y CONFIG_COMPAT_OLD_SIGACTION=y
@ -281,6 +282,7 @@ CONFIG_COMPAT_OLD_SIGACTION=y
CONFIG_SLABINFO=y CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0 CONFIG_BASE_SMALL=0
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
CONFIG_MODULES=y CONFIG_MODULES=y
CONFIG_MODULE_FORCE_LOAD=y CONFIG_MODULE_FORCE_LOAD=y
CONFIG_MODULE_UNLOAD=y CONFIG_MODULE_UNLOAD=y
@ -434,6 +436,7 @@ CONFIG_MEMORY_ISOLATION=y
# CONFIG_MEMORY_HOTPLUG is not set # CONFIG_MEMORY_HOTPLUG is not set
CONFIG_PAGEFLAGS_EXTENDED=y CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
CONFIG_BALLOON_COMPACTION=y CONFIG_BALLOON_COMPACTION=y
CONFIG_COMPACTION=y CONFIG_COMPACTION=y
CONFIG_MIGRATION=y CONFIG_MIGRATION=y
@ -500,7 +503,6 @@ CONFIG_PM=y
# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set # CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
CONFIG_ACPI=y CONFIG_ACPI=y
# CONFIG_ACPI_PROCFS is not set # CONFIG_ACPI_PROCFS is not set
# CONFIG_ACPI_PROCFS_POWER is not set
# CONFIG_ACPI_EC_DEBUGFS is not set # CONFIG_ACPI_EC_DEBUGFS is not set
# CONFIG_ACPI_AC is not set # CONFIG_ACPI_AC is not set
# CONFIG_ACPI_BATTERY is not set # CONFIG_ACPI_BATTERY is not set
@ -515,7 +517,6 @@ CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_NUMA=y CONFIG_ACPI_NUMA=y
# CONFIG_ACPI_CUSTOM_DSDT is not set # CONFIG_ACPI_CUSTOM_DSDT is not set
CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y CONFIG_ACPI_INITRD_TABLE_OVERRIDE=y
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_PCI_SLOT=y CONFIG_ACPI_PCI_SLOT=y
CONFIG_X86_PM_TIMER=y CONFIG_X86_PM_TIMER=y
@ -530,13 +531,13 @@ CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=m CONFIG_ACPI_APEI_EINJ=m
CONFIG_ACPI_APEI_ERST_DEBUG=m CONFIG_ACPI_APEI_ERST_DEBUG=m
CONFIG_ACPI_EXTLOG=m
CONFIG_SFI=y CONFIG_SFI=y
# #
# CPU Frequency scaling # CPU Frequency scaling
# #
CONFIG_CPU_FREQ=y CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_GOV_COMMON=y CONFIG_CPU_FREQ_GOV_COMMON=y
CONFIG_CPU_FREQ_STAT=m CONFIG_CPU_FREQ_STAT=m
CONFIG_CPU_FREQ_STAT_DETAILS=y CONFIG_CPU_FREQ_STAT_DETAILS=y
@ -723,7 +724,6 @@ CONFIG_DEFAULT_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic" CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set # CONFIG_TCP_MD5SIG is not set
CONFIG_IPV6=y CONFIG_IPV6=y
CONFIG_IPV6_PRIVACY=y
CONFIG_IPV6_ROUTER_PREF=y CONFIG_IPV6_ROUTER_PREF=y
CONFIG_IPV6_ROUTE_INFO=y CONFIG_IPV6_ROUTE_INFO=y
CONFIG_IPV6_OPTIMISTIC_DAD=y CONFIG_IPV6_OPTIMISTIC_DAD=y
@ -737,6 +737,7 @@ CONFIG_INET6_XFRM_MODE_TRANSPORT=m
CONFIG_INET6_XFRM_MODE_TUNNEL=m CONFIG_INET6_XFRM_MODE_TUNNEL=m
CONFIG_INET6_XFRM_MODE_BEET=m CONFIG_INET6_XFRM_MODE_BEET=m
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
CONFIG_IPV6_VTI=m
CONFIG_IPV6_SIT=m CONFIG_IPV6_SIT=m
CONFIG_IPV6_SIT_6RD=y CONFIG_IPV6_SIT_6RD=y
CONFIG_IPV6_NDISC_NODETYPE=y CONFIG_IPV6_NDISC_NODETYPE=y
@ -799,6 +800,17 @@ CONFIG_NF_NAT_IRC=m
CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_SIP=m
CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_TFTP=m
CONFIG_NETFILTER_SYNPROXY=m CONFIG_NETFILTER_SYNPROXY=m
CONFIG_NF_TABLES=m
CONFIG_NFT_EXTHDR=m
CONFIG_NFT_META=m
CONFIG_NFT_CT=m
CONFIG_NFT_RBTREE=m
CONFIG_NFT_HASH=m
CONFIG_NFT_COUNTER=m
CONFIG_NFT_LOG=m
CONFIG_NFT_LIMIT=m
CONFIG_NFT_NAT=m
CONFIG_NFT_COMPAT=m
CONFIG_NETFILTER_XTABLES=m CONFIG_NETFILTER_XTABLES=m
# #
@ -892,7 +904,9 @@ CONFIG_IP_SET_HASH_IP=m
CONFIG_IP_SET_HASH_IPPORT=m CONFIG_IP_SET_HASH_IPPORT=m
CONFIG_IP_SET_HASH_IPPORTIP=m CONFIG_IP_SET_HASH_IPPORTIP=m
CONFIG_IP_SET_HASH_IPPORTNET=m CONFIG_IP_SET_HASH_IPPORTNET=m
CONFIG_IP_SET_HASH_NETPORTNET=m
CONFIG_IP_SET_HASH_NET=m CONFIG_IP_SET_HASH_NET=m
CONFIG_IP_SET_HASH_NETNET=m
CONFIG_IP_SET_HASH_NETPORT=m CONFIG_IP_SET_HASH_NETPORT=m
CONFIG_IP_SET_HASH_NETIFACE=m CONFIG_IP_SET_HASH_NETIFACE=m
CONFIG_IP_SET_LIST_SET=m CONFIG_IP_SET_LIST_SET=m
@ -943,6 +957,11 @@ CONFIG_IP_VS_PE_SIP=m
CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_DEFRAG_IPV4=m
CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m
# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set # CONFIG_NF_CONNTRACK_PROC_COMPAT is not set
CONFIG_NF_TABLES_IPV4=m
CONFIG_NFT_REJECT_IPV4=m
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
CONFIG_NFT_CHAIN_NAT_IPV4=m
CONFIG_NF_TABLES_ARP=m
CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_AH=m CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_ECN=m CONFIG_IP_NF_MATCH_ECN=m
@ -975,6 +994,9 @@ CONFIG_IP_NF_ARP_MANGLE=m
# #
CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_DEFRAG_IPV6=m
CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m
CONFIG_NF_TABLES_IPV6=m
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
CONFIG_NFT_CHAIN_NAT_IPV6=m
CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_AH=m
CONFIG_IP6_NF_MATCH_EUI64=m CONFIG_IP6_NF_MATCH_EUI64=m
@ -995,6 +1017,7 @@ CONFIG_IP6_NF_SECURITY=m
CONFIG_NF_NAT_IPV6=m CONFIG_NF_NAT_IPV6=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_MASQUERADE=m
CONFIG_IP6_NF_TARGET_NPT=m CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_NF_TABLES_BRIDGE=m
CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_NF_EBTABLES=m
CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_BROUTE=m
CONFIG_BRIDGE_EBT_T_FILTER=m CONFIG_BRIDGE_EBT_T_FILTER=m
@ -1127,6 +1150,7 @@ CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_FLOW=m CONFIG_NET_CLS_FLOW=m
CONFIG_NET_CLS_CGROUP=y CONFIG_NET_CLS_CGROUP=y
CONFIG_NET_CLS_BPF=m
# CONFIG_NET_EMATCH is not set # CONFIG_NET_EMATCH is not set
CONFIG_NET_CLS_ACT=y CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_POLICE=m CONFIG_NET_ACT_POLICE=m
@ -1156,6 +1180,7 @@ CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_NETLINK_MMAP=y CONFIG_NETLINK_MMAP=y
CONFIG_NETLINK_DIAG=m CONFIG_NETLINK_DIAG=m
CONFIG_NET_MPLS_GSO=m CONFIG_NET_MPLS_GSO=m
CONFIG_HSR=m
CONFIG_RPS=y CONFIG_RPS=y
CONFIG_RFS_ACCEL=y CONFIG_RFS_ACCEL=y
CONFIG_XPS=y CONFIG_XPS=y
@ -1182,6 +1207,7 @@ CONFIG_FIB_RULES=y
CONFIG_RFKILL=m CONFIG_RFKILL=m
CONFIG_RFKILL_LEDS=y CONFIG_RFKILL_LEDS=y
CONFIG_RFKILL_INPUT=y CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_GPIO=m
# CONFIG_NET_9P is not set # CONFIG_NET_9P is not set
# CONFIG_CAIF is not set # CONFIG_CAIF is not set
CONFIG_CEPH_LIB=m CONFIG_CEPH_LIB=m
@ -1329,6 +1355,7 @@ CONFIG_MTD_UBI_BEB_LIMIT=20
# CONFIG_MTD_UBI_FASTMAP is not set # CONFIG_MTD_UBI_FASTMAP is not set
# CONFIG_MTD_UBI_GLUEBI is not set # CONFIG_MTD_UBI_GLUEBI is not set
CONFIG_PARPORT=m CONFIG_PARPORT=m
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
CONFIG_PARPORT_PC=m CONFIG_PARPORT_PC=m
CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_SERIAL=m
# CONFIG_PARPORT_PC_FIFO is not set # CONFIG_PARPORT_PC_FIFO is not set
@ -1345,10 +1372,10 @@ CONFIG_PNP=y
# #
CONFIG_PNPACPI=y CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_NULL_BLK is not set
# CONFIG_BLK_DEV_FD is not set # CONFIG_BLK_DEV_FD is not set
# CONFIG_PARIDE is not set # CONFIG_PARIDE is not set
CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
CONFIG_BLK_CPQ_DA=m
CONFIG_BLK_CPQ_CISS_DA=m CONFIG_BLK_CPQ_CISS_DA=m
# CONFIG_CISS_SCSI_TAPE is not set # CONFIG_CISS_SCSI_TAPE is not set
CONFIG_BLK_DEV_DAC960=m CONFIG_BLK_DEV_DAC960=m
@ -1361,6 +1388,7 @@ CONFIG_BLK_DEV_DRBD=m
# CONFIG_DRBD_FAULT_INJECTION is not set # CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_BLK_DEV_NBD=m CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_NVME=m CONFIG_BLK_DEV_NVME=m
CONFIG_BLK_DEV_SKD=m
CONFIG_BLK_DEV_OSD=m CONFIG_BLK_DEV_OSD=m
CONFIG_BLK_DEV_SX8=m CONFIG_BLK_DEV_SX8=m
CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM=m
@ -1442,6 +1470,16 @@ CONFIG_ALTERA_STAPL=m
CONFIG_INTEL_MEI=m CONFIG_INTEL_MEI=m
CONFIG_INTEL_MEI_ME=m CONFIG_INTEL_MEI_ME=m
CONFIG_VMWARE_VMCI=m CONFIG_VMWARE_VMCI=m
#
# Intel MIC Host Driver
#
CONFIG_INTEL_MIC_HOST=m
#
# Intel MIC Card Driver
#
CONFIG_INTEL_MIC_CARD=m
CONFIG_HAVE_IDE=y CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set # CONFIG_IDE is not set
@ -1702,7 +1740,6 @@ CONFIG_MD_MULTIPATH=m
CONFIG_MD_FAULTY=m CONFIG_MD_FAULTY=m
CONFIG_BCACHE=m CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set # CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_EDEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set # CONFIG_BCACHE_CLOSURES_DEBUG is not set
CONFIG_BLK_DEV_DM=m CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set # CONFIG_DM_DEBUG is not set
@ -1717,8 +1754,8 @@ CONFIG_DM_CACHE=m
CONFIG_DM_CACHE_MQ=m CONFIG_DM_CACHE_MQ=m
CONFIG_DM_CACHE_CLEANER=m CONFIG_DM_CACHE_CLEANER=m
CONFIG_DM_MIRROR=m CONFIG_DM_MIRROR=m
CONFIG_DM_RAID=m
CONFIG_DM_LOG_USERSPACE=m CONFIG_DM_LOG_USERSPACE=m
CONFIG_DM_RAID=m
CONFIG_DM_ZERO=m CONFIG_DM_ZERO=m
CONFIG_DM_MULTIPATH=m CONFIG_DM_MULTIPATH=m
CONFIG_DM_MULTIPATH_QL=m CONFIG_DM_MULTIPATH_QL=m
@ -2181,7 +2218,6 @@ CONFIG_SERIAL_ARC_NR_PORTS=1
CONFIG_SERIAL_RP2=m CONFIG_SERIAL_RP2=m
CONFIG_SERIAL_RP2_NR_UARTS=32 CONFIG_SERIAL_RP2_NR_UARTS=32
CONFIG_SERIAL_FSL_LPUART=m CONFIG_SERIAL_FSL_LPUART=m
CONFIG_SERIAL_ST_ASC=m
CONFIG_PRINTER=m CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set # CONFIG_LP_CONSOLE is not set
CONFIG_PPDEV=m CONFIG_PPDEV=m
@ -2207,10 +2243,13 @@ CONFIG_MWAVE=m
# CONFIG_RAW_DRIVER is not set # CONFIG_RAW_DRIVER is not set
CONFIG_HPET=y CONFIG_HPET=y
CONFIG_HPET_MMAP=y CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y
CONFIG_HANGCHECK_TIMER=m CONFIG_HANGCHECK_TIMER=m
CONFIG_TCG_TPM=m CONFIG_TCG_TPM=m
CONFIG_TCG_TIS=m CONFIG_TCG_TIS=m
CONFIG_TCG_TIS_I2C_ATMEL=m
CONFIG_TCG_TIS_I2C_INFINEON=m CONFIG_TCG_TIS_I2C_INFINEON=m
CONFIG_TCG_TIS_I2C_NUVOTON=m
CONFIG_TCG_NSC=m CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m CONFIG_TCG_ATMEL=m
CONFIG_TCG_INFINEON=m CONFIG_TCG_INFINEON=m
@ -2300,7 +2339,6 @@ CONFIG_SPI_MASTER=y
# CONFIG_SPI_BUTTERFLY is not set # CONFIG_SPI_BUTTERFLY is not set
# CONFIG_SPI_GPIO is not set # CONFIG_SPI_GPIO is not set
# CONFIG_SPI_LM70_LLP is not set # CONFIG_SPI_LM70_LLP is not set
# CONFIG_SPI_FSL_DSPI is not set
# CONFIG_SPI_OC_TINY is not set # CONFIG_SPI_OC_TINY is not set
CONFIG_SPI_PXA2XX_DMA=y CONFIG_SPI_PXA2XX_DMA=y
CONFIG_SPI_PXA2XX=m CONFIG_SPI_PXA2XX=m
@ -2343,8 +2381,8 @@ CONFIG_PTP_1588_CLOCK=m
CONFIG_DP83640_PHY=m CONFIG_DP83640_PHY=m
CONFIG_PTP_1588_CLOCK_PCH=m CONFIG_PTP_1588_CLOCK_PCH=m
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
CONFIG_GPIO_DEVRES=y
CONFIG_GPIOLIB=y CONFIG_GPIOLIB=y
CONFIG_GPIO_DEVRES=y
CONFIG_GPIO_ACPI=y CONFIG_GPIO_ACPI=y
# CONFIG_DEBUG_GPIO is not set # CONFIG_DEBUG_GPIO is not set
CONFIG_GPIO_SYSFS=y CONFIG_GPIO_SYSFS=y
@ -2376,7 +2414,7 @@ CONFIG_GPIO_ARIZONA=m
# #
CONFIG_GPIO_CS5535=m CONFIG_GPIO_CS5535=m
CONFIG_GPIO_AMD8111=m CONFIG_GPIO_AMD8111=m
CONFIG_GPIO_LANGWELL=y # CONFIG_GPIO_INTEL_MID is not set
# CONFIG_GPIO_PCH is not set # CONFIG_GPIO_PCH is not set
# CONFIG_GPIO_ML_IOH is not set # CONFIG_GPIO_ML_IOH is not set
# CONFIG_GPIO_RDC321X is not set # CONFIG_GPIO_RDC321X is not set
@ -2392,7 +2430,7 @@ CONFIG_GPIO_LANGWELL=y
# #
# AC97 GPIO expanders: # AC97 GPIO expanders:
# #
CONFIG_GPIO_UCB1400=y CONFIG_GPIO_UCB1400=m
# #
# LPC GPIO expanders: # LPC GPIO expanders:
@ -2425,6 +2463,7 @@ CONFIG_TEST_POWER=m
# CONFIG_CHARGER_GPIO is not set # CONFIG_CHARGER_GPIO is not set
# CONFIG_CHARGER_BQ2415X is not set # CONFIG_CHARGER_BQ2415X is not set
# CONFIG_CHARGER_BQ24190 is not set # CONFIG_CHARGER_BQ24190 is not set
CONFIG_CHARGER_BQ24735=m
# CONFIG_CHARGER_SMB347 is not set # CONFIG_CHARGER_SMB347 is not set
CONFIG_POWER_RESET=y CONFIG_POWER_RESET=y
CONFIG_POWER_AVS=y CONFIG_POWER_AVS=y
@ -3142,7 +3181,7 @@ CONFIG_VIDEO_UPD64031A=m
CONFIG_VIDEO_UPD64083=m CONFIG_VIDEO_UPD64083=m
# #
# Miscelaneous helper chips # Miscellaneous helper chips
# #
CONFIG_VIDEO_M52790=m CONFIG_VIDEO_M52790=m
@ -3218,6 +3257,7 @@ CONFIG_DVB_TUNER_CX24113=m
CONFIG_DVB_TDA826X=m CONFIG_DVB_TDA826X=m
CONFIG_DVB_TUA6100=m CONFIG_DVB_TUA6100=m
CONFIG_DVB_CX24116=m CONFIG_DVB_CX24116=m
CONFIG_DVB_CX24117=m
CONFIG_DVB_SI21XX=m CONFIG_DVB_SI21XX=m
CONFIG_DVB_TS2020=m CONFIG_DVB_TS2020=m
CONFIG_DVB_DS3000=m CONFIG_DVB_DS3000=m
@ -3322,6 +3362,7 @@ CONFIG_VGA_ARB_MAX_GPUS=16
# CONFIG_VGA_SWITCHEROO is not set # CONFIG_VGA_SWITCHEROO is not set
CONFIG_DRM=m CONFIG_DRM=m
CONFIG_DRM_KMS_HELPER=m CONFIG_DRM_KMS_HELPER=m
CONFIG_DRM_KMS_FB_HELPER=y
CONFIG_DRM_LOAD_EDID_FIRMWARE=y CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DRM_TTM=m CONFIG_DRM_TTM=m
@ -3447,7 +3488,7 @@ CONFIG_BACKLIGHT_APPLE=m
# CONFIG_BACKLIGHT_ADP8860 is not set # CONFIG_BACKLIGHT_ADP8860 is not set
# CONFIG_BACKLIGHT_ADP8870 is not set # CONFIG_BACKLIGHT_ADP8870 is not set
CONFIG_BACKLIGHT_PCF50633=m CONFIG_BACKLIGHT_PCF50633=m
# CONFIG_BACKLIGHT_LM3630 is not set CONFIG_BACKLIGHT_LM3630A=m
# CONFIG_BACKLIGHT_LM3639 is not set # CONFIG_BACKLIGHT_LM3639 is not set
# CONFIG_BACKLIGHT_LP855X is not set # CONFIG_BACKLIGHT_LP855X is not set
# CONFIG_BACKLIGHT_OT200 is not set # CONFIG_BACKLIGHT_OT200 is not set
@ -3625,6 +3666,7 @@ CONFIG_SND_USB_6FIRE=m
CONFIG_SND_USB_HIFACE=m CONFIG_SND_USB_HIFACE=m
CONFIG_SND_FIREWIRE=y CONFIG_SND_FIREWIRE=y
CONFIG_SND_FIREWIRE_LIB=m CONFIG_SND_FIREWIRE_LIB=m
CONFIG_SND_DICE=m
CONFIG_SND_FIREWIRE_SPEAKERS=m CONFIG_SND_FIREWIRE_SPEAKERS=m
CONFIG_SND_ISIGHT=m CONFIG_SND_ISIGHT=m
CONFIG_SND_SCS1X=m CONFIG_SND_SCS1X=m
@ -3699,6 +3741,7 @@ CONFIG_HID_ROCCAT=m
CONFIG_HID_SAITEK=m CONFIG_HID_SAITEK=m
CONFIG_HID_SAMSUNG=m CONFIG_HID_SAMSUNG=m
CONFIG_HID_SONY=m CONFIG_HID_SONY=m
CONFIG_SONY_FF=y
CONFIG_HID_SPEEDLINK=m CONFIG_HID_SPEEDLINK=m
CONFIG_HID_STEELSERIES=m CONFIG_HID_STEELSERIES=m
CONFIG_HID_SUNPLUS=m CONFIG_HID_SUNPLUS=m
@ -3939,7 +3982,6 @@ CONFIG_USB_XUSBATM=m
# #
CONFIG_USB_PHY=y CONFIG_USB_PHY=y
CONFIG_NOP_USB_XCEIV=m CONFIG_NOP_USB_XCEIV=m
# CONFIG_AM335X_PHY_USB is not set
CONFIG_SAMSUNG_USBPHY=m CONFIG_SAMSUNG_USBPHY=m
CONFIG_SAMSUNG_USB2PHY=m CONFIG_SAMSUNG_USB2PHY=m
CONFIG_SAMSUNG_USB3PHY=m CONFIG_SAMSUNG_USB3PHY=m
@ -3981,6 +4023,7 @@ CONFIG_USB_F_NCM=m
CONFIG_USB_F_ECM=m CONFIG_USB_F_ECM=m
CONFIG_USB_F_SUBSET=m CONFIG_USB_F_SUBSET=m
CONFIG_USB_F_RNDIS=m CONFIG_USB_F_RNDIS=m
CONFIG_USB_F_MASS_STORAGE=m
# CONFIG_USB_CONFIGFS is not set # CONFIG_USB_CONFIGFS is not set
# CONFIG_USB_ZERO is not set # CONFIG_USB_ZERO is not set
CONFIG_USB_AUDIO=m CONFIG_USB_AUDIO=m
@ -4080,6 +4123,7 @@ CONFIG_LEDS_LP5562=m
CONFIG_LEDS_CLEVO_MAIL=m CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m CONFIG_LEDS_PCA955X=m
# CONFIG_LEDS_PCA963X is not set # CONFIG_LEDS_PCA963X is not set
CONFIG_LEDS_PCA9685=m
# CONFIG_LEDS_DAC124S085 is not set # CONFIG_LEDS_DAC124S085 is not set
CONFIG_LEDS_BD2802=m CONFIG_LEDS_BD2802=m
CONFIG_LEDS_INTEL_SS4200=m CONFIG_LEDS_INTEL_SS4200=m
@ -4232,6 +4276,7 @@ CONFIG_DMA_ACPI=y
# #
CONFIG_ASYNC_TX_DMA=y CONFIG_ASYNC_TX_DMA=y
# CONFIG_DMATEST is not set # CONFIG_DMATEST is not set
CONFIG_DMA_ENGINE_RAID=y
CONFIG_DCA=m CONFIG_DCA=m
CONFIG_AUXDISPLAY=y CONFIG_AUXDISPLAY=y
CONFIG_KS0108=m CONFIG_KS0108=m
@ -4380,15 +4425,11 @@ CONFIG_FT1000_USB=m
# #
CONFIG_SPEAKUP=m CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_ACNTPC=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_DECPC=m
CONFIG_SPEAKUP_SYNTH_DTLK=m
CONFIG_SPEAKUP_SYNTH_KEYPC=m
CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m
@ -4453,7 +4494,6 @@ CONFIG_X86_PLATFORM_DEVICES=y
CONFIG_ACER_WMI=m CONFIG_ACER_WMI=m
CONFIG_ACERHDF=m CONFIG_ACERHDF=m
CONFIG_ASUS_LAPTOP=m CONFIG_ASUS_LAPTOP=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_DELL_LAPTOP=m CONFIG_DELL_LAPTOP=m
CONFIG_DELL_WMI=m CONFIG_DELL_WMI=m
CONFIG_DELL_WMI_AIO=m CONFIG_DELL_WMI_AIO=m
@ -4495,6 +4535,7 @@ CONFIG_APPLE_GMUX=m
CONFIG_INTEL_RST=m CONFIG_INTEL_RST=m
CONFIG_INTEL_SMARTCONNECT=y CONFIG_INTEL_SMARTCONNECT=y
CONFIG_PVPANIC=m CONFIG_PVPANIC=m
# CONFIG_CHROME_PLATFORMS is not set
# #
# Hardware Spinlock drivers # Hardware Spinlock drivers
@ -4545,6 +4586,14 @@ CONFIG_FMC_TRIVIAL=m
CONFIG_FMC_WRITE_EEPROM=m CONFIG_FMC_WRITE_EEPROM=m
CONFIG_FMC_CHARDEV=m CONFIG_FMC_CHARDEV=m
#
# PHY Subsystem
#
CONFIG_GENERIC_PHY=m
CONFIG_PHY_EXYNOS_MIPI_VIDEO=m
CONFIG_POWERCAP=y
CONFIG_INTEL_RAPL=m
# #
# Firmware Drivers # Firmware Drivers
# #
@ -4563,6 +4612,7 @@ CONFIG_ISCSI_IBFT=m
# EFI (Extensible Firmware Interface) Support # EFI (Extensible Firmware Interface) Support
# #
# CONFIG_EFI_VARS is not set # CONFIG_EFI_VARS is not set
CONFIG_UEFI_CPER=y
# #
# File systems # File systems
@ -4710,10 +4760,11 @@ CONFIG_NFS_V4=y
# CONFIG_NFS_SWAP is not set # CONFIG_NFS_SWAP is not set
CONFIG_NFS_V4_1=y CONFIG_NFS_V4_1=y
CONFIG_NFS_V4_2=y CONFIG_NFS_V4_2=y
CONFIG_PNFS_FILE_LAYOUT=m CONFIG_PNFS_FILE_LAYOUT=y
CONFIG_PNFS_BLOCK=m CONFIG_PNFS_BLOCK=m
CONFIG_PNFS_OBJLAYOUT=m CONFIG_PNFS_OBJLAYOUT=m
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
CONFIG_NFS_V4_1_MIGRATION=y
CONFIG_NFS_V4_SECURITY_LABEL=y CONFIG_NFS_V4_SECURITY_LABEL=y
# CONFIG_NFS_USE_LEGACY_DNS is not set # CONFIG_NFS_USE_LEGACY_DNS is not set
CONFIG_NFS_USE_KERNEL_DNS=y CONFIG_NFS_USE_KERNEL_DNS=y
@ -4828,6 +4879,7 @@ CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
CONFIG_MAGIC_SYSRQ=y CONFIG_MAGIC_SYSRQ=y
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x0
CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_KERNEL=y
# #
@ -4964,6 +5016,7 @@ CONFIG_LKDTM=m
# CONFIG_BACKTRACE_SELF_TEST is not set # CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_RBTREE_TEST is not set # CONFIG_RBTREE_TEST is not set
# CONFIG_INTERVAL_TREE_TEST is not set # CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_PERCPU_TEST=m
# CONFIG_ATOMIC64_SELFTEST is not set # CONFIG_ATOMIC64_SELFTEST is not set
CONFIG_ASYNC_RAID6_TEST=m CONFIG_ASYNC_RAID6_TEST=m
# CONFIG_TEST_STRING_HELPERS is not set # CONFIG_TEST_STRING_HELPERS is not set
@ -4978,6 +5031,7 @@ CONFIG_STRICT_DEVMEM=y
CONFIG_X86_VERBOSE_BOOTUP=y CONFIG_X86_VERBOSE_BOOTUP=y
CONFIG_EARLY_PRINTK=y CONFIG_EARLY_PRINTK=y
# CONFIG_EARLY_PRINTK_DBGP is not set # CONFIG_EARLY_PRINTK_DBGP is not set
CONFIG_EARLY_PRINTK_EFI=y
# CONFIG_X86_PTDUMP is not set # CONFIG_X86_PTDUMP is not set
CONFIG_DEBUG_RODATA=y CONFIG_DEBUG_RODATA=y
# CONFIG_DEBUG_RODATA_TEST is not set # CONFIG_DEBUG_RODATA_TEST is not set
@ -5008,6 +5062,8 @@ CONFIG_DEFAULT_IO_DELAY_TYPE=0
# Security options # Security options
# #
CONFIG_KEYS=y CONFIG_KEYS=y
CONFIG_PERSISTENT_KEYRINGS=y
CONFIG_BIG_KEYS=y
CONFIG_TRUSTED_KEYS=m CONFIG_TRUSTED_KEYS=m
CONFIG_ENCRYPTED_KEYS=m CONFIG_ENCRYPTED_KEYS=m
# CONFIG_KEYS_DEBUG_PROC_KEYS is not set # CONFIG_KEYS_DEBUG_PROC_KEYS is not set
@ -5071,7 +5127,7 @@ CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CRYPTO_CRYPTD=m CONFIG_CRYPTO_CRYPTD=m
CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_AUTHENC=m
CONFIG_CRYPTO_TEST=m CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_ABLK_HELPER_X86=m CONFIG_CRYPTO_ABLK_HELPER=m
CONFIG_CRYPTO_GLUE_HELPER_X86=m CONFIG_CRYPTO_GLUE_HELPER_X86=m
# #
@ -5180,6 +5236,7 @@ CONFIG_CRYPTO_ANSI_CPRNG=m
CONFIG_CRYPTO_USER_API=m CONFIG_CRYPTO_USER_API=m
CONFIG_CRYPTO_USER_API_HASH=m CONFIG_CRYPTO_USER_API_HASH=m
CONFIG_CRYPTO_USER_API_SKCIPHER=m CONFIG_CRYPTO_USER_API_SKCIPHER=m
CONFIG_CRYPTO_HASH_INFO=y
CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_DEV_PADLOCK=m CONFIG_CRYPTO_DEV_PADLOCK=m
CONFIG_CRYPTO_DEV_PADLOCK_AES=m CONFIG_CRYPTO_DEV_PADLOCK_AES=m
@ -5197,6 +5254,7 @@ CONFIG_KVM_MMIO=y
CONFIG_KVM_ASYNC_PF=y CONFIG_KVM_ASYNC_PF=y
CONFIG_HAVE_KVM_MSI=y CONFIG_HAVE_KVM_MSI=y
CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y
CONFIG_KVM_VFIO=y
CONFIG_VIRTUALIZATION=y CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m CONFIG_KVM=m
CONFIG_KVM_INTEL=m CONFIG_KVM_INTEL=m
@ -5219,7 +5277,6 @@ CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_IO=y CONFIG_GENERIC_IO=y
CONFIG_PERCPU_RWSEM=y CONFIG_PERCPU_RWSEM=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
CONFIG_CMPXCHG_LOCKREF=y
CONFIG_CRC_CCITT=m CONFIG_CRC_CCITT=m
CONFIG_CRC16=y CONFIG_CRC16=y
CONFIG_CRC_T10DIF=m CONFIG_CRC_T10DIF=m
@ -5233,6 +5290,7 @@ CONFIG_CRC32_SLICEBY8=y
CONFIG_CRC7=m CONFIG_CRC7=m
CONFIG_LIBCRC32C=m CONFIG_LIBCRC32C=m
CONFIG_CRC8=m CONFIG_CRC8=m
# CONFIG_RANDOM32_SELFTEST is not set
CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y CONFIG_LZO_COMPRESS=y
@ -5266,6 +5324,7 @@ CONFIG_TEXTSEARCH_KMP=m
CONFIG_TEXTSEARCH_BM=m CONFIG_TEXTSEARCH_BM=m
CONFIG_TEXTSEARCH_FSM=m CONFIG_TEXTSEARCH_FSM=m
CONFIG_BTREE=y CONFIG_BTREE=y
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y CONFIG_HAS_DMA=y

View file

@ -1,8 +1,8 @@
diff --git a/init/Kconfig b/init/Kconfig diff --git a/init/Kconfig b/init/Kconfig
index be8b7f5..7461760 100644 index 4e5d96a..4b94ffe 100644
--- a/init/Kconfig --- a/init/Kconfig
+++ b/init/Kconfig +++ b/init/Kconfig
@@ -989,7 +989,7 @@ config DEBUG_BLK_CGROUP @@ -1078,7 +1078,7 @@ config DEBUG_BLK_CGROUP
endif # CGROUPS endif # CGROUPS
config CHECKPOINT_RESTORE config CHECKPOINT_RESTORE
@ -11,12 +11,3 @@ index be8b7f5..7461760 100644
default n default n
help help
Enables additional kernel features in a sake of checkpoint/restore. Enables additional kernel features in a sake of checkpoint/restore.
@@ -1000,7 +1000,7 @@ config CHECKPOINT_RESTORE
If unsure, say N here.
menuconfig NAMESPACES
- bool "Namespaces support" if EXPERT
+ bool "Namespaces support"
default !EXPERT
help
Provides the way to make tasks work with different objects using

View file

@ -0,0 +1,113 @@
commit 5a420e61e39862c7c3356080eddb23dfe4ccadb7
Author: Tom Gundersen <teg@jklm.no>
Date: Sun Jan 26 17:00:32 2014 +0100
Input: i8042 - fix PNP modaliases when both aux and kdb are enabled
Commit 78551277e4 exposed the PNP modaliases for the i8042 module. However,
when both the aux and the kbd drivers are enabled the aux entries would
override the kdb ones.
Refactor the device_id lists, and unconditionally attempt to load the driver
if either a kdb or aux devices is present.
Signed-off-by: Tom Gundersen <teg@jklm.no>
diff --git a/drivers/input/serio/i8042-x86ia64io.h b/drivers/input/serio/i8042-x86ia64io.h
index 0ec9abb..dbc6958 100644
--- a/drivers/input/serio/i8042-x86ia64io.h
+++ b/drivers/input/serio/i8042-x86ia64io.h
@@ -747,25 +747,27 @@ static int i8042_pnp_aux_probe(struct pnp_dev *dev, const struct pnp_device_id *
return 0;
}
-static struct pnp_device_id pnp_kbd_devids[] = {
- { .id = "PNP0300", .driver_data = 0 },
- { .id = "PNP0301", .driver_data = 0 },
- { .id = "PNP0302", .driver_data = 0 },
- { .id = "PNP0303", .driver_data = 0 },
- { .id = "PNP0304", .driver_data = 0 },
- { .id = "PNP0305", .driver_data = 0 },
- { .id = "PNP0306", .driver_data = 0 },
- { .id = "PNP0309", .driver_data = 0 },
- { .id = "PNP030a", .driver_data = 0 },
- { .id = "PNP030b", .driver_data = 0 },
- { .id = "PNP0320", .driver_data = 0 },
- { .id = "PNP0343", .driver_data = 0 },
- { .id = "PNP0344", .driver_data = 0 },
- { .id = "PNP0345", .driver_data = 0 },
+#define KBD_DEVIDS \
+ { .id = "PNP0300", .driver_data = 0 }, \
+ { .id = "PNP0301", .driver_data = 0 }, \
+ { .id = "PNP0302", .driver_data = 0 }, \
+ { .id = "PNP0303", .driver_data = 0 }, \
+ { .id = "PNP0304", .driver_data = 0 }, \
+ { .id = "PNP0305", .driver_data = 0 }, \
+ { .id = "PNP0306", .driver_data = 0 }, \
+ { .id = "PNP0309", .driver_data = 0 }, \
+ { .id = "PNP030a", .driver_data = 0 }, \
+ { .id = "PNP030b", .driver_data = 0 }, \
+ { .id = "PNP0320", .driver_data = 0 }, \
+ { .id = "PNP0343", .driver_data = 0 }, \
+ { .id = "PNP0344", .driver_data = 0 }, \
+ { .id = "PNP0345", .driver_data = 0 }, \
{ .id = "CPQA0D7", .driver_data = 0 },
+
+static struct pnp_device_id pnp_kbd_devids[] = {
+ KBD_DEVIDS
{ .id = "", },
};
-MODULE_DEVICE_TABLE(pnp, pnp_kbd_devids);
static struct pnp_driver i8042_pnp_kbd_driver = {
.name = "i8042 kbd",
@@ -773,21 +775,23 @@ static struct pnp_driver i8042_pnp_kbd_driver = {
.probe = i8042_pnp_kbd_probe,
};
-static struct pnp_device_id pnp_aux_devids[] = {
- { .id = "AUI0200", .driver_data = 0 },
- { .id = "FJC6000", .driver_data = 0 },
- { .id = "FJC6001", .driver_data = 0 },
- { .id = "PNP0f03", .driver_data = 0 },
- { .id = "PNP0f0b", .driver_data = 0 },
- { .id = "PNP0f0e", .driver_data = 0 },
- { .id = "PNP0f12", .driver_data = 0 },
- { .id = "PNP0f13", .driver_data = 0 },
- { .id = "PNP0f19", .driver_data = 0 },
- { .id = "PNP0f1c", .driver_data = 0 },
+#define AUX_DEVIDS \
+ { .id = "AUI0200", .driver_data = 0 }, \
+ { .id = "FJC6000", .driver_data = 0 }, \
+ { .id = "FJC6001", .driver_data = 0 }, \
+ { .id = "PNP0f03", .driver_data = 0 }, \
+ { .id = "PNP0f0b", .driver_data = 0 }, \
+ { .id = "PNP0f0e", .driver_data = 0 }, \
+ { .id = "PNP0f12", .driver_data = 0 }, \
+ { .id = "PNP0f13", .driver_data = 0 }, \
+ { .id = "PNP0f19", .driver_data = 0 }, \
+ { .id = "PNP0f1c", .driver_data = 0 }, \
{ .id = "SYN0801", .driver_data = 0 },
+
+static struct pnp_device_id pnp_aux_devids[] = {
+ AUX_DEVIDS
{ .id = "", },
};
-MODULE_DEVICE_TABLE(pnp, pnp_aux_devids);
static struct pnp_driver i8042_pnp_aux_driver = {
.name = "i8042 aux",
@@ -795,6 +799,13 @@ static struct pnp_driver i8042_pnp_aux_driver = {
.probe = i8042_pnp_aux_probe,
};
+static struct pnp_device_id pnp_kdb_aux_devids[] = {
+ KBD_DEVIDS
+ AUX_DEVIDS
+ { .id = "", },
+};
+MODULE_DEVICE_TABLE(pnp, pnp_kdb_aux_devids);
+
static void i8042_pnp_exit(void)
{
if (i8042_pnp_kbd_registered) {

View file

@ -22,6 +22,12 @@ post_upgrade() {
depmod ${KERNEL_VERSION} depmod ${KERNEL_VERSION}
echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
mkinitcpio -p linux${KERNEL_NAME} mkinitcpio -p linux${KERNEL_NAME}
if [ $(vercmp $2 3.13) -lt 0 ]; then
echo ">>> WARNING: AT keyboard support is no longer built into the kernel."
echo ">>> In order to use your keyboard during early init, you MUST"
echo ">>> include the 'keyboard' hook in your mkinitcpio.conf."
fi
} }
post_remove() { post_remove() {