Subject: port-vax/10506: building ramdisk is broken in 1.4X
To: None <gnats-bugs@gnats.netbsd.org>
From: Chuck McManis <cmcmanis@evax.hq.home.mcmanis.com>
List: netbsd-bugs
Date: 07/04/2000 13:09:23
>Number:         10506
>Category:       port-vax
>Synopsis:       building ramdisk is broken in 1.4X
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-vax-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jul 04 13:10:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Chuck McManis
>Release:        1.4X
>Organization:
	
>Environment:
System: NetBSD evax.hq.home.mcmanis.com 1.4V NetBSD 1.4V (GENERIC) #2: Sat Mar 25 00:29:57 PST 2000 root@evax.hq.home.mcmanis.com:/usr/src/sys/arch/vax/compile/GENERIC vax

part of the release source tree.

>Description:
	There are several problems building the kernel with the embedded
	ram disk in the vax port. This bug describes the changes I made
	to get the system to build.
	
	The problems were as follows:
	1) The reserved space in the kernel is too small.
	2) The build failed on the ramdisk binary.
	3) The INSTALL kernel file would not config.

>How-To-Repeat:
	On a built -current system, cd to the distrib/vax directory and
	type make.
>Fix:
	I've included fixes in the form of context diffs from my CVS
	tree to the main tree:

Index: Makefile
===================================================================
RCS file: /cvsroot/basesrc/distrib/vax/ramdisk/Makefile,v
retrieving revision 1.3
diff -c -r1.3 Makefile
*** Makefile	2000/03/04 16:06:41	1.3
--- Makefile	2000/04/24 03:46:56
***************
*** 25,31 ****
  MTREE=		mtree.conf
  
  DISKTYPE=	ramdisk
! DISKSIZE=	2112
  
  install.sh: install.tmpl
  	sed "s/@@VERSION@@/${VER}/" < ${.ALLSRC} > ${.TARGET}
--- 25,31 ----
  MTREE=		mtree.conf
  
  DISKTYPE=	ramdisk
! DISKSIZE=	2400
  
  install.sh: install.tmpl
  	sed "s/@@VERSION@@/${VER}/" < ${.ALLSRC} > ${.TARGET}

Index: list
===================================================================
RCS file: /cvsroot/basesrc/distrib/vax/ramdisk/list,v
retrieving revision 1.5
diff -c -r1.5 list
*** list	2000/03/04 16:06:41	1.5
--- list	2000/04/24 03:47:24
***************
*** 104,107 ****
  # SPECIAL	chmod 755 start
  
  #the lists of obsolete files used by sysinst  
! SPECIAL sh ${CURDIR}/../../../../distrib/sets/makeobsolete -b -s ${CURDIR}/../../../distrib/sets -t ./dist
--- 104,107 ----
  # SPECIAL	chmod 755 start
  
  #the lists of obsolete files used by sysinst  
! SPECIAL sh ${CURDIR}/../../../distrib/sets/makeobsolete -b -s ${CURDIR}/../../../distrib/sets -t ./dist

Index: ramdiskbin.conf
===================================================================
RCS file: /cvsroot/basesrc/distrib/vax/ramdisk/ramdiskbin.conf,v
retrieving revision 1.4
diff -c -r1.4 ramdiskbin.conf
*** ramdiskbin.conf	2000/03/04 16:06:41	1.4
--- ramdiskbin.conf	2000/04/24 03:47:44
***************
*** 36,39 ****
  ln restore rrestore
  ln pax tar
  
! libs -ledit -lutil -lcurses -ltermcap -lrmt -lcrypt -ll -lm
--- 36,39 ----
  ln restore rrestore
  ln pax tar
  
! libs -ledit -lutil -lcurses -ltermcap -lrmt -lcrypt -ll -lm -lbz2


Index: INSTALL
===================================================================
RCS file: /cvsroot/syssrc/sys/arch/vax/conf/INSTALL,v
retrieving revision 1.3
diff -c -r1.3 INSTALL
*** INSTALL	2000/03/04 16:21:05	1.3
--- INSTALL	2000/04/24 03:50:43
***************
*** 1,10 ****
! #	$NetBSD: INSTALL,v 1.3 2000/03/04 16:21:05 ragge Exp $
  #
! # INSTALL kernel; all supported devices but nothing fancy.
  #
  
  include		"arch/vax/conf/std.vax"
  
  # Here are all different supported CPU types listed.
  options 	"VAX8600"
  options 	"VAX8200"
--- 1,13 ----
! #	$NetBSD: GENERIC,v 1.60 2000/03/09 02:05:07 matt Exp $
  #
! # INSTALL VAX configuration file; all supported devices.
! # derived from GENERIC -cem
  #
  
  include		"arch/vax/conf/std.vax"
  
+ #ident 		"INSTALL-$Revision: 1.60 $"
+ 
  # Here are all different supported CPU types listed.
  options 	"VAX8600"
  options 	"VAX8200"
***************
*** 20,45 ****
  options 	"VAX49"		# VS 4000/90
  
  # Max users on system; this is just a hint
  maxusers	8
  
! # Enable the hooks used for initializing the root memory-disk.
! options 	MEMORY_DISK_HOOKS
! options 	MEMORY_DISK_IS_ROOT     # force root on memory disk
! options 	MEMORY_DISK_SERVER=0    # no userspace memory disk support
! options 	MINIROOTSIZE=2112       # size of memory disk, in blocks
  
  
  # Kernel compiled-in symbolic debugger & system call tracer
  #options 	DDB
  #options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
  #options 	KTRACE
! #options 	DIAGNOSTIC,DEBUG,KMEMSTATS,PMAPDEBUG,TRAPDEBUG
  
  #options 	SCSIVERBOSE		# Verbose SCSI errors
  
  # Network support
  #options 	GATEWAY
  options         INET
  
  # All supported filesystem types
  file-system 	FFS
--- 23,70 ----
  options 	"VAX49"		# VS 4000/90
  
  # Max users on system; this is just a hint
+ # Max users reduced a bit on RAM kernel to save memory space
  maxusers	8
  
! #
! # Memory disk hooks for the installation kernel
! #
! options	MEMORY_DISK_HOOKS	# enable hooks
! options	MEMORY_DISK_IS_ROOT	# force root here
! options MEMORY_DISK_SERVER=0	# disable user space MD support
! options MINIROOTSIZE=2400	# size of disk, in blocks.
  
  
  # Kernel compiled-in symbolic debugger & system call tracer
+ #makeoptions	DEBUG="-g"
  #options 	DDB
  #options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
  #options 	KTRACE
! #options 	DIAGNOSTIC
! #options 	DEBUG,KMEMSTATS,PMAPDEBUG,TRAPDEBUG
  
  #options 	SCSIVERBOSE		# Verbose SCSI errors
  
+ # Pull in config fragments for kernel crypto.  This is required for
+ # options IPSEC etc. to work. If you want to run with IPSEC, uncomment
+ # one of these, based on whether you use crypto-us or crypto-intl, and
+ # adjust the prefixes as necessary.
+ 
+ #prefix ../crypto-us/sys
+ #cinclude "conf/files.crypto-us"
+ #prefix
+ 
+ #prefix ../crypto-intl/sys
+ #cinclude "conf/files.crypto-intl"
+ #prefix
+ 
  # Network support
  #options 	GATEWAY
  options         INET
+ #options 	INET6		# IPV6
+ #options 	IPSEC		# IP security
+ #options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
+ #options 	IPSEC_DEBUG	# debug for IP security
  
  # All supported filesystem types
  file-system 	FFS
***************
*** 49,54 ****
--- 74,80 ----
  #file-system 	FDESC
  file-system 	KERNFS
  #file-system 	NULLFS
+ #file-system 	OVERLAY		# overlay file system
  #file-system 	PROCFS
  #file-system 	UMAPFS
  #file-system 	UNION
***************
*** 56,61 ****
--- 82,88 ----
  
  #options 	QUOTA
  #options 	FFS_EI		# FFS Endian Independant support
+ #options 	SOFTDEP         # FFS soft updates support.
  #options 	NFSSERVER
  #options 	NFS_BOOT_BOOTP,NFS_BOOT_DHCP	# Use bootp <> dhcp
  #options 	NFS_BOOT_BOOTPARAM	# Use the Sun way for netbooting.
***************
*** 82,88 ****
  #options 	COMPAT_13
  options 	COMPAT_14
  #options 	COMPAT_ULTRIX
! #options 	TCP_COMPAT_42
  
  #options 	LKM
  
--- 109,115 ----
  #options 	COMPAT_13
  options 	COMPAT_14
  #options 	COMPAT_ULTRIX
! #options 	COMPAT_IBCS2	# DEC SVR.3 compatilibity
  
  #options 	LKM
  
***************
*** 91,154 ****
  
  mainbus0	at root
  
! # Devices directly attached to mainbus.
! cpu0		at mainbus0	# Only one CPU so far.
! sbi*		at mainbus0	# SBI's are always at mainbus (Abus).
! mem*		at mainbus0	# Some machines have memory at mainbus.
! bi*		at mainbus0	# VAXBI bus
! cmi0		at mainbus0	# 11/750 internal bus.
! uba0		at mainbus0	# MicroVAXen only have QBUS.
! vsbus0		at mainbus0	# Internal "virtual" VAXstation bus
  
  # Devices connected at VAXBI
! cpu0		at bi? node?	# KA820/KA825 cpu
! cpu*		at bi? node?
! mem*		at bi? node?	# Memory subsystems
! uba*		at bi? node?	# DWBUA BI-Unibus adapter
! #ni*		at bi? node?	# DEBNA/DEBNT ethernet adapter
! kdb*		at bi? node?	# KDB50 MSCP disk ctlr
! mscpbus*	at kdb?
! 
! # Devices connected at cmi
! mem*		at cmi? tr?	# Memory subsystems
! uba*		at cmi? tr?	# Unibus adapters
! mba*		at cmi? tr?	# Massbus adapters
! 
! # Devices connected at sbi
! mem*		at sbi? tr?	# Memory subsystems
! uba*		at sbi? tr?	# Unibus adapters
! mba*		at sbi? tr?	# Massbus adapters
  
  # Devices on Massbus adapters
! hp*		at mba? drive?	# RM/RP disk drives
  
! # Disk controllers at Unibus
  uda0		at uba?	csr 0172150	# UDA50/RQDX?
  uda1		at uba?	csr 0160334
- mscpbus*	at uda?
- 
- # Tape drivers
  mtc0		at uba? csr 0174500	# Tape MSCP ctlr
! mscpbus*	at mtc?
  
  # MSCP devices
  ra*		at mscpbus? drive?	# MSCP disk
  rx*		at mscpbus? drive?	# MSCP floppy
  mt*		at mscpbus? drive?	# MSCP tape
  
- # Unibus tapes
- #ts0		at uba? csr 0172520	# TS11/TSV05 tape.
- 
  # VS2000 builtin MFM controller (HDC9224)
  #hdc0		at vsbus0		# The strange builtin MFM controller
- #rd*		at hdc0 drive?		# The RD disk subsystem on VS2000
  
! # SCSI controllers.
! ncr0		at vsbus0 csr 0x200c0080 # VS2000/3100 SCSI-controller (5380)
! ncr1		at vsbus0 csr 0x200c0180 # VS2000/3100 SCSI-controller (5380)
  scsibus*	at ncr?
  
- # SCSI devices
  sd*		at scsibus? target? lun?
  st*		at scsibus? target? lun?
  cd*		at scsibus? target? lun?
--- 118,205 ----
  
  mainbus0	at root
  
! # All buses; from the beginning attached to mainbus.
! abus0		at mainbus0		# Master bus on VAX 8600
! sbi0		at mainbus0		# SBI, master bus on 11/780.
! cmi0		at mainbus0		# 11/750 internal bus.
! bi0		at mainbus0		# VAX 8200 
! vsbus0		at mainbus0		# All VAXstations
! ibus0		at mainbus0		# All Microvax
! #nbi0		at mainbus0		# VAX 8800
! #xmi0		at mainbus0		# VAX 6000
! 
! # Vsbus, the virtual VAXstation bus, and possible devices.
! le0		at vsbus0 csr 0x200e0000 # LANCE ethernet
! ze0		at vsbus0 csr 0x20008000 # SGEC ethernet
! dz0		at vsbus0 csr 0x200a0000 # DC-367 DZ-11 lookalike ctlr
! dz0		at vsbus0 csr 0x25000000 # VS4000/90 serial line
! #hdc0		at vsbus0 csr 0x200c0000 # HDC9224 MFM/floppy ctlr
! ncr0		at vsbus0 csr 0x200c0080 # VS2000/3100 SCSI-ctlr
! asc0		at vsbus0 csr 0x200c0080 # VS4000 SCSI-ctlr
! ncr1		at vsbus0 csr 0x200c0180 # VS2000/3100 SCSI-ctlr
! smg0		at vsbus0 csr 0x200f0000 # Small monochrome display ctlr.
! #clr0		at vsbus0 csr 0x30000000 # 4- or 8-bitplans color graphics
! 
! #rd*		at hdc0 drive?		# RD5x disks
! #ry*		at hdc0 drive?		# RX floppies
! 
! # Ibus, the internal bus on most Microvaxen
! uba0		at ibus0 		# Qbus adapter
! ze0		at ibus0 		# SGEC on-board ethernet
! #shac0		at ibus0 		# DSSI controller
  
  # Devices connected at VAXBI
! cpu*		at bi? node?		# KA820/KA825 cpu
! mem*		at bi? node?		# Memory subsystems
! #uba*		at bi? node?		# DWBUA BI-Unibus adapter
! #ni*		at bi? node?		# DEBNA/DEBNT ethernet adapter
! #kdb*		at bi? node?		# KDB50 MSCP disk ctlr
! #mscpbus*	at kdb?
! 
! # CMI (VAX 11/750)
! mem*		at cmi? tr?		# Memory subsystems
! uba*		at cmi? tr?		# Unibus adapters
! mba*		at cmi? tr?		# Massbus adapters
! 
! # SBI (VAX 11/780, VAX 8600)
! sbi*		at abus0		# VAX 8600 can have up to 4 SBI's.
! 
! mem*		at sbi? tr?		# Memory subsystems
! uba*		at sbi? tr?		# Unibus adapters
! mba*		at sbi? tr?		# Massbus adapters
  
  # Devices on Massbus adapters
! hp*		at mba? drive?		# RM/RP disk drives
  
! # Devices on Unibus/Qbus adapters
  uda0		at uba?	csr 0172150	# UDA50/RQDX?
  uda1		at uba?	csr 0160334
  mtc0		at uba? csr 0174500	# Tape MSCP ctlr
! #ts0		at uba? csr 0172520	# TS11/TSV05 tape.
! #qd0		at uba? csr 0177400	# 4- or 8-bitplans color graphics
! #qv0		at uba? csr 0177400	# Monochrome graphics
! #de0		at uba? csr 0174510	# DELUA/DEUNA
! qe0		at uba? csr 0174440	# DEQNA/DELQA
! dhu0		at uba? csr 0160440	# DHU-11
! dz0		at uba? csr 0160100	# DZ-11
! dl0		at uba? csr 0176500	# DL-11
  
  # MSCP devices
+ mscpbus*	at uda?
+ mscpbus*	at mtc?
+ #mscpbus*	at kdb?
+ 
  ra*		at mscpbus? drive?	# MSCP disk
  rx*		at mscpbus? drive?	# MSCP floppy
  mt*		at mscpbus? drive?	# MSCP tape
  
  # VS2000 builtin MFM controller (HDC9224)
  #hdc0		at vsbus0		# The strange builtin MFM controller
  
! # SCSI devices
! scsibus*	at asc?
  scsibus*	at ncr?
  
  sd*		at scsibus? target? lun?
  st*		at scsibus? target? lun?
  cd*		at scsibus? target? lun?
***************
*** 156,191 ****
  #ss*		at scsibus? target? lun?
  #uk*		at scsibus? target? lun?
  
- # Graphic adapters.
- qd0		at uba? csr 0177400
- 
- # Ethernet cards
- de0		at uba? csr 0174510	# DELUA/DEUNA
- qe0		at uba? csr 0174440	# DEQNA/DELQA
- ln0		at vsbus0 csr 0x200e0000# LANCE
- 
- # Terminal lines
- dhu0		at uba? csr 0160440	# DHU-11
- dz0		at uba? csr 0160100	# DZ-11
- dz0		at vsbus0 csr 0x200a0000# DC-367
- dl0		at uba? csr 0176500	# DL-11
- 
  # VAXstation graphics support
! smg0		at vsbus0 csr 0x200f0000# Small monochrome display ctlr.
! wsdisplay0	at smg0			# display device driver.
! lkc0		at dz0			# Keyboard LK201
  
  pseudo-device   loop	1
! pseudo-device   pty	8
! #pseudo-device	bpfilter 8	# Not supported by de yet.
  pseudo-device	sl	2
  #pseudo-device	ppp	2
  #pseudo-device	tun	2
! #pseudo-device	gre		2	# generic L3 over IP tunnel
  #pseudo-device	tb	1
  #pseudo-device	vnd	4
  #pseudo-device	ccd	4
  #pseudo-device	raid	4		# RAIDframe disk driver
  # rnd is EXPERIMENTAL
  #pseudo-device	rnd			# /dev/random and in-kernel generator
- pseudo-device	md	1
--- 207,233 ----
  #ss*		at scsibus? target? lun?
  #uk*		at scsibus? target? lun?
  
  # VAXstation graphics support
! wsdisplay0	at smg0
! #wsdisplay0	at clr0
! #wsdisplay0	at qd0
! #wsdisplay0	at qv0
! lkc0		at dz0
  
  pseudo-device   loop	1
! pseudo-device   pty	48
! #pseudo-device	bpfilter 8		# Not supported by de yet.
  pseudo-device	sl	2
+ pseudo-device	md	1
  #pseudo-device	ppp	2
  #pseudo-device	tun	2
! #pseudo-device	gre	2		# generic L3 over IP tunnel
! #pseudo-device	gif	4		# IPv[46] over IPv[46] tunnel (RFC1933)
! #pseudo-device	faith	1		# IPv[46] tcp relay translation i/f
  #pseudo-device	tb	1
  #pseudo-device	vnd	4
  #pseudo-device	ccd	4
  #pseudo-device	raid	4		# RAIDframe disk driver
+ #options 	RAID_AUTOCONFIG		# auto-configuration of RAID components
  # rnd is EXPERIMENTAL
  #pseudo-device	rnd			# /dev/random and in-kernel generator
>Release-Note:
>Audit-Trail:
>Unformatted: