matthiaswinkler n00b
Joined: 24 Aug 2007 Posts: 10
|
Posted: Thu Oct 11, 2007 2:54 pm Post subject: ATI fglrx 8.40.4 seems to have a bug |
|
|
Hi,
I just compiled my kernel with lock-debugging and so on.
seems the fglrx 8.40.4 seems to have a bug:
BUG: sleeping function called from invalid context at include/asm/semaphore.h:99
This means a semaphore is called while holding a spinlock!!!
This is a big BUG!
Spinlock's are for short time and can NOT sleep. Now inside the
spinlock a semaphore is requested. BUT if we have to wait for
a semaphore this thread will defently sleep!
short: NEVER semaphore/mutex inside a spinlock !!!
<6>[fglrx] module unloaded - fglrx 8.40.4 [Jul 31 2007] on minor 0
<6>[fglrx] Maximum main memory to use for locked dma buffers: 369 MBytes.
<6>[fglrx] USWC is disabled in module parameters
<6>[fglrx] PAT is disabled!
<6>[fglrx] module loaded - fglrx 8.40.4 [Jul 31 2007] on minor 0
<3>BUG: sleeping function called from invalid context at include/asm/semaphore.h:99
<4>in_atomic():1, irqs_disabled():0
<4>INFO: lockdep is turned off.
<4> [<dcd65f91>] __ke_down_struct_sem+0x21/0x50 [fglrx]
<4> [<dcd6acef>] firegl_remove_all_drawables+0x3f/0x100 [fglrx]
<4> [<dcd70e73>] firegl_takedown+0x63/0xc40 [fglrx]
<4> [<dcd7046b>] firegl_release+0x9b/0x190 [fglrx]
<4> [<c03b0dc4>] _spin_lock+0x34/0x40
<4> [<dcd704ff>] firegl_release+0x12f/0x190 [fglrx]
<4> [<dcd6471f>] ip_firegl_release+0xf/0x20 [fglrx]
<4> [<c0167046>] __fput+0xb6/0x1b0
<4> [<c016442e>] filp_close+0x3e/0x70
<4> [<c01657ec>] sys_close+0x6c/0xc0
<4> [<c0104156>] syscall_call+0x7/0xb
<4> =======================
<4>pci_get_irq: found irq: 16
regards Matthias |
|