[Devel] [PATCH RHEL7 COMMIT] ms/vfs: Remove incorrect debugging WARN in prepend_path

Konstantin Khorenko khorenko at virtuozzo.com
Fri Jun 8 17:39:16 MSK 2018


The commit is pushed to "branch-rh7-3.10.0-862.vz7.48.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-862.el7
------>
commit f4195179a83e99b88d2019490f21945254aaa6f8
Author: Eric W. Biederman <ebiederm at xmission.com>
Date:   Sun May 24 09:25:00 2015 -0500

    ms/vfs: Remove incorrect debugging WARN in prepend_path
    
    The warning message in prepend_path is unclear and outdated.  It was
    added as a warning that the mechanism for generating names of pseudo
    files had been removed from prepend_path and d_dname should be used
    instead.  Unfortunately the warning reads like a general warning,
    making it unclear what to do with it.
    
    Remove the warning.  The transition it was added to warn about is long
    over, and I added code several years ago which in rare cases causes
    the warning to fire on legitimate code, and the warning is now firing
    and scaring people for no good reason.
    
    Cc: stable at vger.kernel.org
    Reported-by: Ivan Delalande <colona at arista.com>
    Reported-by: Omar Sandoval <osandov at osandov.com>
    Fixes: f48cfddc6729e ("vfs: In d_path don't call d_dname on a mount point")
    Signed-off-by: "Eric W. Biederman" <ebiederm at xmission.com>
    
    https://access.redhat.com/solutions/3356761
    https://jira.sw.ru/browse/PSBM-78310
    
    (cherry picked from commit 93e3bce6287e1fb3e60d3324ed08555b5bbafa89)
    Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
---
 fs/dcache.c | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/fs/dcache.c b/fs/dcache.c
index f65a4e8cbc0e..f18198442248 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -3014,17 +3014,6 @@ static int prepend_path(const struct path *path,
 				vfsmnt = &mnt->mnt;
 				continue;
 			}
-			/*
-			 * Filesystems needing to implement special "root names"
-			 * should do so with ->d_dname()
-			 */
-			if (IS_ROOT(dentry) &&
-			   (dentry->d_name.len != 1 ||
-			    dentry->d_name.name[0] != '/')) {
-				WARN(1, "Root dentry has weird name <%.*s>\n",
-				     (int) dentry->d_name.len,
-				     dentry->d_name.name);
-			}
 			if (!error)
 				error = is_mounted(vfsmnt) ? 1 : 2;
 			break;


More information about the Devel mailing list