Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 176815 - OpenGL apps returns Segmentation Fault after updating to mesa-6.5.2-r1 with xf86-video-via
Summary: OpenGL apps returns Segmentation Fault after updating to mesa-6.5.2-r1 with x...
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-05-02 14:11 UTC by Edoardo Liverani
Modified: 2008-05-09 08:36 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Edoardo Liverani 2007-05-02 14:11:07 UTC
After my last update, i tried to start glxgears, and I got Segmentation fault.
This appens with any opengl app,also glxinfo.

Reproducible: Always

Steps to Reproduce:
1.Update deep world, including mesa-6.5.2-r1
2.start X
3.start glxgears, or any opengl app

Actual Results:  
Apps don't start, and returns Segmentation fault


Versions: x11-drivers/xf86-video-via-0.2.2 x11-base/xorg-server-1.2.0-r3 x11-libs/libdrm-2.3.0 >=media-libs/mesa-6.5.2-r1 
+Kernels's drm(via) of gentoo-sources-2.6.20-r7

Dmesg of segfault:
BUG: unable to handle kernel NULL pointer dereference at virtual address
00000004
 printing eip:
c0124db7
*pde = 00000000
Oops: 0002 [#1]
Modules linked in: rt2500 snd_via82xx snd_ac97_codec ac97_bus snd_mpu401_uart
snd_rawmidi ehci_hcd uhci_hcd
CPU:    0
EIP:    0060:[<c0124db7>]    Not tainted VLI
EFLAGS: 00210046   (2.6.20-gentoo-r7-eddy #1)
EIP is at add_wait_queue+0x10/0x1d
eax: cdc04998   ebx: 00000000   ecx: c78e7ed4   edx: c78e7ec8
esi: 00200246   edi: ffffa263   ebp: c78e7f0c   esp: c78e7eb0
ds: 007b   es: 007b   ss: 0068
Process glxgears (pid: 5124, ti=c78e6000 task=cde0ca70 task.ti=c78e6000)
Stack: cdc04800 cdc04800 c02a0122 00000040 c78e7ee0 00000000 00000000 cde0ca70 
       c01145ba 00000000 00000000 00000000 cdc04800 00000000 c050df30 c029c075 
       ffffffff c7ce0240 00000000 00000000 00000000 00000000 00000000 00000000 
Call Trace:
 [<c02a0122>] via_driver_vblank_wait+0xb9/0x12b
 [<c01145ba>] default_wake_function+0x0/0xc
 [<c029c075>] drm_wait_vblank+0x1ed/0x23c
 [<c0124d10>] autoremove_wake_function+0x0/0x35
 [<c029be88>] drm_wait_vblank+0x0/0x23c
 [<c029aa6c>] drm_ioctl+0x14b/0x193
 [<c0101e47>] __switch_to+0x102/0x163
 [<c010643a>] make_8259A_irq+0x2c/0x3b
 [<c029a921>] drm_ioctl+0x0/0x193
 [<c0152706>] do_ioctl+0x3e/0x4d
 [<c0152919>] vfs_ioctl+0x204/0x21b
 [<c0152963>] sys_ioctl+0x33/0x4c
 [<c0102ac6>] sysenter_past_esp+0x5f/0x85
 [<c010643a>] make_8259A_irq+0x2c/0x3b
 =======================
Code: 8b 43 04 89 41 04 89 08 c7 43 04 00 02 20 00 c7 42 0c 00 01 10 00 56 9d
5b 5e c3 56 83 22 fe 53 9c 5e fa 8b 18 8d 4a 0c 89 5a 0c <89> 4b 04 89 08 89 41
04 56 9d 5b 5e c3 56 83 0a 01 53 9c 5e fa 
EIP: [<c0124db7>] add_wait_queue+0x10/0x1d SS:ESP 0068:c78e7eb0
Comment 1 Edoardo Liverani 2007-05-07 14:15:18 UTC
Partially solved removing kernel's drm and emerging x11-drm modules (20070314).

Should this bug be passed to gentoo-sources developers?
Comment 2 Joshua Baergen (RETIRED) gentoo-dev 2007-05-07 23:02:53 UTC
(In reply to comment #1)
> Partially solved removing kernel's drm and emerging x11-drm modules (20070314).
> 
> Should this bug be passed to gentoo-sources developers?
> 

Is this still true of the new kernel (2.6.21)?
Comment 3 Edoardo Liverani 2007-05-20 17:40:28 UTC
Yes it is.
I tried today with 2.6.21, and it has the same problem.
Comment 4 Marcel Meckel 2007-07-17 09:39:38 UTC
Still present in 2.6.21-gentoo-r4:

posting kernel error message so people can find this bug:

BUG: unable to handle kernel NULL pointer dereference at virtual address 00000004
 printing eip:
c0121c78
*pde = 00000000
Oops: 0002 [#1]
PREEMPT 
CPU:    0
EIP:    0060:[<c0121c78>]    Not tainted VLI
EFLAGS: 00013002   (2.6.21-gentoo-r4 #1)
EIP is at add_wait_queue+0x18/0x40
eax: cdc08980   ebx: 00000000   ecx: cd075eb8   edx: cd075eac
esi: 00003246   edi: 0011e9b3   ebp: 00000000   esp: cd075e6c
ds: 007b   es: 007b   fs: 00d8  gs: 0033  ss: 0068
Process X (pid: 3831, ti=cd074000 task=cd222a50 task.ti=cd074000)
Stack: cd075eac cdc08800 c02069c7 cdc5ac80 c02da1d7 00000000 cd075f04 00000000 
       00000000 cd222a50 c010dc70 00000000 00000000 0401a8c0 cdfee2a0 cdfea400 
       00000000 cd222a50 c010dc70 00000000 00000000 00000000 cd075f00 bfc22284 
Call Trace:
 [<c02069c7>] via_driver_vblank_wait+0xc7/0x140
 [<c02da1d7>] tcp_v4_rcv+0x3c7/0x5d0
 [<c010dc70>] default_wake_function+0x0/0x10
 [<c010dc70>] default_wake_function+0x0/0x10
 [<c020286a>] drm_wait_vblank+0x26a/0x2b0
 [<c0201253>] drm_ioctl+0x153/0x1a0
 [<c013960f>] __handle_mm_fault+0xbf/0x200
 [<c0202600>] drm_wait_vblank+0x0/0x2b0
 [<c010643a>] dma_alloc_coherent+0xba/0x100
 [<c0151f34>] do_ioctl+0x54/0x70
 [<c010643a>] dma_alloc_coherent+0xba/0x100
 [<c01521b2>] vfs_ioctl+0x172/0x180
 [<c01521f2>] sys_ioctl+0x32/0x50
 [<c01026a0>] syscall_call+0x7/0xb
 [<c010643a>] dma_alloc_coherent+0xba/0x100
 =======================
Code: 90 90 90 83 ec 10 89 00 89 40 04 83 c4 10 c3 8d 74 26 00 56 53 83 22 fe 9c 5e fa 89 e1 81 e1 00 e0 ff ff ff 41 14 8d 4a 0c 8b 18 <89> 4b 04 89 5a 0c 89 41 04 89 08 56 9d 89 e0 25 00 e0 ff ff ff 
EIP: [<c0121c78>] add_wait_queue+0x18/0x40 SS:ESP 0068:cd075e6c
note: X[3831] exited with preempt_count 1
BUG: scheduling while atomic: X/0x10000001/3831
 [<c03070b7>] __sched_text_start+0x57/0x560
 [<c0137a7c>] unmap_page_range+0xbc/0x110
 [<c010e7b6>] __cond_resched+0x16/0x40
 [<c0307d36>] cond_resched+0x26/0x40
 [<c0137c17>] unmap_vmas+0x147/0x1b0
 [<c013be16>] exit_mmap+0x66/0xf0
 [<c010ee4f>] mmput+0x1f/0x80
 [<c0113374>] do_exit+0x194/0x340
 [<c01031ed>] die+0x1cd/0x1e0
 [<c010c75d>] do_page_fault+0x45d/0x540
 [<c0102913>] common_interrupt+0x23/0x30
 [<c010c300>] do_page_fault+0x0/0x540
 [<c0308ab4>] error_code+0x74/0x80
 [<c0121c78>] add_wait_queue+0x18/0x40
 [<c02069c7>] via_driver_vblank_wait+0xc7/0x140
 [<c02da1d7>] tcp_v4_rcv+0x3c7/0x5d0
 [<c010dc70>] default_wake_function+0x0/0x10
 [<c010dc70>] default_wake_function+0x0/0x10
 [<c020286a>] drm_wait_vblank+0x26a/0x2b0
 [<c0201253>] drm_ioctl+0x153/0x1a0
 [<c013960f>] __handle_mm_fault+0xbf/0x200
 [<c0202600>] drm_wait_vblank+0x0/0x2b0
 [<c010643a>] dma_alloc_coherent+0xba/0x100
 [<c0151f34>] do_ioctl+0x54/0x70
 [<c010643a>] dma_alloc_coherent+0xba/0x100
 [<c01521b2>] vfs_ioctl+0x172/0x180
 [<c01521f2>] sys_ioctl+0x32/0x50
 [<c01026a0>] syscall_call+0x7/0xb
 [<c010643a>] dma_alloc_coherent+0xba/0x100
 =======================
[drm:drm_release] *ERROR* Device busy: 1 0
Comment 5 Marcel Meckel 2007-07-21 03:26:29 UTC
workaround with no in-kernel drm and emerging x11-drm modules didn't work for me.

The only difference: X doesn't get killed anymore but freezes instead.

@Edoardo: Please increase severity to "major".
Comment 6 Edoardo Liverani 2007-09-08 12:42:05 UTC
Still true in linux 2.6.22. (Tried also with mesa 7)
Severity increased
Comment 7 Donnie Berkholz (RETIRED) gentoo-dev 2008-05-09 08:36:49 UTC
Please test with the latest stuff to see if this is still a problem -- 2.6.25 and mesa 7.0.3 -- and reopen with results.