From 0561316344ab6497340d85fba4f680641da33c89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Dejean?= Date: Mon, 28 Feb 2005 08:54:41 +0000 Subject: [PATCH] Forgot to add this file. * fsusage.c: (_glibtop_freebsd_get_fsusage_read_write): Forgot to add this file. --- sysdeps/freebsd/ChangeLog | 5 +++++ sysdeps/freebsd/fsusage.c | 41 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 sysdeps/freebsd/fsusage.c diff --git a/sysdeps/freebsd/ChangeLog b/sysdeps/freebsd/ChangeLog index e6a1e2cc..d4157c1a 100644 --- a/sysdeps/freebsd/ChangeLog +++ b/sysdeps/freebsd/ChangeLog @@ -1,3 +1,8 @@ +2005-02-28 Benoît Dejean + + * fsusage.c: (_glibtop_freebsd_get_fsusage_read_write): Forgot to add + this file :) + 2005-02-28 Benoît Dejean * Makefile.am: diff --git a/sysdeps/freebsd/fsusage.c b/sysdeps/freebsd/fsusage.c new file mode 100644 index 00000000..b8245407 --- /dev/null +++ b/sysdeps/freebsd/fsusage.c @@ -0,0 +1,41 @@ +#include +#include +#include + +#include + +#include + +#include +#include +#include + +#include +#include +#include + +void +G_GNUC_INTERNAL +_glibtop_freebsd_get_fsusage_read_write(glibtop *server, + glibtop_fsusage *buf, + const char *path); + +void G_GNUC_INTERNAL +_glibtop_freebsd_get_fsusage_read_write(glibtop *server, + glibtop_fsusage *buf, + const char *path) +{ + int result; + struct statfs sfs; + + result = statfs (path, &sfs); + + if (result == -1) { + return; + } + + buf->read = sfs.f_syncreads + sfs.f_asyncreads; + buf->write = sfs.f_syncwrites + sfs.f_asyncwrites; + + buf->flags |= (1 << GLIBTOP_FSUSAGE_READ) | (1 << GLIBTOP_FSUSAGE_WRITE); +}