X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=lib%2Fmountcheck.c;h=0aec7441f91d412a01fc17d1ec083415f3f58e26;hp=e8780eb3b46a166f81726c9a2966a1a0c901a465;hb=b765bec0be97ef05e5af6cfbf4e0a2c8b7596a03;hpb=78475ac3b9453eff01c34778d70a2aed4aecffe8;ds=sidebyside diff --git a/lib/mountcheck.c b/lib/mountcheck.c index e8780eb3..0aec7441 100644 --- a/lib/mountcheck.c +++ b/lib/mountcheck.c @@ -32,7 +32,7 @@ int device_is_mounted(const char *dev) } #elif defined(CONFIG_GETMNTINFO) -/* for BSDs */ +/* for most BSDs */ #include #include @@ -53,6 +53,27 @@ int device_is_mounted(const char *dev) return 0; } +#elif defined(CONFIG_GETMNTINFO_STATVFS) +/* for NetBSD */ +#include + +int device_is_mounted(const char *dev) +{ + struct statvfs *st; + int i, ret; + + ret = getmntinfo(&st, MNT_NOWAIT); + if (ret <= 0) + return 0; + + for (i = 0; i < ret; i++) { + if (!strcmp(st[i].f_mntfromname, dev)) + return 1; + } + + return 0; +} + #else /* others */