From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Layton Subject: [PATCH] vfs: remove warning about "weird" root dentry name from prepend_path() Date: Mon, 14 Jan 2013 09:54:40 -0500 Message-ID: <1358175280-15903-1-git-send-email-jlayton@redhat.com> References: <20130110085905.07c1ab47@corrin.poochiereds.net> Cc: linux-fsdevel@vger.kernel.org, miklos@szeredi.hu To: viro@ZenIV.linux.org.uk Return-path: Received: from mail-qc0-f178.google.com ([209.85.216.178]:40239 "EHLO mail-qc0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753051Ab3ANOyv (ORCPT ); Mon, 14 Jan 2013 09:54:51 -0500 Received: by mail-qc0-f178.google.com with SMTP id j34so2574021qco.9 for ; Mon, 14 Jan 2013 06:54:50 -0800 (PST) In-Reply-To: <20130110085905.07c1ab47@corrin.poochiereds.net> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: We've had several reports of this warning over the last year or so: [34011.669912] ------------[ cut here ]------------ [34011.670473] WARNING: at fs/dcache.c:2630 prepend_path+0x1eb/0x200() [34011.671198] Hardware name: Bochs [34011.671564] Root dentry has weird name <> vfsmnt: fs:nfs4 [34011.672195] Modules linked in: nfsv4 auth_rpcgss nfs lockd sunrpc dns_resolver fscache kvm_amd kvm microcode virtio_net virtio_balloon i2c_piix4 cirrus drm_kms_helper ttm virtio_blk drm i2c_core [34011.674464] Pid: 7470, comm: ls Tainted: G W 3.7.0-6.fc19.x86_64 #1 [34011.675417] Call Trace: [34011.675712] [] warn_slowpath_common+0x7f/0xc0 [34011.676404] [] warn_slowpath_fmt+0x46/0x50 [34011.677058] [] ? lg_local_lock+0x44/0x80 [34011.677675] [] ? prepend_path+0x38/0x200 [34011.678315] [] prepend_path+0x1eb/0x200 [34011.678926] [] path_with_deleted+0x5c/0xa0 [34011.679578] [] d_path+0xbf/0x100 [34011.680139] [] proc_pid_readlink+0x95/0x100 [34011.680783] [] sys_readlinkat+0xa9/0xc0 [34011.681418] [] ? __audit_syscall_entry+0xcc/0x300 [34011.682144] [] sys_readlink+0x1b/0x20 [34011.682740] [] system_call_fastpath+0x16/0x1b [34011.683425] ---[ end trace 5e8c789abf4f6e53 ]--- I'm able to reproduce this warning at will by mounting up a NFS filesystem, cd'ing into it. If I then lazy unmount the fs and then stat /proc/pid/cwd for the process sitting in the detached mount, this warning will fire. Given that this is fairly easy to reproduce without doing anything too exotic, I don't see much value in keeping this warning around. Cc: Miklos Szeredi Signed-off-by: Jeff Layton --- fs/dcache.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/fs/dcache.c b/fs/dcache.c index 19153a0..08a10a7 100644 --- a/fs/dcache.c +++ b/fs/dcache.c @@ -2587,15 +2587,6 @@ out: return error; global_root: - /* - * 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 (!slash) error = prepend(buffer, buflen, "/", 1); if (!error) -- 1.7.11.7