Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Dec 1997 14:15:11 -0500
From:      "James E. Housley" <housley@pr-comm.com>
To:        freebsd-hackers@freebsd.org
Subject:   Crash installing over a lp network
Message-ID:  <349EBC3F.8F03755E@pr-comm.com>

next in thread | raw e-mail | index | archive | help
Some time after Dec 4 I started geting page fauls when installing a new
system to my laptop via the lp interface.  It usually makes it through
include but not always.  The last one failed the AM with src-2.2.0548
patches.  This is the screen:

fault trap 12: page fault while in kernel mode
fault virtual address   = 0x10
fault code              = supervisor read, page not present
instruction pointer     = 0x8:0xf012c325
stack pointer           = 0x10:0xf0197c50
frame pointer           = 0x10:0xf0197c60
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = Idle
interrupt mask          = net tty bio

panic: page fault

/etc/make.conf -----
# $Id: make.conf,v 1.37.2.5 1997/10/16 18:11:58 jkh Exp $
#
# This file, if present, will be read by make (see
/usr/share/mk/sys.mk).
# It allows you to override macro definitions to make without changing
# your source tree, or anything the source tree installs.
#
# This file must be in valid Makefile syntax.
#
# You have to find the things you can put here in the Makefiles and 
# documentation of the source tree.
#
# One, and probably the most common, use could be:
#
CFLAGS= -O2 -m486 -pipe
#
# Another useful entry is
#
NOPROFILE=	true
#	Avoid compiling profiled libraries
#
# To have 'obj' symlinks created in your source directory
#       (they aren't needed/necessary)
#OBJLINK=	yes
#
# To compile just the kernel with special optimisations, you should use
# this instead of CFLAGS (which is not applicable to kernel builds
anyway):
#
COPTFLAGS= -O2 -pipe
#
# To compile and install the 4.4 lite libm instead of the default use:
#
#WANT_CSRG_LIBM=	yes
#
# If you do not want unformatted manual pages to be compressed
# when they are installed:
#
#NOMANCOMPRESS=	true
#
#
# If you want the "compat" shared libraries installed as part of your
normal
# builds, uncomment these:
#
#COMPAT1X=	yes
#COMPAT20=	yes
#COMPAT21=	yes
#
#
# If you do not want additional documentation (some of which are
# a few hundred KB's) for ports to be installed:
#
#NOPORTDOCS=	true
#
#
# Default format for system documentation, depends on your printer.
# Set this to "ascii" for simple printers or screen
#
#PRINTER=	ps
#
#
# How long to wait for a console keypress before booting the default
kernel.
# This value is approximately in milliseconds. Keypresses are accepted
by the
# BIOS before booting from disk, making it possible to give custom boot
# parameters even when this is set to 0.
#
#BOOTWAIT=0
#BOOTWAIT=30000
#
# By default, the system will always use the keyboard/video card as
system
# console.  However, the boot blocks may be configured to use a serial
port
# or probe the hardware to determine if the serial port or kbd/video
should
# be used.
#
# By default we use COM1 as our serial console port *if* we're going to
use
# a serial port as our console at all.  (0x3E8 = COM2)
#
#BOOT_COMCONSOLE_PORT=	0x3F8
#
# Uncomment the following line to test if a keyboard is present.  If the
# keyboard isn't there, use the serial port as console.
#
#BOOT_PROBE_KEYBOARD=	true
#
# Uncomment the following line to read the keyboard lock switch.  If the
# keyboard is locked, use the serial port as console.
#
#BOOT_PROBE_KEYBOARD_LOCK= true
#
# Uncomment the following line to always force the use of a serial
console.
#
#BOOT_FORCE_COMCONSOLE=	true
#
# By default, this points to /usr/X11R6 for XFree86 releases 3.0 or
earlier.
# If you have a XFree86 from before 3.0 that has the X distribution in
# /usr/X386, you want to uncomment this.
#
#X11BASE=	/usr/X386
#
#
# If you have Motif on your system, uncomment this.
#
#HAVE_MOTIF=	yes
#
# If the default location of the Motif library (specified below) is NOT
# appropriate for you, uncomment this and change it to the correct
value.
# If your motif is in ${X11BASE}/lib, you don't need to touch this line.
#
#MOTIFLIB=	-L${X11BASE}/lib -lXm
#
#
# If you are running behind a firewall, uncomment the following to leave
a
# hint for various make-spawned utilities that they should use passive
FTP.
#
#FTP_PASSIVE_MODE=	YES
#
# If you're resident in the USA, this will help various ports to
determine
# whether or not they should attempt to comply with the various U.S.
# export regulations on certain types of software which do not apply to
# anyone else in the world.
#
USA_RESIDENT=		YES
#
#
# Port master sites.
#
# If you want your port fetches to go somewhere else than the default
# (specified below) in case the distfile/patchfile was not found,
# uncomment this and change it to a location nearest you.  (Don't
# remove the "/${DIST_SUBDIR}/" part.)
#
#MASTER_SITE_BACKUP?=	\
#	ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/${DIST_SUBDIR}/
#
# If you want your port fetches to check the above site first (before
# the MASTER_SITES specified in the port Makefiles), uncomment the
# line below.  You can also change the right side to point to wherever 
# you want.
#
#MASTER_SITE_OVERRIDE?=	${MASTER_SITE_BACKUP}
#
# Some ports use a special variable to point to a collection of
# mirrors of well-known software archives.  If you have a mirror close
# to you, uncomment any of the following lines and change it to that
# address.  (Don't remove the "/${MASTER_SITE_SUBDIR}/" part.)
#
# Note: the right hand sides of the following lines are only for your
# information.  For a full list of default sites, take a look at
# bsd.port.mk.
#
#MASTER_SITE_XCONTRIB=	ftp://ftp.x.org/contrib/${MASTER_SITE_SUBDIR}/
#MASTER_SITE_GNU=	ftp://prep.ai.mit.edu/pub/gnu/${MASTER_SITE_SUBDIR}/
#MASTER_SITE_PERL_CPAN=
ftp://ftp.digital.com/pub/plan/perl/CPAN/modules/by-module/${MASTER_SITE_SUBDIR}/
#MASTER_SITE_TEX_CTAN=
ftp://ftp.tex.ac.uk/public/ctan/tex-archive/${MASTER_SITE_SUBDIR}/
#MASTER_SITE_SUNSITE=
ftp://sunsite.unc.edu/pub/Linux/${MASTER_SITE_SUBDIR}/
#
#
# Kerberos IV
# If you want the eBones-based Kerberos, define this:
#
#MAKE_EBONES=	yes
#
#
# SUP/CVSup updates
#
#SUP_UPDATE=     yes
#
# SUP block
#
#SUP=            sup
#SUPFLAGS=       -v
#SUPFILE=        /usr/share/examples/sup/standard-supfile
#SUPFILE1=       /usr/share/examples/sup/secure-supfile
#SUPFILE2=       /usr/share/examples/sup/ports-supfile
#
# CVSup block
#
#SUP=            /usr/local/bin/cvsup
#SUPFLAGS=       -g -L 2 -z
#SUPFILE=        /usr/share/examples/cvsup/standard-supfile
#SUPFILE1=       /usr/share/examples/cvsup/secure-supfile
#SUPFILE2=       /usr/share/examples/cvsup/ports-supfile

#
# top(1) uses a hash table for the user names.  The size of this hash
# can be tuned to match the number of local users.  The table size
should
# be a prime number approximately twice as large as the number of lines
in
# /etc/passwd.  The default number is 20011.
#
#TOP_TABLE_SIZE= 101

#
SENDMAIL_CF=pr-comm.cf

--------------------
MYKERNEL -----------
#
# GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks
#
# For more information read the handbook part System Administration -> 
# Configuring the FreeBSD Kernel -> The Configuration File. 
# The handbook is available in /usr/share/doc/handbook or online as
# latest version from the FreeBSD World Wide Web server 
# <URL:http://www.FreeBSD.ORG/>;
#
# An exhaustive list of options and more detailed explanations of the 
# device lines is present in the ./LINT configuration file. If you are 
# in doubt as to the purpose or necessity of a line, check first in
LINT.
#
#	$Id: GENERIC,v 1.77.2.4 1997/02/22 20:31:24 joerg Exp $

machine		"i386"
#cpu		"I386_CPU"
cpu		"I486_CPU"
#cpu		"I586_CPU"
#cpu		"I686_CPU"
ident		MYKERNEL

#
# The `maxusers' parameter controls the static sizing of a number of
# internal system tables by a complicated formula defined in param.c.
#
maxusers	16

#
# Under some circumstances it is convenient to increase the defaults
# for the maximum number of processes per user and the maximum number
# of open files files per user.  E.g., (1) in a large news server, user
# `news' may need more than 100 concurrent processes.  (2) a user may
# need lots of windows under X.  In both cases, it may be inconvenient
# to start all the processes from a parent whose soft rlimit on the
# number of processes is large enough.  The following options work by
# changing the soft rlimits for init.
#
options		CHILD_MAX=128
options		OPEN_MAX=128

options		INET			#InterNETworking
options		FFS			#Berkeley Fast Filesystem
#options		NFS			#Network Filesystem
#options		MSDOSFS			#MSDOS Filesystem
#options		"CD9660"		#ISO 9660 Filesystem
#options		PROCFS			#Process filesystem
options		"COMPAT_43"		#Compatible with BSD 4.3 [KEEP THIS!]
options		BOUNCE_BUFFERS		#include support for DMA bounce buffers
options		UCONSOLE		#Allow users to grab the console
options		FAILSAFE		#Be conservative
options		USERCONFIG		#boot -c editor
options		VISUAL_USERCONFIG	#visual boot -c editor

#
# These three options provide support for System V Interface
# Definition-style interprocess communication, in the form of shared
# memory, semaphores, and message queues, respectively.
#
options		SYSVSHM
options		SYSVSEM
options		SYSVMSG

#
# This option includes a MD5 routine in the kernel, this is used for
# various authentication and privacy uses.
#
options		"MD5"

#
# Internet family options:
#
# TCP_COMPAT_42 causes the TCP code to emulate certain bugs present in
# 4.2BSD.  This option should not be used unless you have a 4.2BSD
# machine and TCP connections fail.
#
# MROUTING enables the kernel multicast packet forwarder, which works
# with mrouted(8).
#
# IPFIREWALL enables support for IP firewall construction, in
# conjunction with the `ipfw' program.  IPFIREWALL_VERBOSE sends
# logged packets to the system logger.  IPFIREWALL_VERBOSE_LIMIT
# limits the number of times a matching entry can be logged.
#
# IPDIVERT enables the divert IP sockets, used by ``ipfw divert''
#
# TCPDEBUG is undocumented.
#
#options		"TCP_COMPAT_42"		#emulate 4.2BSD TCP bugs
#options		MROUTING		# Multicast routing
options         IPFIREWALL              #firewall
options         IPFIREWALL_VERBOSE      #print information about
					# dropped packets
options		"IPFIREWALL_VERBOSE_LIMIT=10" #limit verbosity
options		IPDIVERT		#divert sockets
#options		TCPDEBUG

# This allows you to actually store this configuration file into
# the kernel binary itself, where it may be later read by saying:
#    strings /kernel | grep ^___ | sed -e 's/^___//' > MYKERNEL
#
options         INCLUDE_CONFIG_FILE     # Include this file in kernel

options		"NO_F00F_HACK"

config		kernel	root on wd1

controller	isa0
#controller	eisa0
#controller	pci0

controller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk		fd0	at fdc0 drive 0
#disk		fd1	at fdc0 drive 1
#tape		ft0	at fdc0 drive 2

controller	wdc0	at isa? port "IO_WD1" bio irq 14 vector wdintr
disk		wd0	at wdc0 drive 0
disk		wd1	at wdc0 drive 1

#controller	wdc1	at isa? port "IO_WD2" bio irq 15 vector wdintr
#disk		wd2	at wdc1 drive 0
#disk		wd3	at wdc1 drive 1

#options		ATAPI		#Enable ATAPI support for IDE bus
#options		ATAPI_STATIC	#Don't do it as an LKM
#device		wcd0	#IDE CD-ROM

# A single entry for any of these controllers (ncr, ahb, ahc, amd) is
# sufficient for any number of installed devices.
#controller	ncr0
#controller	amd0
#controller	ahb0
#controller	ahc0
#controller	bt0	at isa? port "IO_BT0" bio irq ? vector bt_isa_intr
#controller	uha0	at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr
#controller	aha0	at isa? port "IO_AHA0" bio irq ? drq 5 vector ahaintr
#controller	aic0	at isa? port 0x340 bio irq 11 vector aicintr
#controller	nca0	at isa? port 0x1f88 bio irq 10 vector ncaintr
#controller	nca1	at isa? port 0x350 bio irq 5 vector ncaintr
#controller	sea0	at isa? bio irq 5 iomem 0xc8000 iosiz 0x2000 vector
seaintr

#controller	scbus0

#device		sd0

#device		od0	#See LINT for possible `od' options.

#device		st0

#device		cd0	#Only need one of these, the code dynamically grows

#device		wt0	at isa? port 0x300 bio irq 5 drq 1 vector wtintr
#device		mcd0	at isa? port 0x300 bio irq 10 vector mcdintr

#controller	matcd0	at isa? port 0x230 bio

#device		scd0	at isa? port 0x230 bio

# syscons is the default console driver, resembling an SCO console
device		sc0	at isa? port "IO_KBD" tty irq 1 vector scintr
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device		vt0	at isa? port "IO_KBD" tty irq 1 vector pcrint
#options		PCVT_FREEBSD=210	# pcvt running on FreeBSD >= 2.0.5
options		XSERVER			# include code for XFree86
#options		FAT_CURSOR		# start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT
lines
#options		PCVT_SCANSET=2		# IBM keyboards are non-std

# Mandatory, don't remove
device		npx0	at isa? port "IO_NPX" irq 13 vector npxintr

#
# Laptop support (see LINT for more options)
#
#device		apm0    at isa?	disable	# Advanced Power Management
#options		APM_BROKEN_STATCLOCK	# Workaround some buggy APM BIOS
# PCCARD (PCMCIA) support
#controller	crd0
#device		pcic0	at crd?
#device		pcic1	at crd?

device		sio0	at isa? port "IO_COM1" tty irq 4 vector siointr
device		sio1	at isa? port "IO_COM2" tty irq 3 vector siointr
device		sio2	at isa? port "IO_COM3" tty irq 10 vector siointr
device		sio3	at isa? port "IO_COM4" tty irq 11 vector siointr

#device		lpt0	at isa? port? tty irq 7 vector lptintr
#device		lpt1	at isa? port? tty irq 5 vector lptintr
device		lpt0	at isa? port "IO_LPT1" irq 7 vector lptintr
device		lpt1	at isa? port "IO_LPT2" vector lptintr
device		lpt2	at isa? port "IO_LPT3" irq 5 vector lptintr
#device		mse0	at isa? port 0x23c tty irq 5 vector mseintr

#device		psm0	at isa? disable port "IO_KBD" conflicts tty irq 12 vector
psmintr

# Order is important here due to intrusive probes, do *not* alphabetize
# this list of network interfaces until the probes have been fixed.
# Right now it appears that the ie0 must be probed before ep0. See
# revision 1.20 of this file.
#device de0
#device fxp0
#device vx0

#device ed0 at isa? port 0x300 net irq  5 iomem 0xd8000 vector edintr
device ed0 at isa? port 0x300 net irq 15 iomem 0xd8000 vector edintr
#device ie0 at isa? port 0x360 net irq  7 iomem 0xd0000 vector ieintr
#device ep0 at isa? port 0x300 net irq 10 vector epintr
#device ex0 at isa? port 0x300 net irq 10 iomem 0xd0000 vector exintr
#device fe0 at isa? port 0x300 net irq ? vector feintr
#device ix0 at isa? port 0x300 net irq 10 iomem 0xd0000 iosiz 32768
vector ixintr
#device le0 at isa? port 0x300 net irq 5 iomem 0xd0000 vector le_intr
#device lnc0 at isa? port 0x280 net irq 10 drq 0 vector lncintr
#device ze0 at isa? port 0x300 net irq 5 iomem 0xd8000 vector zeintr
#device zp0 at isa? port 0x300 net irq 10 iomem 0xd8000 vector zpintr

pseudo-device	loop
pseudo-device	ether
pseudo-device	log
# pseudo-device	sl	1
# ijppp uses tun instead of ppp device
pseudo-device	ppp	2
pseudo-device	tun	2
pseudo-device	pty	8
pseudo-device	speaker		#Play IBM BASIC-style noises out your speaker
pseudo-device	gzip		# Exec gzipped a.out's
pseudo-device	bpfilter	2	#Berkeley packet filter
#pseudo-device	snp	3	#Snoop device - to look at pty/vty/etc..

# KTRACE enables the system-call tracing facility ktrace(2).
# This adds 4 KB bloat to your kernel, and slightly increases
# the costs of each syscall.
# options		KTRACE		#kernel tracing
--------------------

What is my next step?  Do I enable KTRACE?  And what else?  I am
reasonably skilled with the system, but not very knowledgable about
working with the kernel.  I can use gdb.  All guidance apperciated.

Thanks
Jim.
-- 
 -------------------------------------------+-------------------------
 James E. Housley                           | PGP:   1024/03983B4D
 PR Communications, Inc.                    | 2C 3F 3A 0D A8 D8 C3 13
 www.servtech.com/public/pr-comm            | 7C F0 B5 BF 27 8B 92 FE



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?349EBC3F.8F03755E>