fix freebsd
diff --git a/src/cmd/venti/srv/part.c b/src/cmd/venti/srv/part.c
index 9b80b6e..be53d8b 100644
--- a/src/cmd/venti/srv/part.c
+++ b/src/cmd/venti/srv/part.c
@@ -1,7 +1,13 @@
 #ifdef PLAN9PORT	/* SORRY! */
 #include <u.h>
 #include <sys/types.h>
+#ifdef __linux__	/* REALLY SORRY! */
+#define CANBLOCKSIZE 1
 #include <sys/vfs.h>
+#elif defined(__FreeBSD__)
+#define CANBLOCKSIZE 1
+#include <sys/param.h>
+#include <sys/mount.h>
 #endif
 #include "stdinc.h"
 #include <ctype.h>
@@ -137,7 +143,7 @@
 	if(hi == 0)
 		hi = dir->length;
 	part->size = hi - part->offset;
-#ifdef _LIBC_H_
+#ifdef CANBLOCKSIZE
 	{
 		struct statfs sfs;
 		if(fstatfs(part->fd, &sfs) >= 0)