Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Aug 2002 11:16:13 -0500 (CDT)
From:      Dan Nelson <dnelson@allantgroup.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   bin/41902: [PATCH] Add queue depth to systat -v disk table
Message-ID:  <200208221616.g7MGGDMm072702@dan.emsphone.com>

next in thread | raw e-mail | index | archive | help

>Number:         41902
>Category:       bin
>Synopsis:       [PATCH] Add queue depth to systat -v disk table
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Aug 22 09:20:02 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Dan Nelson
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
The Allant Group
>Environment:
System: FreeBSD dan.emsphone.com 5.0-CURRENT FreeBSD 5.0-CURRENT #181: Thu Jul 25 14:15:12 CDT 2002 zsh@dan.emsphone.com:/usr/src/sys/i386/compile/DANSMP i386



It's often useful to know the CTQ depth of your drives when they're
being used.  The following patch adds that to systat -v output.

Disks   da0   cd0   cd1   fd0 pass0 pass1 pass2           intrn
KB/t   5.92  0.00  0.00  0.00  0.00  0.00  0.00    114064 buf
tps     102     0     0     0     0     0     0       809 dirtybuf
MB/s   0.59  0.00  0.00  0.00  0.00  0.00  0.00     65950 desiredvnodes
% busy   40     0     0     0     0     0     0     65978 numvnodes
queued   11     0     0     0     0     0     0     37194 freevnodes

Index: vmstat.c
===================================================================
RCS file: /home/ncvs/src/usr.bin/systat/vmstat.c,v
retrieving revision 1.52
diff -u -p -r1.52 vmstat.c
--- vmstat.c	6 Jun 2002 23:01:50 -0000	1.52
+++ vmstat.c	22 Aug 2002 15:47:05 -0000
@@ -337,12 +337,7 @@ labelkre()
 	mvprintw(DISKROW + 2, DISKCOL, "tps");
 	mvprintw(DISKROW + 3, DISKCOL, "MB/s");
 	mvprintw(DISKROW + 4, DISKCOL, "%% busy");
-	/*
-	 * For now, we don't support a fourth disk statistic.  So there's
-	 * no point in providing a label for it.  If someone can think of a
-	 * fourth useful disk statistic, there is room to add it.
-	 */
-	/* mvprintw(DISKROW + 4, DISKCOL, " msps"); */
+	mvprintw(DISKROW + 5, DISKCOL, "queued");
 	j = 0;
 	for (i = 0; i < num_devices && j < MAXDRIVES; i++)
 		if (dev_select[i].selected) {
@@ -848,6 +843,7 @@ dinfo(dn, lc, now, then)
 	long double transfers_per_second;
 	long double kb_per_transfer, mb_per_second;
 	long double elapsed_time, device_busy;
+	long double busy_count;
 	int di;
 
 	di = dev_select[dn].position;
@@ -859,6 +855,8 @@ dinfo(dn, lc, now, then)
 	    then ? then->dinfo->devices[di].busy_time :
 	    now->dinfo->devices[di].dev_creation_time);
 
+	busy_count = now->dinfo->devices[di].busy_count;
+
 	if (devstat_compute_statistics(&now->dinfo->devices[di], then ?
 	    &then->dinfo->devices[di] : NULL, elapsed_time,
 	    DSM_KB_PER_TRANSFER, &kb_per_transfer, DSM_TRANSFERS_PER_SECOND,
@@ -881,4 +879,5 @@ dinfo(dn, lc, now, then)
 	putlongdouble(transfers_per_second, DISKROW + 2, lc, 5, 0, 0);
 	putlongdouble(mb_per_second, DISKROW + 3, lc, 5, 2, 0);
 	putlongdouble(device_busy * 100 / elapsed_time, DISKROW + 4, lc, 5, 0, 0);
+	putlongdouble(busy_count, DISKROW + 5, lc, 5, 0, 0);
 }
>Description:
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200208221616.g7MGGDMm072702>