--- src/fsck.fat.h
+++ src/fsck.fat.h
@@ -27,6 +27,7 @@
 #ifndef _DOSFSCK_H
 #define _DOSFSCK_H
 
+#include <fcntl.h>
 #include <sys/types.h>
 #define _LINUX_STAT_H		/* hack to avoid inclusion of <linux/stat.h> */
 #define _LINUX_STRING_H_	/* hack to avoid inclusion of <linux/string.h> */
--- src/io.h
+++ src/io.h
@@ -27,7 +27,7 @@
 #ifndef _IO_H
 #define _IO_H
 
-#include <sys/types.h>		/* for loff_t */
+#include <fcntl.h>		/* for loff_t */
 
 loff_t llseek(int fd, loff_t offset, int whence);
 
--- src/mkfs.fat.c
+++ src/mkfs.fat.c
@@ -49,6 +49,7 @@
 #include <fcntl.h>
 #include <linux/hdreg.h>
 #include <sys/mount.h>
+#include <linux/fs.h>
 #include <linux/fd.h>
 #include <endian.h>
 #include <mntent.h>
