Subject: kernel clock.c not compiling correctly for VAX410?
To: None <port-vax@netbsd.org>
From: NetBSD Mailing list <netbsd@mrynet.com>
List: port-vax
Date: 02/24/2000 08:03:11
I just experienced something rather strange with clock.c and a
VAX41 config file kernel build:
ld -N -Ttext 80000000 -e start -S -o netbsd ${SYSTEM_OBJ} vers.o
ka410.o: Undefined symbol `_clk_adrshift' referenced from text segment
ka410.o: Undefined symbol `_clk_tweak' referenced from text segment
ka410.o: Undefined symbol `_clk_page' referenced from text segment
ka410.o: Undefined symbol `_clk_page' referenced from text segment
ka410.o: Undefined symbol `_clk_page' referenced from text segment
ka410.o: Undefined symbol `_clk_page' referenced from text segment
ka410.o: Undefined symbol `_chip_clkread' referenced from data segment
ka410.o: Undefined symbol `_chip_clkwrite' referenced from data segment
I tried twice to build from a 'make clean,' and this still occured.
I finally rm'd clock.o and manually compiled clock.c with a define for
VAX410 added to the command used by make:
mod70# cc -O2 -Werror -Wall -Wmissing-prototypes -Wstrict-prototypes
-Wpointer-arith -Wno-main -mno-pic -I. -I../../../../arch -I../../../..
-nostdinc -I../../../../../gnu/sys -DLKM -DMAXUSERS=16 -D_KERNEL
-D_VAX_INLINE_ -DVAX410=1 -c ../../../../arch/vax/vax/clock.c
The kernel then linked successfully with 'make.' I rebooted, and the
kernel seems happy so far.
mod70# uname -a
NetBSD mod70.mrynet.lv 1.4S NetBSD 1.4S (PUTZVAX) #4: Thu Feb 24 07:40:47 PST 2000
staylor@mod70.mrynet.lv:/usr/src/sys/arch/vax/compile/PUTZVAX vax
Trying to determine the possibility of a local desync with the source tree,
I re-supped and checked about and did find the VAX410 define after a config:
mod70# grep 410 *.h
opt_vax410.h:#define VAX410 1
My particular config file is tacked on the email below. Perhaps there is
actually an oversight in the config file, but that would seem unlikely since
compiling clock.o explicitly with the define resolved the issue.
Can anyone suggest what I might check further for a desync, or perhaps build
a kernel with the below config file to confirm whether the problem lies
within my local tree or not?
Thanks,
-skots
--
Scott G. Akmentins-Taylor InterNet: staylor@mrynet.com
MRY Systems staylor@mrynet.lv
(Skots Gregorijs Akmentins-Teilors -- just call me "Skots")
----- Labak miris neka sarkans -----
====================================
#
# PUTZVAX VAX configuration file; mod70.mrynet.lv
#
include "arch/vax/conf/std.vax"
# Here are all different supported CPU types listed.
# Here are all different supported CPU types listed.
#options "VAX8600"
#options "VAX8200"
#options "VAX780"
#options "VAX750"
#options "VAX630" # MV II
#options "VAX650" # MV III, 3600, 3800, 3900
#options "VAX670" # VAX 4000/300
options "VAX410" # VS 2000, 3100
#options "VAX43" # VS 3100/76
#options "VAX46" # VS 4000/60
#options "VAX48" # VS 4000 VLC
#options "VAX49" # VS 4000/90
# Max users on system; this is just a hint
maxusers 16
# 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
# 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
#file-system LFS
#file-system MFS
file-system NFS
#file-system FDESC
#file-system KERNFS
#file-system NULLFS
#file-system OVERLAY # overlay file system
file-system PROCFS
#file-system UMAPFS
#file-system UNION
file-system CD9660
#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.
# WS console uses VT100 terminal emulation
options WSEMUL_VT100
options WSDISPLAY_DEFAULTSCREENS=8
# System V shared memory & semaphores support.
options SYSVMSG
options SYSVSEM
options SYSVSHM
# Old compat stuff; needed to run 4.3BSD Reno programs.
# Note that if COMPAT_ULTRIX is set, you lose compatibility with
# 4.3BSD Reno programs and get Ultrix compatibility instead.
# (They cannot coexist).
#options COMPAT_VAX1K # Must be present to run pre-1.4 binaries.
#options COMPAT_43
#options COMPAT_09
#options COMPAT_10
#options COMPAT_11
#options COMPAT_12
#options COMPAT_13
#options COMPAT_14
##options COMPAT_ULTRIX
#options COMPAT_IBCS2 # DEC SVR.3 compatilibity
options LKM
# Kernel(s) to compile
config netbsd root on ? type ?
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
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 ncr?
sd* at scsibus? target? lun?
st* at scsibus? target? lun?
cd* at scsibus? target? lun?
ch* at scsibus? target? lun?
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 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
# rnd is EXPERIMENTAL
#pseudo-device rnd # /dev/random and in-kernel generator