--- ../common/exf.c
+++ ../common/exf.c
@@ -228,13 +228,18 @@
 		/*
 		 * XXX
 		 * A seat of the pants calculation: try to keep the file in
-		 * 15 pages or less.  Don't use a page size larger than 10K
+		 * 15 pages or less.  Don't use a page size larger than 8K
-		 * (vi should have good locality) or smaller than 1K.
+		 * (vi should have good locality) or smaller than 1K. DB asks
+		 * for a power of two, so give it one.
 		 */
 		psize = ((sb.st_size / 15) + 1023) / 1024;
-		if (psize > 10)
+		if (psize >= 8)
-			psize = 10;
+			psize = 8;
+		else if (psize >= 4)
+			psize = 4;
+		else if (psize >= 2)
+			psize = 2;
-		if (psize == 0)
+		else
 			psize = 1;
 		psize *= 1024;