Subject: Part 14 of 22 /boot,/mdec,[T]MSCP updates Index: /sys/, /usr/src/etc/ 2.11BSD Description: Repeat-By: Fix: See part 0 (the README) for the Description, the Reason and the instructions on how update your system. This is part 14 of 22 The [T]MSCP arena is added in to the estimated system memory requirements. The memory requirements calculation was overflowing due to 'long' vs. 'int' problems, resulting in megabyte size estimates for the system - this was fixed. *** /usr/src/sys/conf/checksys.c.old Thu May 31 15:18:19 1990 --- /usr/src/sys/conf/checksys.c Sat Mar 30 21:39:12 1991 *************** *** 37,42 **** --- 37,43 ---- #define N_XITDESC 18 #define N_QUOTDESC 19 #define N_NAMECACHE 20 + #define N_IOSIZE 21 struct nlist nl[] = { { "_end" }, /* 0 */ *************** *** 60,65 **** --- 61,67 ---- { "_xitdesc" }, /* 18 */ { "_quotdes" }, /* 19 */ { "_namecac" }, /* 20 */ + { "__iosize" }, /* 21 */ { "" }, }; *************** *** 223,229 **** if (nl[N_END].n_value < 0120000) printf("Data ends %u bytes below the remapping area (0120000-0140000, KDSD5)\nyou may define NOKA5.\n", 0120000 - nl[N_END].n_value); } ! totsize += cround(getval(N_NBUF) * getval(N_BSIZE)); if (nl[N_CLIST].n_value) totsize += cround(getval(N_CLIST) * (long)sizeof(struct cblock)); if (nl[N_RAM].n_type) --- 225,231 ---- if (nl[N_END].n_value < 0120000) printf("Data ends %u bytes below the remapping area (0120000-0140000, KDSD5)\nyou may define NOKA5.\n", 0120000 - nl[N_END].n_value); } ! totsize += (getval(N_NBUF) * getval(N_BSIZE)); if (nl[N_CLIST].n_value) totsize += cround(getval(N_CLIST) * (long)sizeof(struct cblock)); if (nl[N_RAM].n_type) *************** *** 234,239 **** --- 236,243 ---- totsize += (ninode * 3 * sizeof (long)); if (nl[N_NAMECACHE].n_type) totsize += (ninode * sizeof(struct namecache)); + if (nl[N_IOSIZE].n_type) + totsize += getval(N_IOSIZE); totsize += ctob(USIZE); printf("System will occupy %ld bytes of memory (including buffers and clists).\n", totsize); for (i = 0;nl[i].n_name[0];++i) { *************** *** 260,266 **** if ((nl[indx].n_type&N_TYPE) == N_BSS) return((long)0); ! offst = nl[indx].n_value + obj.a_text + sizeof(obj); if (obj.a_magic == A_MAGIC2 || obj.a_magic == A_MAGIC5) offst -= (off_t)round(obj.a_text); if (obj.a_magic == A_MAGIC5 || obj.a_magic == A_MAGIC6) { --- 264,272 ---- if ((nl[indx].n_type&N_TYPE) == N_BSS) return((long)0); ! offst = nl[indx].n_value; ! offst += obj.a_text; ! offst += sizeof(obj); if (obj.a_magic == A_MAGIC2 || obj.a_magic == A_MAGIC5) offst -= (off_t)round(obj.a_text); if (obj.a_magic == A_MAGIC5 || obj.a_magic == A_MAGIC6) {