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>