Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 14 Apr 2001 20:11:36 +0200
From:      Joachim =?iso-8859-1?Q?Str=F6mbergson?= <watchman@ludd.luth.se>
To:        David Daugherty <doc@wcug.wwu.edu>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: SMP + BP6 kernel issues
Message-ID:  <3AD892D8.A121CE71@ludd.luth.se>
References:  <Pine.BSO.4.21.0104141024090.16426-100000@sloth.wcug.wwu.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
Aloha!

David Daugherty wrote:
> I've set up a 4.2-release system from the iso off of your ftp site. It's
> installed on a BP6 with 2 Celeron 333s. I finally managed to get it
> updated to 4.3-RC using one processor. But when I uncomment the 2 lines
> relating to SMP in the kernel config and reboot I'm unable to boot off of
> the SMP enable kernel. The error I get on boot looks like:
> 
> CPU: Pentium II/Pentium II Xeon/Celeron (unknow-class CPU)
>   Origin = "GenuineIntel" Id = 0x665 Stepping = 5
> 
> Features=0x183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR>
> panic: CPU class not configured
> mp_lock = 000000009; cpuid = 0; lapic.id = 00000000
> 
> This is the first time I've set up BSD on a dual proc system. All I've
> done to my custom kernel is 'cp GENERIC WASHINGTON' then my beginning
> lines are:
> machine         i386
> cpu             I586_CPU
> ident           WASHINGTON
> 
> I then uncommented the two SMP specific lines, rebuilt the kernel, and
> rebooted.

Hard to say exactly what went wrong. What I can say is that normally
FreeBSD runs very nicely as a SMP system on the BP6 MB.

By looking at the error message I would speculate that there is some
problem finding CPU 2. Does the BIOS say something similar to "2
processors" during POST?

The following is my own SMP kernel configuration file in all it's glory.
It's probably fauly in several places, but it works:

<quote>
#=============================================================================
# 
# SMP4X
# -----
# 
# Kernel configuration file for SMP system in FreeBSD 4.X (STABLE)
# 
#=============================================================================

#=============================================================================
# Machine and CPU type
#=============================================================================
machine		i386
cpu		I686_CPU


#=============================================================================
# Kernel identification
#=============================================================================
ident		SMP4X


#=============================================================================
# Major system limits
#=============================================================================
maxusers	32
options 	MAXMEM="(128*1024)"


#=============================================================================
# Major kernel options
#=============================================================================
options 	INET			#InterNETworking
#options 	INET6			#IPv6 communications protocols
options 	FFS			#Berkeley Fast Filesystem
options 	FFS_ROOT		#FFS usable as root device [keep this!]
#options 	MFS			#Memory Filesystem
#options 	MD_ROOT			#MD is a potential root device

#options 	NFS			#Network Filesystem
#options 	NFS_ROOT		#NFS usable as root device, NFS required

options 	MSDOSFS			#MSDOS Filesystem
options 	CD9660			#ISO 9660 Filesystem
options 	CD9660_ROOT		#CD-ROM usable as root, CD9660 required
options 	PROCFS			#Process filesystem
options 	COMPAT_43		#Compatible with BSD 4.3 [KEEP THIS!]
options 	USERCONFIG		#boot -c editor
options 	VISUAL_USERCONFIG	#visual boot -c editor
options 	KTRACE			#ktrace(1) support
options 	SYSVSHM			#SYSV-style shared memory
options 	SYSVMSG			#SYSV-style message queues
options 	SYSVSEM			#SYSV-style semaphores

#=============================================================================
# SMP support
#=============================================================================
# To make an SMP kernel, the next two are needed
options 	SMP			# Symmetric MultiProcessor Kernel
options 	APIC_IO			# Symmetric (APIC) I/O

# Optionally these may need tweaked, (defaults shown):
#options 	NCPU=2			# number of CPUs
#options 	NBUS=4			# number of busses
#options 	NAPIC=1			# number of IO APICs
#options 	NINTR=24		# number of INTs


#=============================================================================
# ISA and PCI devices
#=============================================================================
# The machine has both ISA and PCI slots
device		isa
device		pci

# Floppy drives
device		fdc0	at isa? port IO_FD1 irq 6 drq 2
device		fd0	at fdc0 drive 0
#device		fd1	at fdc0 drive 1

# IDE (ATA) drives and CDs
# ATA and ATAPI devices
device		ata0	at isa? port IO_WD1 irq 14
device		ata1	at isa? port IO_WD2 irq 15
device		ata
device		atadisk			# ATA disk drives
device		atapicd			# ATAPI CDROM drives
device		atapifd			# ATAPI floppy drives
options 	ATA_STATIC_ID		#Static device numbering
#options 	ATA_ENABLE_ATAPI_DMA	#Enable DMA on ATAPI devices


#=============================================================================
# Soft updates in FFS
#=============================================================================
# Soft updates is technique for improving file system speed and
# making abrupt shutdown less risky.  It is not enabled by default due
# to copyright restraints on the code that implement it.
#
# Read ../../ufs/ffs/README.softupdates to learn what you need to
# do to enable this.  ../../contrib/softupdates/README gives
# more details on how they actually work.
options 	SOFTUPDATES


#=============================================================================
# Keyboard
#=============================================================================
# atkbdc0 controls both the keyboard and the PS/2 mouse
device		atkbdc0	at isa? port IO_KBD
device		atkbd0	at atkbdc? irq 1
device		psm0	at atkbdc? irq 12


#=============================================================================
# Console setup.
#=============================================================================
device		vga0	at isa?

# splash screen/screen saver
pseudo-device	splash

# syscons is the default console driver, resembling an SCO console
device		sc0	at isa?

# Uconsole allows the normal user to take the console
options 	UCONSOLE


#=============================================================================
# FPU device
#=============================================================================
# Floating point support - do not disable.
device		npx0	at nexus? port IO_NPX irq 13


#=============================================================================
# Power management
#=============================================================================
# Power management support (see LINT for more options)
#device		apm0    at nexus? disable flags 0x20 # Advanced Power
Management


#=============================================================================
# Serial (COM) ports
#=============================================================================
device		sio0	at isa? port IO_COM1 flags 0x10 irq 4
#device		sio1	at isa? port IO_COM2 irq 3
#device		sio2	at isa? disable port IO_COM3 irq 5
#device		sio3	at isa? disable port IO_COM4 irq 9


#=============================================================================
# Parallel port
#=============================================================================
device		ppc0	at isa? irq 7
device		ppbus		# Parallel port bus (required)
device		lpt		# Printer
#device		plip		# TCP/IP over parallel
#device		ppi		# Parallel port interface device


#=============================================================================
# ISA Ethernet NICs.
#=============================================================================
device		ed0	at isa? port 0x2A0 irq 3 iomem 0xd8000
#device		ed0	


#=============================================================================
# PCI 10/100 Mbit/s Ethernet NICs.
#=============================================================================
device          miibus		# Support for the MII-bus used by NICs.
device          vr              # VIA Rhine, Rhine II
device 		rl		# RealTek 8129/8139

#=============================================================================
# Pseudo devices - the number indicates how many units to allocated.
#=============================================================================
pseudo-device	loop		# Network loopback
pseudo-device	ether		# Ethernet support
#pseudo-device	sl	1	# Kernel SLIP
#pseudo-device	ppp	1	# Kernel PPP
pseudo-device	tun		# Packet tunnel.
pseudo-device	speaker		# Play IBM BASIC-style noises out your speaker
pseudo-device	pty		# Pseudo-ttys (telnet etc)
#pseudo-device	md		# Memory "disks"
#pseudo-device	gif	4	# IPv6 and IPv4 tunneling
#pseudo-device	faith	1	# IPv6-to-IPv4 relaying (translation)


#=============================================================================
# BPF
#=============================================================================
# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device	bpf		#Berkeley packet filter


#=============================================================================
# USB support
#=============================================================================
# General USB code (mandatory for USB)
#device		usb

# Generic USB device driver
#device		ugen


#=============================================================================
# Audio drivers: `snd', `sb', `pas', `gus', `pca'
#=============================================================================
# For PnP/PCI sound cards
#device		sbc0	at isa? port 0x220 irq 5 drq 1 flags 0x15
#device		sbc0
device		sbc
device          pcm


#=============================================================================
# POSIX P1003.1B
#=============================================================================
# Real time extensions added in the 1993 Posix
# P1003_1B: Infrastructure
# _KPOSIX_PRIORITY_SCHEDULING: Build in _POSIX_PRIORITY_SCHEDULING
# _KPOSIX_VERSION:             Version kernel is built for

options 	P1003_1B
options 	_KPOSIX_PRIORITY_SCHEDULING
options 	_KPOSIX_VERSION=199309L


#=============================================================================
# Special options for program support.
#=============================================================================
options USER_LDT
options PNPBIOS


#=============================================================================
# Firewall and filtering rules.
#=============================================================================
options	IPFIREWALL              	#firewall
options	IPFIREWALL_DEFAULT_TO_ACCEPT    #allow everything by default
options	IPDIVERT                	#divert sockets
options	ICMP_BANDLIM			#Rate limit bad replies

#=============================================================================
# EOF SMP4X
#=============================================================================
</qoute>


-- 
Cheers!
Joachim - Alltid i harmonisk svängning
--- FairLight ------ FairLight ------ FairLight ------ FairLight ---
Joachim Strömbergson         ASIC SoC designer, nice to CUTE animals
Phone: +46(0)31 - 27 98 47    Web: http://www.ludd.luth.se/~watchman
--------------- Spamfodder: regeringen@regeringen.se ---------------

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3AD892D8.A121CE71>