svn commit: r195719 - projects/libprocstat/usr.bin/fstat

Stanislav Sedov stas at FreeBSD.org
Thu Jul 16 14:24:07 UTC 2009


Author: stas
Date: Thu Jul 16 14:24:06 2009
New Revision: 195719
URL: http://svn.freebsd.org/changeset/base/195719

Log:
  - When retrieving special node data, check if the vnode is actually VCHR/VBLK.
  
  Suggested by:	kib

Modified:
  projects/libprocstat/usr.bin/fstat/libprocstat.c

Modified: projects/libprocstat/usr.bin/fstat/libprocstat.c
==============================================================================
--- projects/libprocstat/usr.bin/fstat/libprocstat.c	Thu Jul 16 13:26:03 2009	(r195718)
+++ projects/libprocstat/usr.bin/fstat/libprocstat.c	Thu Jul 16 14:24:06 2009	(r195719)
@@ -558,10 +558,8 @@ procstat_get_pts_info_kvm(kvm_t *kd, str
 		warnx("can't read tty at %p", (void *)ttyp);
 		goto fail;
 	}
-	if (tty.t_dev != NULL) {
-		pts->dev = dev2udev(kd, tty.t_dev);
-		(void)kdevtoname(kd, tty.t_dev, pts->devname);
-	}
+	pts->dev = dev2udev(kd, tty.t_dev);
+	(void)kdevtoname(kd, tty.t_dev, pts->devname);
 	return (0);
 
 fail:
@@ -645,7 +643,8 @@ procstat_get_vnode_info_kvm(kvm_t *kd, s
 		return (1);
 	}
 	vn->mntdir = getmnton(kd, vnode.v_mount);
-	if (vnode.v_rdev != NULL) {
+	if ((vnode.v_type == VBLK || vnode.v_type == VCHR) &&
+	    vnode.v_rdev != NULL){
 		vn->vn_dev = dev2udev(kd, vnode.v_rdev);
 		(void)kdevtoname(kd, vnode.v_rdev, vn->vn_devname);
 	}


More information about the svn-src-projects mailing list