rpc_authflavor_t flavor)
 {
        struct nfs_server *server;
-       struct nfs_fattr *fattr_fsinfo;
        int error;
 
        server = nfs_alloc_server();
 
        server->cred = get_cred(source->cred);
 
-       error = -ENOMEM;
-       fattr_fsinfo = nfs_alloc_fattr();
-       if (fattr_fsinfo == NULL)
-               goto out_free_server;
-
        /* Copy data from the source */
        server->nfs_client = source->nfs_client;
        server->destroy = source->destroy;
                goto out_free_server;
 
        /* probe the filesystem info for this server filesystem */
-       error = nfs_probe_fsinfo(server, fh, fattr_fsinfo);
+       error = nfs_probe_server(server, fh);
        if (error < 0)
                goto out_free_server;
 
        nfs_server_insert_lists(server);
        server->mount_time = jiffies;
 
-       nfs_free_fattr(fattr_fsinfo);
        return server;
 
 out_free_server:
-       nfs_free_fattr(fattr_fsinfo);
        nfs_free_server(server);
        return ERR_PTR(error);
 }
 
 static int nfs4_server_common_setup(struct nfs_server *server,
                struct nfs_fh *mntfh, bool auth_probe)
 {
-       struct nfs_fattr *fattr;
        int error;
 
        /* data servers support only a subset of NFSv4.1 */
        if (is_ds_only_client(server->nfs_client))
                return -EPROTONOSUPPORT;
 
-       fattr = nfs_alloc_fattr();
-       if (fattr == NULL)
-               return -ENOMEM;
-
        /* We must ensure the session is initialised first */
        error = nfs4_init_session(server->nfs_client);
        if (error < 0)
                        (unsigned long long) server->fsid.minor);
        nfs_display_fhandle(mntfh, "Pseudo-fs root FH");
 
-       error = nfs_probe_fsinfo(server, mntfh, fattr);
+       error = nfs_probe_server(server, mntfh);
        if (error < 0)
                goto out;
 
        server->mount_time = jiffies;
        server->destroy = nfs4_destroy_server;
 out:
-       nfs_free_fattr(fattr);
        return error;
 }