Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Nov 2010 20:05:11 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r215838 - head/sys/kern
Message-ID:  <201011252005.oAPK5Box016129@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Thu Nov 25 20:05:11 2010
New Revision: 215838
URL: http://svn.freebsd.org/changeset/base/215838

Log:
  Account i/o done on cdevs.
  
  Reported and tested by:	Adam Vande More <amvandemore gmail com>
  MFC after:	1 week

Modified:
  head/sys/kern/kern_physio.c

Modified: head/sys/kern/kern_physio.c
==============================================================================
--- head/sys/kern/kern_physio.c	Thu Nov 25 19:33:39 2010	(r215837)
+++ head/sys/kern/kern_physio.c	Thu Nov 25 20:05:11 2010	(r215838)
@@ -57,10 +57,13 @@ physio(struct cdev *dev, struct uio *uio
 	for (i = 0; i < uio->uio_iovcnt; i++) {
 		while (uio->uio_iov[i].iov_len) {
 			bp->b_flags = 0;
-			if (uio->uio_rw == UIO_READ)
+			if (uio->uio_rw == UIO_READ) {
 				bp->b_iocmd = BIO_READ;
-			else 
+				curthread->td_ru.ru_inblock++;
+			} else {
 				bp->b_iocmd = BIO_WRITE;
+				curthread->td_ru.ru_oublock++;
+			}
 			bp->b_iodone = bdone;
 			bp->b_data = uio->uio_iov[i].iov_base;
 			bp->b_bcount = uio->uio_iov[i].iov_len;



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