Index: uspace/app/mkminix/mkminix.c
===================================================================
--- uspace/app/mkminix/mkminix.c	(revision 14c29babfbbf6ce69928f4a67451bae2766ad0de)
+++ uspace/app/mkminix/mkminix.c	(revision 92dd5c81a89fafffe5c80dda47f066c9573f63a9)
@@ -58,5 +58,5 @@
 #define UPPER(n, size) 			(((n) / (size)) + (((n) % (size)) != 0))
 #define NEXT_DENTRY(p, dirsize)		(p += dirsize)
-#define FIRST_ZONE(bs)			((MFS_BOOTBLOCK_SIZE + MFS_SUPERBLOCK_SIZE) / (bs))
+#define FIRST_ZONE(bs)			(1 + (bs) / MFS_MIN_BLOCKSIZE)
 #define CONVERT_1K_OFF(off, bs)		((off) * ((bs) / MFS_MIN_BLOCKSIZE))
 
@@ -329,5 +329,6 @@
 
 	/*Convert to 1K offset*/
-	itable_off = CONVERT_1K_OFF(itable_off, sb->block_size) + 2;
+	itable_off = CONVERT_1K_OFF(itable_off, sb->block_size) +
+					FIRST_ZONE(sb->block_size);
 	itable_size = CONVERT_1K_OFF(sb->itable_size, sb->block_size);
 
@@ -392,5 +393,6 @@
 
 	/*Convert to 1K block offset*/
-	itable_off = CONVERT_1K_OFF(itable_off, sb->block_size) + 2;
+	itable_off = CONVERT_1K_OFF(itable_off, sb->block_size) +
+					FIRST_ZONE(sb->block_size);
 
 	const time_t sec = time(NULL);
@@ -468,5 +470,5 @@
 
 	/*Compute first data zone position*/
-	sb->first_data_zone = FIRST_ZONE(sb->block_size) + sb->itable_size + 
+	sb->first_data_zone = 2 + sb->itable_size + 
 				sb->zbmap_blocks + sb->ibmap_blocks;
 
@@ -582,5 +584,5 @@
 	zbmap_buf8 = (uint8_t *) zbmap_buf;
 
-	int start_block = 2;
+	int start_block = FIRST_ZONE(sb->block_size);
 
 	for (i = 0; i < ibmap_nblocks; ++i) {
@@ -590,5 +592,5 @@
 	}
 
-	start_block = 2 + ibmap_nblocks;
+	start_block = FIRST_ZONE(sb->block_size) + ibmap_nblocks;
 
 	for (i = 0; i < zbmap_nblocks; ++i) {
