svn commit: r225261 - stable/8/sys/fs/procfs
Konstantin Belousov
kib at FreeBSD.org
Tue Aug 30 11:50:28 UTC 2011
Author: kib
Date: Tue Aug 30 11:50:28 2011
New Revision: 225261
URL: http://svn.freebsd.org/changeset/base/225261
Log:
MFC r224915:
Do not return success and a string "unknown" when vn_fullpath() was unable
to resolve the path of the text vnode of the process. The behaviour is
very confusing for any consumer of the procfs, in particular, java.
Modified:
stable/8/sys/fs/procfs/procfs.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
Modified: stable/8/sys/fs/procfs/procfs.c
==============================================================================
--- stable/8/sys/fs/procfs/procfs.c Tue Aug 30 11:49:22 2011 (r225260)
+++ stable/8/sys/fs/procfs/procfs.c Tue Aug 30 11:50:28 2011 (r225261)
@@ -67,20 +67,23 @@
int
procfs_doprocfile(PFS_FILL_ARGS)
{
- char *fullpath = "unknown";
- char *freepath = NULL;
+ char *fullpath;
+ char *freepath;
struct vnode *textvp;
+ int error;
+ freepath = NULL;
PROC_LOCK(p);
textvp = p->p_textvp;
vhold(textvp);
PROC_UNLOCK(p);
- vn_fullpath(td, textvp, &fullpath, &freepath);
+ error = vn_fullpath(td, textvp, &fullpath, &freepath);
vdrop(textvp);
- sbuf_printf(sb, "%s", fullpath);
- if (freepath)
+ if (error == 0)
+ sbuf_printf(sb, "%s", fullpath);
+ if (freepath != NULL)
free(freepath, M_TEMP);
- return (0);
+ return (error);
}
/*
More information about the svn-src-all
mailing list