| From a914722f333b3359d2f4f12919380a334176bb89 Mon Sep 17 00:00:00 2001 |
| From: Mateusz Guzik <mguzik@redhat.com> |
| Date: Tue, 10 Jun 2014 12:44:12 +0200 |
| Subject: NFS: populate ->net in mount data when remounting |
| |
| From: Mateusz Guzik <mguzik@redhat.com> |
| |
| commit a914722f333b3359d2f4f12919380a334176bb89 upstream. |
| |
| Otherwise the kernel oopses when remounting with IPv6 server because |
| net is dereferenced in dev_get_by_name. |
| |
| Use net ns of current thread so that dev_get_by_name does not operate on |
| foreign ns. Changing the address is prohibited anyway so this should not |
| affect anything. |
| |
| Signed-off-by: Mateusz Guzik <mguzik@redhat.com> |
| Cc: linux-nfs@vger.kernel.org |
| Cc: linux-kernel@vger.kernel.org |
| Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| fs/nfs/super.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/fs/nfs/super.c |
| +++ b/fs/nfs/super.c |
| @@ -2248,6 +2248,7 @@ nfs_remount(struct super_block *sb, int |
| data->nfs_server.addrlen = nfss->nfs_client->cl_addrlen; |
| data->version = nfsvers; |
| data->minorversion = nfss->nfs_client->cl_minorversion; |
| + data->net = current->nsproxy->net_ns; |
| memcpy(&data->nfs_server.address, &nfss->nfs_client->cl_addr, |
| data->nfs_server.addrlen); |
| |