Subject: Disklabels arrive for 2.11BSD (#251 part 2 of 18)
Index:	sys,bin,usr.lib,(many more)/<many> 2.11BSD

Description:
	The moving the partitions tables out of the disk drivers and to
	a disklabel residing on the media has been on the wish list for
	many many years.

	Disklabels have finally arrived for 2.11BSD!

Repeat-By:
	Observation.  Also a reading of the setup and installation
	documentation for previous 2BSD releases (2.9, 2.10, 2.11)
	all have a paragraph similar to this present:

"It is possible to change the partitions by changing the code for the
table in the disk driver.  Since it's desirable to do this, these tables
really should be read off each pack...."

Fix:
	This is part 2 of 18.  Gather all parts before doing anything
	except reading the instructions which are in #250 (part 1).

	Updated by this part are:

/usr/src/sys/GENERIC/Makefile
/usr/src/sys/GENERIC/Make.pdp

	If you intend to simply run 'config GENERIC' from the /sys/conf
	directory you do not need to apply this patch.

	'Makefile' is updated to include the new kernel modules.   Also,
	the signed division routine needed to be included.

	'Make.pdp' is updated to pipe the output of "cpp" into "as" 
	instead of using temporary files.

	Cut where indicated and save to a file (/tmp/251) and
	then:

		patch -p0 < /tmp/251
		rm /tmp/251

-------------------------cut here------------------------
*** /usr/src/sys/GENERIC/Makefile.old	Mon Feb 20 19:55:38 1995
--- /usr/src/sys/GENERIC/Makefile	Fri Jun 16 19:46:33 1995
***************
*** 42,48 ****
  
  CONF=	scb.o libc_bcmp.o libc_bcopy.o libc_bzero.o libc_ffs.o \
  	libc_insque.o libc_ldiv.o libc_lmul.o libc_lrem.o libc_remque.o \
! 	libc_uldiv.o libc_ulsh.o \
  	libc_strlen.o mch_backup.o mch_click.o mch_copy.o mch_csv.o \
  	mch_dump.o mch_dzpdma.o mch_profile.o mch_start.o \
  	mch_trap.o mch_vars.o mch_xxx.o conf.o ioconf.o boot.o
--- 42,48 ----
  
  CONF=	scb.o libc_bcmp.o libc_bcopy.o libc_bzero.o libc_ffs.o \
  	libc_insque.o libc_ldiv.o libc_lmul.o libc_lrem.o libc_remque.o \
! 	libc_udiv.o libc_uldiv.o libc_ulsh.o \
  	libc_strlen.o mch_backup.o mch_click.o mch_copy.o mch_csv.o \
  	mch_dump.o mch_dzpdma.o mch_profile.o mch_start.o \
  	mch_trap.o mch_vars.o mch_xxx.o conf.o ioconf.o boot.o
***************
*** 53,59 ****
  	subr_rmap.o subr_xxx.o sys_inode.o sys_pipe.o trap.o tty.o \
  	tty_conf.o tty_subr.o tty_tb.o tty_tty.o ufs_alloc.o ufs_bio.o \
  	ufs_bmap.o ufs_dsort.o ufs_fio.o ufs_inode.o ufs_namei.o \
! 	ufs_subr.o vm_sched.o vm_text.o xp.o
  OV1=	sys_generic.o ufs_syscalls.o
  OV2=	kern_acct.o kern_exec.o kern_exit.o kern_fork.o kern_resource.o
  OV3=	clock.o cons.o kern_pdp.o kern_time.o \
--- 53,59 ----
  	subr_rmap.o subr_xxx.o sys_inode.o sys_pipe.o trap.o tty.o \
  	tty_conf.o tty_subr.o tty_tb.o tty_tty.o ufs_alloc.o ufs_bio.o \
  	ufs_bmap.o ufs_dsort.o ufs_fio.o ufs_inode.o ufs_namei.o \
! 	ufs_subr.o vm_sched.o xp.o
  OV1=	sys_generic.o ufs_syscalls.o
  OV2=	kern_acct.o kern_exec.o kern_exit.o kern_fork.o kern_resource.o
  OV3=	clock.o cons.o kern_pdp.o kern_time.o \
***************
*** 62,69 ****
  OV4=	hk.o init_main.o kern_prot.o tty_pty.o quota_kern.o quota_subr.o \
  	quota_ufs.o subr_log.o vm_swp.o vm_swap.o vm_proc.o toy.o
  OV5=	ht.o tm.o ts.o mem.o
! OV6=	tmscp.o rl.o
  OV7=	mch_fpsim.o kern_sysctl.o ingreslock.o
  
  KERNOBJ=${CONF} ${BASE} ${OV1} ${OV2} ${OV3} ${OV4} ${OV5} \
  	${OV6} ${OV7} ${OV8} ${OV9} ${OV10} ${OV11} ${OV12} \
--- 62,70 ----
  OV4=	hk.o init_main.o kern_prot.o tty_pty.o quota_kern.o quota_subr.o \
  	quota_ufs.o subr_log.o vm_swp.o vm_swap.o vm_proc.o toy.o
  OV5=	ht.o tm.o ts.o mem.o
! OV6=	tmscp.o ufs_disksubr.o
  OV7=	mch_fpsim.o kern_sysctl.o ingreslock.o
+ OV8=	vm_text.o rl.o
  
  KERNOBJ=${CONF} ${BASE} ${OV1} ${OV2} ${OV3} ${OV4} ${OV5} \
  	${OV6} ${OV7} ${OV8} ${OV9} ${OV10} ${OV11} ${OV12} \
*** /usr/src/sys/GENERIC/Make.pdp.old	Sat Jan 22 16:05:37 1994
--- /usr/src/sys/GENERIC/Make.pdp	Sun May 21 17:31:27 1995
***************
*** 9,15 ****
  # software without specific prior written permission. This software
  # is provided ``as is'' without express or implied warranty.
  #
! #	%W% (Berkeley) %G%
  #
  M=	../machine
  VPATH=	../machine
--- 9,15 ----
  # software without specific prior written permission. This software
  # is provided ``as is'' without express or implied warranty.
  #
! #	2.0 (2.11BSD GTE) 1995/05/21
  #
  M=	../machine
  VPATH=	../machine
***************
*** 48,56 ****
  	rm -f $*.s
  
  .s.o:
! 	${CPP} $*.s >_xx.s;
! 	${AS} - -o $*.o _xx.s;
! 	rm -f _xx.s
  
  all: assym.h ${COBJS} ${SOBJS} ../pdp/symbols.sort
  
--- 48,54 ----
  	rm -f $*.s
  
  .s.o:
! 	${CPP} $*.s | ${AS} -u -o $*.o
  
  all: assym.h ${COBJS} ${SOBJS} ../pdp/symbols.sort
  
*** /usr/src/sys/GENERIC/Make.sys.old	Mon Feb 20 19:54:52 1995
--- /usr/src/sys/GENERIC/Make.sys	Thu Apr 13 21:50:45 1995
***************
*** 9,15 ****
  # software without specific prior written permission. This software
  # is provided ``as is'' without express or implied warranty.
  #
! #	2.1 (2.11BSD GTE) 2/14/95
  #
  S=	../sys
  VPATH=	../sys
--- 9,15 ----
  # software without specific prior written permission. This software
  # is provided ``as is'' without express or implied warranty.
  #
! #	2.2 (2.11BSD GTE) 1994/04/13
  #
  S=	../sys
  VPATH=	../sys
***************
*** 30,35 ****
--- 30,36 ----
  	${S}/ufs_alloc.c ${S}/ufs_bio.c ${S}/ufs_bmap.c			\
  	${S}/ufs_dsort.c ${S}/ufs_fio.c ${S}/ufs_inode.c		\
  	${S}/ufs_mount.c ${S}/ufs_namei.c ${S}/ufs_subr.c		\
+ 	${S}/ufs_disksubr.c 						\
  	${S}/ufs_syscalls.c ${S}/uipc_syscalls.c ${S}/vm_proc.c		\
  	${S}/vm_sched.c ${S}/vm_swap.c ${S}/vm_swp.c ${S}/vm_text.c
  OBJS=	init_main.o init_sysent.o kern_acct.o kern_clock.o		\
***************
*** 43,48 ****
--- 44,50 ----
  	tty_subr.o tty_tb.o tty_tty.o ufs_alloc.o ufs_bio.o ufs_bmap.o	\
  	ufs_dsort.o ufs_fio.o ufs_inode.o ufs_mount.o ufs_namei.o	\
  	ufs_subr.o ufs_syscalls.o uipc_syscalls.o vm_proc.o vm_sched.o	\
+ 	ufs_disksubr.o							\
  	vm_swap.o vm_swp.o vm_text.o
  
  .c.o:
