1 $NetBSD: patch-aa,v 1.1.1.1 2006/03/29 21:42:55 ghen Exp $
3 --- fs.c.orig 2004-08-25 18:24:24.000000000 +0200
9 +#if defined (__NetBSD__) && (__NetBSD_Version__ >= 299000900)
10 +#include <sys/statvfs.h>
14 /* TODO: benchmark which is faster, fstatvfs() or pre-opened fd and
15 * statvfs() (fstatvfs() would handle mounts I think...) */
17 @@ -27,16 +32,25 @@ struct fs_stat *fs_stats = fs_stats_;
19 void update_fs_stats() {
26 for (i=0; i<16; i++) {
27 if (fs_stats[i].fd <= 0)
31 fstatfs(fs_stats[i].fd, &s);
33 fs_stats[i].size = (long long) s.f_blocks * s.f_bsize;
34 /* bfree (root) or bavail (non-roots) ? */
35 fs_stats[i].avail = (long long) s.f_bavail * s.f_bsize;
37 + fstatvfs(fs_stats[i].fd, &s);
38 + fs_stats[i].size = (int64_t) s.f_blocks * 1024;
39 + fs_stats[i].avail = (int64_t) s.f_bavail * 1024;