]> git.proxmox.com Git - mirror_lxcfs.git/blobdiff - bindings.c
diskstats: use recursive values, and some cleanup
[mirror_lxcfs.git] / bindings.c
index 22b64903f1020991aa83ab7cd7155fbd936e4a29..b19432206b87a8feaf7966229bef0b97019d297e 100644 (file)
@@ -3578,15 +3578,15 @@ static int proc_diskstats_read(char *buf, size_t size, off_t offset,
                return read_file("/proc/diskstats", buf, size, d);
        prune_init_slice(cg);
 
-       if (!cgfs_get_value("blkio", cg, "blkio.io_serviced", &io_serviced_str))
+       if (!cgfs_get_value("blkio", cg, "blkio.io_serviced_recursive", &io_serviced_str))
                goto err;
-       if (!cgfs_get_value("blkio", cg, "blkio.io_merged", &io_merged_str))
+       if (!cgfs_get_value("blkio", cg, "blkio.io_merged_recursive", &io_merged_str))
                goto err;
-       if (!cgfs_get_value("blkio", cg, "blkio.io_service_bytes", &io_service_bytes_str))
+       if (!cgfs_get_value("blkio", cg, "blkio.io_service_bytes_recursive", &io_service_bytes_str))
                goto err;
-       if (!cgfs_get_value("blkio", cg, "blkio.io_wait_time", &io_wait_time_str))
+       if (!cgfs_get_value("blkio", cg, "blkio.io_wait_time_recursive", &io_wait_time_str))
                goto err;
-       if (!cgfs_get_value("blkio", cg, "blkio.io_service_time", &io_service_time_str))
+       if (!cgfs_get_value("blkio", cg, "blkio.io_service_time_recursive", &io_service_time_str))
                goto err;
 
 
@@ -3596,47 +3596,42 @@ static int proc_diskstats_read(char *buf, size_t size, off_t offset,
 
        while (getline(&line, &linelen, f) != -1) {
                size_t l;
-               char *printme, lbuf[256];
+               char lbuf[256];
 
                i = sscanf(line, "%u %u %71s", &major, &minor, dev_name);
-               if(i == 3){
-                       get_blkio_io_value(io_serviced_str, major, minor, "Read", &read);
-                       get_blkio_io_value(io_serviced_str, major, minor, "Write", &write);
-                       get_blkio_io_value(io_merged_str, major, minor, "Read", &read_merged);
-                       get_blkio_io_value(io_merged_str, major, minor, "Write", &write_merged);
-                       get_blkio_io_value(io_service_bytes_str, major, minor, "Read", &read_sectors);
-                       read_sectors = read_sectors/512;
-                       get_blkio_io_value(io_service_bytes_str, major, minor, "Write", &write_sectors);
-                       write_sectors = write_sectors/512;
-
-                       get_blkio_io_value(io_service_time_str, major, minor, "Read", &rd_svctm);
-                       rd_svctm = rd_svctm/1000000;
-                       get_blkio_io_value(io_wait_time_str, major, minor, "Read", &rd_wait);
-                       rd_wait = rd_wait/1000000;
-                       read_ticks = rd_svctm + rd_wait;
-
-                       get_blkio_io_value(io_service_time_str, major, minor, "Write", &wr_svctm);
-                       wr_svctm =  wr_svctm/1000000;
-                       get_blkio_io_value(io_wait_time_str, major, minor, "Write", &wr_wait);
-                       wr_wait =  wr_wait/1000000;
-                       write_ticks = wr_svctm + wr_wait;
-
-                       get_blkio_io_value(io_service_time_str, major, minor, "Total", &tot_ticks);
-                       tot_ticks =  tot_ticks/1000000;
-               }else{
+               if (i != 3)
                        continue;
-               }
+
+               get_blkio_io_value(io_serviced_str, major, minor, "Read", &read);
+               get_blkio_io_value(io_serviced_str, major, minor, "Write", &write);
+               get_blkio_io_value(io_merged_str, major, minor, "Read", &read_merged);
+               get_blkio_io_value(io_merged_str, major, minor, "Write", &write_merged);
+               get_blkio_io_value(io_service_bytes_str, major, minor, "Read", &read_sectors);
+               read_sectors = read_sectors/512;
+               get_blkio_io_value(io_service_bytes_str, major, minor, "Write", &write_sectors);
+               write_sectors = write_sectors/512;
+
+               get_blkio_io_value(io_service_time_str, major, minor, "Read", &rd_svctm);
+               rd_svctm = rd_svctm/1000000;
+               get_blkio_io_value(io_wait_time_str, major, minor, "Read", &rd_wait);
+               rd_wait = rd_wait/1000000;
+               read_ticks = rd_svctm + rd_wait;
+
+               get_blkio_io_value(io_service_time_str, major, minor, "Write", &wr_svctm);
+               wr_svctm =  wr_svctm/1000000;
+               get_blkio_io_value(io_wait_time_str, major, minor, "Write", &wr_wait);
+               wr_wait =  wr_wait/1000000;
+               write_ticks = wr_svctm + wr_wait;
+
+               get_blkio_io_value(io_service_time_str, major, minor, "Total", &tot_ticks);
+               tot_ticks =  tot_ticks/1000000;
 
                memset(lbuf, 0, 256);
-               if (read || write || read_merged || write_merged || read_sectors || write_sectors || read_ticks || write_ticks) {
-                       snprintf(lbuf, 256, "%u       %u %s %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu\n",
-                               major, minor, dev_name, read, read_merged, read_sectors, read_ticks,
-                               write, write_merged, write_sectors, write_ticks, ios_pgr, tot_ticks, rq_ticks);
-                       printme = lbuf;
-               } else
-                       continue;
+               snprintf(lbuf, 256, "%u       %u %s %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu %lu\n",
+                       major, minor, dev_name, read, read_merged, read_sectors, read_ticks,
+                       write, write_merged, write_sectors, write_ticks, ios_pgr, tot_ticks, rq_ticks);
 
-               l = snprintf(cache, cache_size, "%s", printme);
+               l = snprintf(cache, cache_size, "%s", lbuf);
                if (l < 0) {
                        perror("Error writing to fuse buf");
                        rv = 0;