summaryrefslogtreecommitdiffstats
path: root/fs/nfsd/nfs4recover.c
diff options
context:
space:
mode:
authorJeff Layton2012-03-21 14:52:09 +0100
committerJ. Bruce Fields2012-03-26 17:49:48 +0200
commitcc27e0d407021a278d08c1952f5af4ab38c49eda (patch)
tree553dcc5c2acdce04caab305c02693303abb4e822 /fs/nfsd/nfs4recover.c
parentnfsd: add notifier to handle mount/unmount of rpc_pipefs sb (diff)
downloadkernel-qcow2-linux-cc27e0d407021a278d08c1952f5af4ab38c49eda.tar.gz
kernel-qcow2-linux-cc27e0d407021a278d08c1952f5af4ab38c49eda.tar.xz
kernel-qcow2-linux-cc27e0d407021a278d08c1952f5af4ab38c49eda.zip
nfsd: don't allow legacy client tracker init for anything but init_net
This code isn't set up for containers, so don't allow it to be used for anything but init_net. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/nfs4recover.c')
-rw-r--r--fs/nfsd/nfs4recover.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4recover.c b/fs/nfsd/nfs4recover.c
index 6f13281635ba..21b53d57432c 100644
--- a/fs/nfsd/nfs4recover.c
+++ b/fs/nfsd/nfs4recover.c
@@ -416,6 +416,13 @@ nfsd4_load_reboot_recovery_data(struct net *net)
{
int status;
+ /* XXX: The legacy code won't work in a container */
+ if (net != &init_net) {
+ WARN(1, KERN_ERR "NFSD: attempt to initialize legacy client "
+ "tracking in a container!\n");
+ return -EINVAL;
+ }
+
nfs4_lock_state();
status = nfsd4_init_recdir();
if (!status)