blob: a8b721951270549c328e3b0b6ded00e849f3c05a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
--- 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;
|