diff options
| author | Federico Angelilli <code@fedang.net> | 2024-09-11 23:11:47 +0200 |
|---|---|---|
| committer | Federico Angelilli <code@fedang.net> | 2024-09-11 23:11:47 +0200 |
| commit | 2907d743760f74a01a77dca91c4f74ac849517b5 (patch) | |
| tree | eba0a65d8e76814f3d2dd6b538dc6237459450d2 /src | |
| parent | b94e342ea59c9d13ef1e380834534c1c1c8a83ec (diff) | |
Add fs percentages
Diffstat (limited to 'src')
| -rw-r--r-- | src/blocks/fs.c | 17 |
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); |
