Date: Sat, 23 Nov 2002 23:34:00 -0400 (AST) From: "Marc G. Fournier" <scrappy@hub.org> To: freebsd-stable@freebsd.org Cc: freebsd-hardware@freebsd.org, "Moore, Eric Dean" <emoore@lsil.com> Subject: CPU not detected after firmware upgrade ... Message-ID: <20021123222059.N16724-100000@hub.org>
next in thread | raw e-mail | index | archive | help
Over the past couple of weeks, I've been experiencing a problem where -STABLE after Oct 28th would hang on booting. The only change that appeared to be on the 29th was the amr driver changes that Eric committed, and he suggested upgrading the firmware on my MegaRAID controller to 'correct' the issue. Last night, Rackspace performed that upgrade for us, and powered up using the same kernel (RELENG_4_7) we had installed ... it hung on reboot. They could boot off of the GENERIC kernel that I still had on that machine, but not the kernel that I had running several hours previous ... after playing with the kernel config for a period of time, I finally figured out that as long as I didn't enable SMP, the kernel would boot. Not good, but better then nothing ... Today, after getting some rest, I dove back into things again, finally thinking to setup /boot.config to enable -v on boot, figuring that was hte only way I was going to more detailed information ... After looking through /var/run/dmesg.boot after trying to boot an SMP kernel, I noticed that the kernel isn't detecting the second CPU in the machine: IOAPIC #0 intpin 2 -> irq 0 Programming 16 pins in IOAPIC #1 SMP: CPU0 apic_initialize(): lint0: 0x00000700 lint1: 0x00010400 TPR: 0x00000010 SVR: 0x000001ff FreeBSD/SMP: Multiprocessor motherboard cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfee00000 io0 (APIC): apic id: 4, version: 0x000f0011, at 0xfec00000 io1 (APIC): apic id: 5, version: 0x000f0011, at 0xfec01000 bios32: Found BIOS32 Service Directory header at 0xc00fdb90 bios32: Entry = 0xfdba0 (c00fdba0) Rev = 0 Len = 1 pcibios: PCI BIOS entry at 0xdbc1 pnpbios: Found PnP BIOS data at 0xc00f4c50 pnpbios: Entry = f0000:3954 Rev = 1.0 Other BIOS signatures found: ACPI: 00000000 whereas my other server, same motherboard and BIOS level, shows: FreeBSD/SMP: Multiprocessor motherboard cpu0 (BSP): apic id: 0, version: 0x00040011, at 0xfee00000 cpu1 (AP): apic id: 1, version: 0x00040011, at 0xfee00000 io0 (APIC): apic id: 4, version: 0x000f0011, at 0xfec00000 io1 (APIC): apic id: 5, version: 0x000f0011, at 0xfec01000 Now, I've had Rackspace check to make sure that the second CPU is, in fact, in the machine, and they went to the extent of swap out the CPUs and put new ones in ... the CPUs are detected by the BIOs itself, its only once it gets to the OS level that it seems to "lose" the second CPU ... The kernel config I'm trying to boot is quite basic, and included at the bottom of this ... What would cause a CPU to "disappear" as far as the operating system is concerned? And how could a firmware upgrade (and/or driver upgrade) cause this? This is a totally new one for me, and I haven't got a clue what direction to go at next ... ___machine i386 ___cpu I686_CPU ___ident kernel ___maxusers 0 ___makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols ___options INET #InterNETworking ___options FFS #Berkeley Fast Filesystem ___options FFS_ROOT #FFS usable as root device [keep this!] ___options SOFTUPDATES #Enable FFS soft updates support ___options UFS_DIRHASH #Improve performance on big directories ___options PROCFS #Process filesystem ___options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] ___options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI ___options KTRACE #ktrace(1) support ___options SYSVSHM ___options SHMMAXPGS=199608 ___options SHMMAX=(SHMMAXPGS*PAGE_SIZE+1) ___options SYSVSEM ___options SEMMNI=4096 ___options SEMMNS=8192 ___options SYSVMSG #SYSV-style message queues ___options IPFIREWALL #firewall ___options IPFIREWALL_FORWARD #enable transparent proxy support ___options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default ___options P1003_1B #Posix P1003_1B real-time extensions ___options _KPOSIX_PRIORITY_SCHEDULING ___options ICMP_BANDLIM #Rate limit bad replies ___options KBD_INSTALL_CDEV # install a CDEV entry in /dev ___# To make an SMP kernel, the next two are needed ___options SMP # Symmetric MultiProcessor Kernel ___options APIC_IO # Symmetric (APIC) I/O ___device isa ___device pci ___device sym # NCR/Symbios Logic (newer chipsets) ___device scbus # SCSI bus (required) ___device da # Direct Access (disks) ___device sa # Sequential Access (tape etc) ___device pass # Passthrough device (direct SCSI access) ___device amr # AMI MegaRAID ___device atkbdc0 at isa? port IO_KBD ___device atkbd0 at atkbdc? irq 1 flags 0x1 ___device psm0 at atkbdc? irq 12 ___device vga0 at isa? ___pseudo-device splash ___device sc0 at isa? flags 0x100 ___device npx0 at nexus? port IO_NPX irq 13 ___device miibus # MII bus support ___device fxp # Intel EtherExpress PRO/100B (82557, 82558) ___pseudo-device loop # Network loopback ___pseudo-device ether # Ethernet support ___pseudo-device pty 256 # Pseudo-ttys (telnet etc) ___pseudo-device bpf #Berkeley packet filter ___options DDB ___options DDB_UNATTENDED ___options INCLUDE_CONFIG_FILE # Include this file in kernel To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hardware" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021123222059.N16724-100000>