3acb6bc7f6
- fix the number on open files in cifsiostat output
44 lines
1.3 KiB
Diff
44 lines
1.3 KiB
Diff
diff -up sysstat-10.0.0/cifsiostat.c.pom sysstat-10.0.0/cifsiostat.c
|
|
--- sysstat-10.0.0/cifsiostat.c.pom 2011-03-11 18:09:57.000000000 +0100
|
|
+++ sysstat-10.0.0/cifsiostat.c 2011-05-04 08:09:45.000000000 +0200
|
|
@@ -319,6 +319,8 @@ void read_cifs_stat(int curr)
|
|
char line[256];
|
|
char aux[32];
|
|
int start = 0;
|
|
+ long long unsigned aux_open;
|
|
+ long long unsigned all_open = 0;
|
|
char cifs_name[MAX_NAME_LEN];
|
|
char name_tmp[MAX_NAME_LEN];
|
|
struct cifs_stats scifs;
|
|
@@ -337,7 +339,9 @@ void read_cifs_stat(int curr)
|
|
/* Read CIFS directory name */
|
|
if (isdigit((unsigned char) line[0]) && sscanf(line, aux , name_tmp) == 1) {
|
|
if (start) {
|
|
+ scifs.fopens = all_open;
|
|
save_stats(cifs_name, curr, &scifs);
|
|
+ all_open = 0;
|
|
}
|
|
else {
|
|
start = 1;
|
|
@@ -353,12 +357,19 @@ void read_cifs_stat(int curr)
|
|
}
|
|
if (!strncmp(line, "Opens:", 6)) {
|
|
sscanf(line, "Opens: %llu Closes:%llu Deletes: %llu",
|
|
- &scifs.fopens, &scifs.fcloses, &scifs.fdeletes);
|
|
+ &aux_open, &scifs.fcloses, &scifs.fdeletes);
|
|
+ all_open += aux_open;
|
|
+ }
|
|
+ if (!strncmp(line, "Posix Opens:", 12)) {
|
|
+ sscanf(line, "Posix Opens: %llu Posix Mkdirs: %*llu",
|
|
+ &aux_open);
|
|
+ all_open += aux_open;
|
|
}
|
|
}
|
|
}
|
|
|
|
if (start) {
|
|
+ scifs.fopens = all_open;
|
|
save_stats(cifs_name, curr, &scifs);
|
|
}
|
|
|