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;
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to