代码拉取完成,页面将自动刷新
同步操作将从 src-openEuler/lxcfs 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
diff --git a/src/proc_fuse.c b/src/proc_fuse.c
index 519cda4..96eb9d7 100644
--- a/src/proc_fuse.c
+++ b/src/proc_fuse.c
@@ -608,11 +608,6 @@ static int proc_diskstats_read(char *buf, size_t size, off_t offset,
return read_file_fuse("/proc/diskstats", buf, size, d);
}
- ret = cgroup_ops->get_io_merged(cgroup_ops, cg, &io_merged_str);
- if (ret < 0) {
- if (ret == -EOPNOTSUPP)
- return read_file_fuse("/proc/diskstats", buf, size, d);
- }
ret = cgroup_ops->get_io_service_bytes(cgroup_ops, cg, &io_service_bytes_str);
if (ret < 0) {
@@ -620,17 +615,9 @@ static int proc_diskstats_read(char *buf, size_t size, off_t offset,
return read_file_fuse("/proc/diskstats", buf, size, d);
}
- ret = cgroup_ops->get_io_wait_time(cgroup_ops, cg, &io_wait_time_str);
- if (ret < 0) {
- if (ret == -EOPNOTSUPP)
- return read_file_fuse("/proc/diskstats", buf, size, d);
- }
-
- ret = cgroup_ops->get_io_service_time(cgroup_ops, cg, &io_service_time_str);
- if (ret < 0) {
- if (ret == -EOPNOTSUPP)
- return read_file_fuse("/proc/diskstats", buf, size, d);
- }
+ cgroup_ops->get_io_merged(cgroup_ops, cg, &io_merged_str);
+ cgroup_ops->get_io_wait_time(cgroup_ops, cg, &io_wait_time_str);
+ cgroup_ops->get_io_service_time(cgroup_ops, cg, &io_service_time_str);
f = fopen_cached("/proc/diskstats", "re", &fopen_cache);
if (!f)
@@ -663,26 +650,32 @@ static int proc_diskstats_read(char *buf, size_t size, off_t offset,
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);
+ if (io_merged_str != NULL) {
+ 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;
+ if (io_service_time_str != NULL) {
+ get_blkio_io_value(io_service_time_str, major, minor, "Read", &rd_svctm);
+ rd_svctm = rd_svctm/1000000;
+ get_blkio_io_value(io_service_time_str, major, minor, "Write", &wr_svctm);
+ wr_svctm = wr_svctm/1000000;
+ get_blkio_io_value(io_service_time_str, major, minor, "Total", &tot_ticks);
+ }
- 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;
+ if (io_wait_time_str != NULL) {
+ get_blkio_io_value(io_wait_time_str, major, minor, "Read", &rd_wait);
+ rd_wait = rd_wait/1000000;
+ get_blkio_io_value(io_wait_time_str, major, minor, "Write", &wr_wait);
+ wr_wait = wr_wait/1000000;
+ }
- get_blkio_io_value(io_service_time_str, major, minor, "Total", &tot_ticks);
+ read_ticks = rd_svctm + rd_wait;
+ write_ticks = wr_svctm + wr_wait;
tot_ticks = tot_ticks/1000000;
memset(lbuf, 0, 256);
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。