Kernel upgrade for bug fix

i just got a new system with opensuse 11.2, runs desktop version of kernel 2.6.31. when i started the system i immediately
noticed that only 1 of 8 cores was recognized. started digging and found issues others have reported with this version of the kernel and a boot option of “nolapic”. i had the os installed before system was shipped to me and this option was clearly intentionally added to the menu.lst file by whoever configured the system initially (“diff /boot/grub/menu.lst /boot/grub/menu.lst.old” showed it). he (guy who configured) confirmed it was added to prevent issues from the known bug where system crashes without nolapic option.
i tried removing this nolapic option from menu.lst (thru yast) and was able to shut down and reboot and all cores were then recognized. confirmed in /proc/cmdline and /proc/cpuinfo things looked ok. however, a subsequent reboot with nothing else changed lead to a crash on startup, presumably due to the known bug without nolapic.

from what i’ve read in posts such as https://bugzilla.kernel.org/show_bug.cgi?id=14525 and Has the 11.2 RC2 kernel stolen a CPU? - openSUSE Forums it looks like i should try to upgrade my kernel.
i wanted some advice from others who are more experienced before i pull the trigger. (i’m an experienced C/C++ app developer but new to kernel builds)
i found a newer kernel version kernel-desktop-2.6.34-37.1.x86_64.rpm on Index of /repositories/Kernel:/HEAD/openSUSE_11.2/x86_64 and wanted to know the following:

Q1. is this is a good versoin to try out? anyone using it or heard of stability issues?
Q2. any good step-by-step kernel rebuild sites? i’ve seen a few, but not sure how accurate they are.
Q3. is there a way to do the rebuild end-to-end using YAST?

system and problem summary below:

  • uname -a
    Linux linux-uc2t 2.6.31.12-0.2-desktop #1 SMP PREEMPT 2010-03-16 21:25:39 +0100 x86_64 x86_64 x86_64 GNU/Linux

  • i have 2 intel xeon 5520 cpus (each quad core), using “nolapic” in menu.lst only one cpu is initialized by kernel

cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 26
model name : Intel(R) Xeon(R) CPU L5520 @ 2.27GHz
stepping : 5
cpu MHz : 2266.879
cache size : 8192 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 11
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx r
dtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology tsc_reliable nonstop_tsc pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdc
m dca sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid
bogomips : 4533.75
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management:

thanks in advance for any help!
-jeff

i was actually able to install new kernel thanks to
Questions/help regarding kernel 2.6.31 - openSUSE Forums
so i now see it appear in menu option when booting. when i run new kernel (/vmlinuz-2.6.34-37-desktop) i have problems with nvidia drivers and cannot launch desktop GUI.
i rebooted under older kernel and tried to install new drivers under YAST but it looks like YAST will only recognize drivers compatible with running kernel (cant argue) so i probably need to get the drivers from cmd line running under new kernel.
any advice on how to get these needed drivers?
thanks

I will show you a way to install the driver for both Kernels.

• Uninstall the driver from the NVidia-repository.

• Download the compatible driver for your gfx-card from http://www.nvidia.com/

• Boot any Kernel, log in as root and switch into runlevel 3.

init 3

• Change into the directory where you downloaded the driver and install it:

sh NVIDIA-Linux-x86-195.36.24-pkg1.run -q

Note that your driver-version might be different.

• Configure a xorg.conf:

sax2 -r -m 0=nvidia        ##0 is a digit, not a letter!

• After SaX2, boot the other Kernel, switch into runlevel 3 as root and install the driver again:

sh NVIDIA-Linux-x86-195.36.24-pkg1.run -K

Note that this time instead of the ‘-q’-option you will have to call the ‘-K’-option. There’s no need to run SaX2 again.

• Switch into runlevel 5, this should give you a login-screen:

init 5

If this works, the driver should work for both Kernels. Note that you’ll have to reinstall the driver as described here every time a Kernel or xorg-upgrade occurs.

In case you want to use the 2.6.34-Kernel only, install the driver within this version and skip the respective steps.

Good luck!

thanks so much gropiuskalle! i’ll give it a shot and let you know how it goes

gropiuskalle, thanks again. your info on loading the driver worked perfectly. i had to go back and do a manual rebuild of kernel first b/c installation of driver was complaining about mismatch between gcc version used for kernel and driver, then about missing source…was just easier to built it myself instead of guessing what YAST did.
all good now, less painful than i anticipated! thanks!

-jeff

Cool, glad I could help. Have a lot of fun…