From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753275AbbCPEpL (ORCPT ); Mon, 16 Mar 2015 00:45:11 -0400 Received: from cantor2.suse.de ([195.135.220.15]:56254 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750867AbbCPEpG (ORCPT ); Mon, 16 Mar 2015 00:45:06 -0400 From: NeilBrown To: Al Viro Date: Mon, 16 Mar 2015 15:43:20 +1100 Subject: [PATCH 09/13] VFS/namei: enable RCU-walk when following symlinks. Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Message-ID: <20150316044320.23648.43776.stgit@notabene.brown> In-Reply-To: <20150316043602.23648.52734.stgit@notabene.brown> References: <20150316043602.23648.52734.stgit@notabene.brown> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Now that follow_link handles LOOKUP_RCU, we do not need to 'unlazy_walk' when a symlink is found. Signed-off-by: NeilBrown --- fs/namei.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/fs/namei.c b/fs/namei.c index 536e0254f5f1..c9c58cd1af2a 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -1631,12 +1631,6 @@ static inline int walk_component(struct nameidata *nd, struct path *path, goto out_path_put; if (should_follow_link(path->dentry, follow)) { - if (nd->flags & LOOKUP_RCU) { - if (unlikely(unlazy_walk(nd, path->dentry))) { - err = -ECHILD; - goto out_err; - } - } BUG_ON(inode != path->dentry->d_inode); return 1; } @@ -3093,12 +3087,6 @@ finish_lookup: } if (should_follow_link(path->dentry, !symlink_ok)) { - if (nd->flags & LOOKUP_RCU) { - if (unlikely(unlazy_walk(nd, path->dentry))) { - error = -ECHILD; - goto out; - } - } BUG_ON(inode != path->dentry->d_inode); return 1; }