/boot,/mdec,[T]MSCP (Part 14 of 22)

Steven M. Schultz sms at wlv.imsd.contel.com
Sat May 18 16:57:56 AEST 1991


Subject: Part 14 of 22 /boot,/mdec,[T]MSCP updates
Index:	/sys/<many>, /usr/src/etc/<several> 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) {



More information about the Comp.bugs.2bsd mailing list