Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp4670398pxu; Wed, 21 Oct 2020 02:11:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwc18L2nEt9r0eiQqthfzFe42AMNPB4Ed085L6euy+37p9J7fFGLLecZ1vZt3MVNpJ8muBe X-Received: by 2002:a17:906:453:: with SMTP id e19mr2583358eja.391.1603271497034; Wed, 21 Oct 2020 02:11:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603271497; cv=none; d=google.com; s=arc-20160816; b=S1N4/aM+Di2podHupsKkxDgT4irGUOtfFiaRXw7F+4gF5RLddjtWkDzD0byZSySB17 Q4XOVbM1Baj59++T0sCwC9ginShE2pussxBU6AvGp2QQYj+IoB3j+anslf+qSHrCV83u esFC4dTwl/jLCSvmT81NdxFf4Dmlq/kYUqqtlDsy3t4kKtgBxEzzsW8qNv1VsPVkPCqe m6cEZ7crzI0e2MZZ+AnG2SSdlmVIJ9J/SoMud/1HG61Jm1E3+DCbO6PnGoeFuP6768en bqgLO80daVhw59o4vlmcBbqL2Gj1OmC0Zt9mL2Q4h17mlkyNiDMF0QcnfKoJnOhiffoY gcWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=bCzFTP4QeJzcKGG1uYaalyAR/pv8FQdn+tslZgVPhmM=; b=M8LEcrfncwCxdJCHwLsAF6PxeOgy6qIhtvlR6dHrWeeZbN47rQWzZhX+QK3Se6ncXR Q+LADYsLKQP9K8WEABLkPiLkXw+neVRnEvHkYTf9ExXoxeUaZiP1y1+0Yudv9qMzuz7x eGXnWVVBEfSGoP9iTuRHQLQLhAh8Cwxvvj99AWwL0aNrEM+BqdhydiP9dP+YfuZGLHMK DxYJ8UoYXEttnWHGAtUzxbAzVbuetj70561sofmZAvEAxV9I2Svru0eTYeshptSKd6Uv 8MOitE1dNSxjH6qaxJuRWuCICqV2DWBrOERJMj14evpX8S30pVzP0C2U8a11DlXKVN99 qoxQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xeGgy8nr; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dd21si937096edb.91.2020.10.21.02.11.14; Wed, 21 Oct 2020 02:11:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=xeGgy8nr; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389151AbgJTSji (ORCPT + 99 others); Tue, 20 Oct 2020 14:39:38 -0400 Received: from mail.kernel.org ([198.145.29.99]:51826 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389145AbgJTSji (ORCPT ); Tue, 20 Oct 2020 14:39:38 -0400 Received: from localhost.localdomain (c-68-36-133-222.hsd1.mi.comcast.net [68.36.133.222]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B899421D7B; Tue, 20 Oct 2020 18:39:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1603219178; bh=W5LjpHWQlr0scG8t+aiOKmCqvvPLgdMoOg7OLT1cL/I=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=xeGgy8nrxtQjqnLgfGK+8KbU9hrD5fUrMU/aR3GrYMpZNKpcaktWKlYe39QckXqnJ eVI7ZqCacW6IWX2p/F3Od1vM+xWVcGdZS9nlInB5K88yMbySmMHyia8BB3gO+VdiaD qGhFTM7NQjoPsSinfIJ3AOrdEPsQP/esOFrprKxo= From: trondmy@kernel.org To: Daire Byrne Cc: linux-nfs@vger.kernel.org Subject: [PATCH v3 0/3] Add NFSv3 emulation of the lookupp operation Date: Tue, 20 Oct 2020 14:37:15 -0400 Message-Id: <20201020183718.14618-1-trondmy@kernel.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <279389889.68934777.1603124383614.JavaMail.zimbra@dneg.com> References: <279389889.68934777.1603124383614.JavaMail.zimbra@dneg.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org From: Trond Myklebust In order to use the open-by-filehandle functionality with NFSv3, we need to ensure that the NFS client can convert disconnected dentries into connected ones by doing a reverse walk of the filesystem path. To do so, NFSv4 provides the LOOKUPP operation, which does not exist in NFSv3, but which can usually be emulated using lookup(".."). v2: - Fix compilation issues for "NFSv3: Refactor nfs3_proc_lookup() to split out the dentry" v3: - Fix the string length calculation - Apply the NFS_MOUNT_SOFTREVAL flag in both the NFSv3 and NFSv4 lookupp Trond Myklebust (3): NFSv3: Refactor nfs3_proc_lookup() to split out the dentry NFSv3: Add emulation of the lookupp() operation NFSv4: Observe the NFS_MOUNT_SOFTREVAL flag in _nfs4_proc_lookupp fs/nfs/nfs3proc.c | 48 ++++++++++++++++++++++++++++++++++++----------- fs/nfs/nfs4proc.c | 6 +++++- 2 files changed, 42 insertions(+), 12 deletions(-) -- 2.26.2