]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Update fd/disk stats when doing disk I/O.
authorAlex Rousskov <rousskov@measurement-factory.com>
Tue, 15 Feb 2011 23:27:58 +0000 (16:27 -0700)
committerAlex Rousskov <rousskov@measurement-factory.com>
Tue, 15 Feb 2011 23:27:58 +0000 (16:27 -0700)
src/DiskIO/IpcIo/IpcIoFile.cc

index 0f7cd69f78740f84552289568ca5b1d0a683c17c..e882613f06e37c3cba4f29f76f196811ec53192c 100644 (file)
@@ -483,6 +483,9 @@ void diskerRead(const IpcIoRequest &request)
     response.command = request.command;
 
     const ssize_t read = pread(TheFile, response.buf, request.len, request.offset);
+    statCounter.syscalls.disk.reads++;
+    fd_bytes(TheFile, read, FD_READ);
+
     if (read >= 0) {
         response.xerrno = 0;
         response.len = static_cast<size_t>(read); // safe because read > 0
@@ -515,6 +518,9 @@ void diskerWrite(const IpcIoRequest &request)
     response.command = request.command;
 
     const ssize_t wrote = pwrite(TheFile, request.buf, request.len, request.offset);
+    statCounter.syscalls.disk.writes++;
+    fd_bytes(TheFile, wrote, FD_WRITE);
+
     if (wrote >= 0) {
         response.xerrno = 0;
         response.len = static_cast<size_t>(wrote); // safe because wrote > 0