Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#1655 closed bug (fixed)

vm_page_fault on boot (probably because intel_extreme driver)

Reported by: mzunigag_mx Owned by: axeld
Priority: normal Milestone: R1/alpha1
Component: Drivers/Graphics/intel_extreme Version: R1/pre-alpha1
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: x86

Description

When the SATA driver was added, it booted without any problems. Now, many times the monitor just gets 'out of sync limit'. If the haiku logo appears, after a little time, the following line appears:

PANIC: vm_page_fault: unhandled page fault in kernel space at 0x48000 ip 0x8034be44

Welcome to KDL...
Running on CPU 0
kdebug>

The sc command displays:

stack trace for thread 0x25 "app_server"
    kernel stack: 0x801fd000 to 0x80201000
      user stack: 0x7efe7000 to 0x7ffe7000
frame            caller     <image>:function + offset
8020089c (+  52) 8007b0dc   <kernel>:invoke_command + 0x0074
802008d0 (+  48) 8007b1fa   <kernel>:kernel_debugger_loop + 0x80de
80200900 (+  32) 8007bcce   <kernel>:kernel_debugger + 0x00b6
80200920 (+ 192) 8007bc0d   <kernel>:panic + 0x0029
802009e0 (+  64) 80055f3a   <kernel>:vm_page_fault + 0x00aa
80200a20 (+ 176) 8008480b   <kernel>:i386_handle_trap + 0x0217
iframe at 0x80200ad8 (end = 0x80200b2c)
 eax 0x41ae001      ebx 0x8034e470      ecx 0x8000       edx 0x40000
 esi 0x8037808c     edi 0x80200b8c      ebp 0x80200b24   esp 0x80200b08
 eip 0x8034be44  eflags 0x10202
 vector: 0xe, error code: 0x2
80200ad0 (+  84) 8034be44   </boot/beos/system/add-ons/kernel/drivers/dev/graphics/intel_extreme>:set_gtt_entry_FR10intel_infoU1PUc + 0x0014
80200b24 (+ 112) 8034c75e   </boot/beos/system/add-ons/kernel/drivers/dev/graphics/intel_extreme>:intel_extreme_init_FR10intel_info + 0x070e
80200b94 (+  48) 8034b848   </boot/beos/system/add-ons/kernel/drivers/dev/graphics/intel_extreme>:device_open_FPCcU1PPv + 0x00a0
80200bc4 (+ 320) 8003a8ad   <kernel>:devfs_open__FPvT0iPPv + 0x0089
80200d04 (+  48) 80045102   <kernel>:open_vnode__FP5vnodeib + 0x002a
80200d34 (+  64) 800454ca   <kernel>:file_open__FiPcib + 0x0062
80200d74 (+  64) 8004a3b9   <kernel>:_user_open + 0x00a1
80200db4 (+ 336) 8002ede8   <kernel>:syscall_dispatcher + 0x0810
80200f04 (+ 160) 800848a4   <kernel>:i386_handle_trap + 0x02b0
iframe at 0x80200fac (end = 0x80201000)
 eax 0x46           ebx 0x79b464        ecx 0x7ffe68a8   edx 0x2
 esi 0x1806a5b7     edi 0x2b3bad        ebp 0x7ffe696c   esp 0x80200fdc
 eip 0xffff0102  eflags 0x246
 vector: 0x63, error code: 0x0
80200fa4 (+   0) ffff0102
7ffe696c (+1104) 00284d44   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x84d44
7ffe6dbc (+  48) 00284bd9   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x84bd9
7ffe6dec (+  48) 00270dc1   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x70dc1
7ffe6e1c (+  64) 0025f5d5   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x5f5d5
7ffe6e5c (+  48) 0025f4c7   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x5f4c7
7ffe6e8c (+ 112) 0025ef70   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x5ef70
7ffe6efc (+  80) 00239539   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x38c79
7ffe6f4c (+  48) 00239539   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x39539
7ffe6f7c (+  48) 00238133   </boot/beos/system/servers/app_server@0x00200000>:unknown + 0x38133
7ffe6fac (+  48) 001007be   373:runtime_loader_seg0ro@0x00100000 + 0x7be
7ffe6fdc (+   0) 7ffe6fec   372:/boot/beos/system/servers/app_s@0x7efe7000 + 0xffffec

If selected the 'Use fail-safe video mode' option, sometimes it goes through and everything else works fine, but sometimes it goes again 'out of sync limit', but sometimes it does not. I guess it is the Intel extreme driver, but you decide it.

The PC where i am running Haiku has an Intel 915 GAV motherboard, an Intel Pentium 4 at 3.4 MHz, 2048 MB of RAM and only one SATA disk. Haiku is installed on the third primary partition.

Anything else i can help with, please let me know.

Change History (8)

comment:1 by chrisjp, 12 years ago

While I don't get the same same stack trace, I get the same error on my macbook and desktop with GMA950 integrated (intel_extreme) if the hardware cursor is enabled. Seems to be a problem with the hardware allocation of the cursor memory. By setting the boolean in the driver (bHardwareCursor ? something like that) to false before the allocation, it fixes the problem.

Hope that helps somewhat.

comment:2 by leavengood, 12 years ago

It maybe unrelated, but in hrev23024 I get a KDL on boot in VMware with this backtrace:

vm_soft_fault: va 0x0 not covered by area in address space

vm_page_fault: vm_soft_fault returned error 'Bad address' on fault at 0x0, ip 0x8039f423, write 0, user 0, thread 0x2a

PANIC: vm_page_fault: unhandled page fault in kernel space at 0x0, ip 0x8039f423



Welcome to Kernel Debugging Land...

Running on CPU 0

kdebug> bt

stack trace for thread 0x2a "net_server"

    kernel stack: 0x801ed000 to 0x801f1000

      user stack: 0x7efe7000 to 0x7ffe7000

frame            caller     <image>:function + offset

801f06c8 (+  52) 80072f14   <kernel>:invoke_command + 0x0075

801f06fc (+  48) 80073169   <kernel>:kernel_debugger + 0x0212

801f072c (+ 176) 80073200   <kernel>:panic + 0x002d

801f07dc (+  64) 800548bb   <kernel>:vm_page_fault + 0x00a9

801f081c (+ 144) 8007b804   <kernel>:i386_handle_trap + 0x0261

iframe at 0x801f08b4 (end = 0x801f0908)

 eax 0x0            ebx 0x803a8d4c      ecx 0x908bec78   edx 0x908cce00

 esi 0x908cce00     edi 0x801f0a00      ebp 0x801f09b4   esp 0x801f08e4

 eip 0x8039f423  eflags 0x10286    

 vector: 0xe, error code: 0x0

801f08ac (+ 264) 8039f423   </boot/beos/system/add-ons/kernel/drivers/dev/net/3com>:device_add_child + 0x0053

801f09b4 (+  48) 8039fc76   </boot/beos/system/add-ons/kernel/drivers/dev/net/3com>:init_root_device + 0x0072

801f09e4 (+  48) 8039fe8a   </boot/beos/system/add-ons/kernel/drivers/dev/net/3com>:_fbsd_init_hardware + 0x0047

801f0a14 (+  32) 8039dc99   </boot/beos/system/add-ons/kernel/drivers/dev/net/3com>:init_hardware + 0x0020

801f0a34 (+ 128) 8003b281   <kernel>:_Z10add_driverPKcl + 0x022d

801f0ab4 (+  16) 8003b42f   <kernel>:devfs_add_driver + 0x0013

801f0ac4 (+  64) 80060f88   <kernel>:_Z11try_driversR4listb + 0x0086

801f0b04 (+ 272) 8006233b   <kernel>:probe_for_device_type + 0x03a1

801f0c14 (+  64) 80039e43   <kernel>:_Z16scan_for_driversP11devfs_vnode + 0x005f

801f0c54 (+  48) 8003bb82   <kernel>:_Z12devfs_lookupPvS_PKcPxPi + 0x005c

801f0c84 (+ 112) 80045ce0   <kernel>:_Z19vnode_path_to_vnodeP5vnodePcbiPS0_PxPi + 0x011e

801f0cf4 (+  48) 80046020   <kernel>:_Z13path_to_vnodePcbPP5vnodePxb + 0x00de

801f0d24 (+  48) 800475d8   <kernel>:_Z20fd_and_path_to_vnodeiPcbPP5vnodePxb + 0x006e

801f0d54 (+  64) 80049040   <kernel>:_Z9file_openiPcib + 0x0036

801f0d94 (+  48) 800494d7   <kernel>:_user_open + 0x008d

801f0dc4 (+ 352) 8002fced   <kernel>:syscall_dispatcher + 0x0a43

801f0f24 (+ 128) 8007b8b8   <kernel>:i386_handle_trap + 0x0315

iframe at 0x801f0fac (end = 0x801f1000)

 eax 0x46           ebx 0x5afce0        ecx 0x15         edx 0x2

 esi 0x0            edi 0x7ffe6d80      ebp 0x7ffe6928   esp 0x801f0fdc

 eip 0xffff0102  eflags 0x246      

 vector: 0x63, error code: 0x0

801f0fa4 (+   0) ffff0102

7ffe6928 (+  64) 004cef8e   </boot/beos/system/lib/libnetwork.so@0x004c5000>:unknown + 0x9f8e

7ffe6968 (+ 272) 0020a853   </boot/beos/system/servers/net_server@0x00200000>:unknown + 0xa853

7ffe6a78 (+  80) 0020aa9e   </boot/beos/system/servers/net_server@0x00200000>:unknown + 0xaa9e

7ffe6ac8 (+ 544) 002cf838   </boot/beos/system/lib/libbe.so@0x0021f000>:unknown + 0xb0838

7ffe6ce8 (+  64) 002d9b20   </boot/beos/system/lib/libbe.so@0x0021f000>:unknown + 0xbab20

7ffe6d28 (+  48) 002cfb5e   </boot/beos/system/lib/libbe.so@0x0021f000>:unknown + 0xb0b5e

7ffe6d58 (+ 544) 0020ad2a   </boot/beos/system/servers/net_server@0x00200000>:unknown + 0xad2a

7ffe6f78 (+  52) 002086dd   </boot/beos/system/servers/net_server@0x00200000>:unknown + 0x86dd

7ffe6fac (+  48) 00100104   360:runtime_loader_seg0ro@0x00100000 + 0x104

7ffe6fdc (+   0) 7ffe6fec   359:/boot/beos/system/servers/net_s@0x7efe7000 + 0xffffec

This happens at every boot.

comment:3 by artemm, 12 years ago

same problem

Acer Aspire 3683

  • Intel Celeron M 430
  • Intel GMA950

comment:4 by axeld, 12 years ago

Milestone: R1R1/alpha

Can you please retry with a build after hrev23220?

comment:5 by mzunigag_mx, 12 years ago

Summary: vm_page_fault on boot (probably because intel_extreme driver)tcsetpgrp failure on boot (it was vm_page_fault, probably because of intel_extreme driver)

This is from hrev23553.

At first, it seems to boot nicely, the mouse hand and the blue background appear, then it becomes white and the following lines appear:

 GNU gdb 6.3

This GDB was configured as "i586-pc-haiku"...(no debugging symbols found)

[tcsetpgrp failed in terminal_inferior: Invalid Argument]
Thread 112 caused an exception: Segment violation
Reading symbols from /boot/beos/system/lib/libtranslation.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libtranslation.so
Reading symbols from /boot/beos/system/lib/libz.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libz.so
Reading symbols from /boot/beos/system/lib/libpng.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libpng.so
Reading symbols from /boot/beos/system/lib/libbe.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libbe.so
Reading symbols from /boot/beos/system/lib/libfreetype.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libfreetype.so
Reading symbols from /boot/beos/system/lib/libtextencoding.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libtextencoding.so
Reading symbols from /boot/beos/system/lib/libroot.so...done.
Loaded symbols for /boot/beos/system/lib/libroot.so
Reading symbols from /boot/beos/system/lib/libstdc++.r4.so...done.
Loaded symbols for /boot/beos/system/lib/libstdc++.r4.so
Reading symbols from /boot/beos/system/add-ons/accelerants/intel_extreme.accelerant...done.
Loaded symbols for /boot/beos/system//add-ons/accelerants/intel_extreme.accelerant
[tcsetpgrp failed in terminal_inferior: Invalid Argument]

[Switching to team /boot/beos/system/servers/app_server (40) thread a:74:x-vnd.Haiku-Terminal (112)]
0x005aafd8 in tt_done_blend () from /boot/beos/system/lib/libfreetype.so

If i remove the intel_extreme.accelerant, this is the message i get:

 GNU gdb 6.3

This GDB was configured as "i586-pc-haiku"...(no debugging symbols found)

[tcsetpgrp failed in terminal_inferior: Invalid Argument]
Thread 40 caused an exception: Segment violation
Reading symbols from /boot/beos/system/lib/libtranslation.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libtranslation.so
Reading symbols from /boot/beos/system/lib/libz.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libz.so
Reading symbols from /boot/beos/system/lib/libpng.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libpng.so
Reading symbols from /boot/beos/system/lib/libbe.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libbe.so
Reading symbols from /boot/beos/system/lib/libfreetype.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libfreetype.so
Reading symbols from /boot/beos/system/lib/libtextencoding.so...(no debugging symbols found)...done.
Loaded symbols for /boot/beos/system/lib/libtextencoding.so
Reading symbols from /boot/beos/system/lib/libroot.so...done.
Loaded symbols for /boot/beos/system/lib/libroot.so
Reading symbols from /boot/beos/system/lib/libstdc++.r4.so...done.
Loaded symbols for /boot/beos/system/lib/libstdc++.r4.so
[tcsetpgrp failed in terminal_inferior: Invalid Argument]

[Switching to team /boot/beos/system/servers/app_server (40) thread picasso (40)]
0x00243d7e in Desktop::init ()

If i leave the intel_extreme.accelerant, but i remove the intel_extreme driver from /boot/beos/system/add-ons/kernel/drivers/dev/graphics, the boot process goes well, except that the Tracker or the media_addon_server crash. It is possible to work with the OS.

If i remove both the intel_extreme.accelerant and the intel_extreme driver, everything goes well and there are no crashes.

In the last months, after completing an update, i noticed that if the driver was removed, the OS booted well, so i tried this time too.

Since i do not know how to operate with GDB 6.3, please tell me which commands to run, if needed.

comment:6 by axeld, 12 years ago

Resolution: fixed
Status: newclosed

First of all, please don't hijack open bug reports - the original problem has obviously been fixed; it's okay to add the comments you did, but don't change the title afterwards to something completely different.

What happens now is that the app_server seems to crash (that tcsetpgrp is always printed by GDB and doesn't mean anything). Please open a new bug report and add the output of the "bt" command in GDB. Thanks!

You can also attach a photo if that's easier for you.

comment:7 by mzunigag_mx, 12 years ago

Summary: tcsetpgrp failure on boot (it was vm_page_fault, probably because of intel_extreme driver)vm_page_fault on boot (probably because intel_extreme driver)

The title is now back to the name it used to have. Thanks for this fixing!

comment:8 by mzunigag_mx, 12 years ago

Since hrev23591 there are no errors at all. It's been quite a long time, so i considered to thank you all again for this fixing. Even the mouse now leaves no track when drag and dropping a rectangle over the desktop. It renders very nicely, with all possible resolutions. Congratulations!

Note: See TracTickets for help on using tickets.