Account Links: Cart | Your Account | Logout

Skip to content

Red Hat Knowledgebase

Red Hat Knowledgebase Search:

Updated Within the Last:

New Solutions within the last day New Solutions within the last week New Solutions within the last month

Browse by topics:


Click to View a Topic
Red Hat Enterprise Linux > AS/ES/WS v. 4 > Issue <<  278 of 628 >>

Solution Tools:


Email a Solution Postcard Printer version Submit a comment on this answer Update notifications Request an answer Back

Article Reference

Article ID: 6976
Last update: 05-11-06
Issue:
Are there any workarounds for system kernel panics on x86_64/EM64T systems using the NVIDIA driver for Red Hat Enterprise Linux 4 Update 2?
Resolution:

Release Found: Red Hat Enterprise Linux 4 Update 2

Symptom:
Any x86_64/EM64T system with a CPU that has the NX capability, running a 32-bit kernel using the NVIDIA driver will encounter a kernel panic in at__change_page_attr() after bringing up X windows. It is also our belief that any driver that uses the change_page_attr() function will encounter the same issue.

On an EM64T system with a CPU that has the NX capability enabled and running 32-bit x86 kernel using the NVIDIA binary driver, customers have reported that they will experience into a kernel panic with a stack trace that looks like something similar to the following:

kernel BUG at arch/i386/mm/pageattr.c:155!
invalid operand: 0000 [#1]
SMP 
Modules linked in: nvidia(U) nfsd exportfs lockd md5 ipv6 parport_pc lp 
parport autofs4 i2c_dev i2c_core sunrpc dm_mod button battery ac uhci_hcd
 ehci_hcd hw_random snd_azx snd_hda_codec snd_pcm_oss snd_mixer_oss snd_pcm
 snd_timer snd soundcore snd_page_alloc tg3 floppy ext3 jbd ahci libata 
 sd_mod scsi_mod
CPU:    0
EIP:    0060:[]    Tainted: P      VLI
EFLAGS: 00010002   (2.6.9-16.1.ELsmp) 
EIP is at __change_page_attr+0x332/0x400
eax: 00000080   ebx: 00000080   ecx: 00000000   edx: 00000000
esi: 00000163   edi: 80000000   ebp: c0007350   esp: cf714cbc
ds: 007b   es: 007b   ss: 0068
Process viewperf (pid: 4877, threadinfo=cf714000 task=cf78d930)
Stack: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
       00000000 00000000 c1000000 c10000e0 cd5ff000 00000163 80000000 c11abfe0 
       0d5fe163 80000000 c0326690 ffffffff c11abfe0 00000000 00000000 00000001 
Call Trace:
 [] change_page_attr+0x2d/0x50
 [] nv_vm_free_pages+0x84/0xe6 [nvidia]
 [] nv_free_pages+0x2cf/0x2f5 [nvidia]
 [] _nv002097rm+0x4e/0x58 [nvidia]
 [] _nv002097rm+0x2d/0x58 [nvidia]
 [] _nv004517rm+0x23/0x28 [nvidia]
 [] _nv007899rm+0x9a/0xd4 [nvidia]
 [] _nv001474rm+0x8e/0x9c [nvidia]
 [] _nv004519rm+0x19/0x40 [nvidia]
 [] _nv001479rm+0x82/0x190 [nvidia]
 [] _nv001479rm+0xc1/0x190 [nvidia]
 [] _nv007916rm+0x40/0x5c [nvidia]
 [] rm_disable_interrupts+0x42/0x54 [nvidia]
 [] _nv001492rm+0x13c/0x260 [nvidia]
 [] os_acquire_sema+0x68/0x7c [nvidia]
 [] _nv002123rm+0x12/0x18 [nvidia]
 [] _nv002944rm+0x33/0x9c [nvidia]
 [] _nv002944rm+0x69/0x9c [nvidia]
 [] _nv001447rm+0x3d/0x5e4 [nvidia]
 [] _nv001447rm+0x213/0x5e4 [nvidia]
 [] unmap_page_range+0x3c/0x5f
 [] rm_ioctl+0x23/0x38 [nvidia]
 [] nv_kern_ioctl+0x3b0/0x42a [nvidia]
 [] dump_thread+0x3d/0x111
 [] dump_thread+0x3d/0x111
 [] sys_ioctl+0x227/0x269
 [] syscall_call+0x7/0xb
 [] dump_thread+0x3d/0x111
 [] __lock_text_end+0x186/0x101b
Code: 89 f0 09 da 89 54 24 44 09 c8 8b 4c 24 44 89 44 24 40 8b 5c 24 40 8b 07 8b 57 04 f0 0f c7 0f 75 f5 8b 44 24 2c f0 ff 48 04 eb 08 <0f> 0b 9b 00 7d 26 2e c0 a1 8c 04 32 c0 a8 08 0f 84 af 00 00 00 
 <0>Fatal exception: panic in 5 seconds
Kernel panic - not syncing: Fatal exception
 <0>Rebooting in 10 seconds..Linux version 2.6.9-16.1.ELsmp 

The kernel traceback shows the EIP at __change_page_attr+0x332/0x400 and it is called by change_page_attr() and consequently called by nv_xxxxx() functions within the NVIDIA binary driver.

Solution:
There are two possible workarounds for this problem:

  1. Turn off NX capability in the BIOS. If the BIOS does not have a way to turn NX capability off, then
  2. Run the 64-bit kernel.

If any of the above choices are not feasible, then you will need upgrade to the next post-U2 kernel advisory when it becomes available.


How well did this entry answer your question?


good wrong incomplete out of date
Red Hat Enterprise Linux > AS/ES/WS v. 4 > Issue <<   278  of  628  >>