aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFederico Angelilli <code@fedang.net>2024-09-11 23:11:47 +0200
committerFederico Angelilli <code@fedang.net>2024-09-11 23:11:47 +0200
commit2907d743760f74a01a77dca91c4f74ac849517b5 (patch)
treeeba0a65d8e76814f3d2dd6b538dc6237459450d2 /src
parentb94e342ea59c9d13ef1e380834534c1c1c8a83ec (diff)
Add fs percentages
Diffstat (limited to 'src')
-rw-r--r--src/blocks/fs.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/blocks/fs.c b/src/blocks/fs.c
index 1a4a178..65e8fe2 100644
--- a/src/blocks/fs.c
+++ b/src/blocks/fs.c
@@ -22,19 +22,20 @@ static void block_fs_update(block_t *block)
"total",
"free",
"used",
+ "free-percentage",
+ "used-percentage",
NULL,
};
- char buffer[32][3] = { 0 };
- snprintf(buffer[0], 32, "%ld", sbuf.f_blocks * sbuf.f_frsize);
- snprintf(buffer[1], 32, "%ld", sbuf.f_bavail * sbuf.f_bsize);
- snprintf(buffer[2], 32, "%ld", (sbuf.f_blocks - sbuf.f_bavail) * sbuf.f_bsize);
+ char buffer[5][32] = { 0 };
+ snprintf(buffer[0], 32, "%lu", sbuf.f_bsize * (uint64_t)sbuf.f_blocks);
+ snprintf(buffer[1], 32, "%lu", sbuf.f_bsize * (uint64_t)sbuf.f_bavail);
+ snprintf(buffer[2], 32, "%lu", sbuf.f_bsize * (sbuf.f_blocks - sbuf.f_bavail));
+ snprintf(buffer[3], 32, "%lu", (100 * sbuf.f_bavail) / sbuf.f_blocks);
+ snprintf(buffer[4], 32, "%lu", (100 * (sbuf.f_blocks - sbuf.f_bavail)) / sbuf.f_blocks);
const char *fs_values[] = {
- buffer[0],
- buffer[1],
- buffer[2],
- NULL,
+ buffer[0], buffer[1], buffer[2], buffer[3], buffer[4], NULL,
};
free(block->text.text);