// Paper over the fact that 32-bit kernels use fstatfs64/statfs64 with // an extra argument, but 64-bit kernels don't have the "64" bit suffix or // the extra size_t argument. #ifdefined(__LP64__) extern"C"int __fstatfs(int, struct statfs*); extern"C"int __statfs(constchar*, struct statfs*); # define __fstatfs64(fd,size,buf) __fstatfs(fd,buf) # define __statfs64(path,size,buf) __statfs(path,buf) #else extern"C"int __fstatfs64(int, size_t, struct statfs*); extern"C"int __statfs64(constchar*, size_t, struct statfs*); #endif
// The kernel sets a private ST_VALID flag to signal to the C library // whether the f_flags field is valid. This flag should not be exposed to // users of the C library. #define ST_VALID 0x0020
int fstatfs(int fd, struct statfs* result) { int rc = __fstatfs64(fd, sizeof(*result), result); if (rc != 0) { return rc;
}
result->f_flags &= ~ST_VALID; return0;
}
__strong_alias(fstatfs64, fstatfs);
int statfs(constchar* path, struct statfs* result) { int rc = __statfs64(path, sizeof(*result), result); if (rc != 0) { return rc;
}
result->f_flags &= ~ST_VALID; return0;
}
__strong_alias(statfs64, statfs);
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet am 2026-06-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.