UPAGES and 4.2BSD

walsh at BBN-LABS-B.ARPA walsh at BBN-LABS-B.ARPA
Mon Jun 25 22:16:32 AEST 1984


From:  Bob Walsh <walsh at BBN-LABS-B.ARPA>


If you need to increase the size of the kernel stack, you can increase
UPAGES in vax/param.h from 8 to 10.  If you do so, you'll run into the
following problems:
	1.  a make doesn't recompile anything
	2.  after touching all the appropriate files, the booted system
	    crashes
To fix the problem, you need to edit vax/locore.s.  (If you edit
mysys/locore.c, your edited locore.c is thrown away by the make rules.)
In locore.s, the subroutine Fastreclaim should be more properly coded as:

*** locore.s	Sun Jun 24 18:52:02 1984
--- locore.old	Tue Jun 19 15:26:23 1984
***************
*** 1161,1167
  	movl	$1,r2			#	type = CTEXT;
  	jbr	3f
  2:
! 	subl3	P_SSIZE(r5),$(0x400000-UPAGES),r0
  	cmpl	r3,r0
  	jgequ	2f			# } else if (isadsv(p, v)) {
  	ashl	$2,r3,r4

--- 1157,1163 -----
  	movl	$1,r2			#	type = CTEXT;
  	jbr	3f
  2:
! 	subl3	P_SSIZE(r5),$0x3ffff8,r0
  	cmpl	r3,r0
  	jgequ	2f			# } else if (isadsv(p, v)) {
  	ashl	$2,r3,r4
***************
*** 1171,1177
  2:
  	cvtwl	P_SZPT(r5),r4		# } else (isassv(p, v)) {
  	ashl	$7,r4,r4
! 	subl2	$0x400000,r4
  	addl2	r3,r4
  	ashl	$2,r4,r4
  	addl2	P_P0BR(r5),r4		#	sptopte(p, vtosp(p, v));

--- 1167,1173 -----
  2:
  	cvtwl	P_SZPT(r5),r4		# } else (isassv(p, v)) {
  	ashl	$7,r4,r4
! 	subl2	$(0x3ffff8+UPAGES),r4
  	addl2	r3,r4
  	ashl	$2,r4,r4
  	addl2	P_P0BR(r5),r4		#	sptopte(p, vtosp(p, v));

bob walsh



More information about the Comp.unix.wizards mailing list