> 
> > This enables the use of interrupts on r6xx/r7xx hardware. Interrupts
> > are implemented via a ring buffer.  The GPU adds interrupts vectors to
> > the ring and the host reads them off in the interrupt handler.  The
> > interrupt controller requires firmware like the CP.  This firmware
> > must be installed and accessible to the firmware loader for interrupts
> > to function.
> 
> If the fw isn't installed and you load the driver, it leafves the irq 
> handler installed by the looks of it, adding the fw thenloading the driver 
> really confuses things then.

Another unload issue

BUG: sleeping function called from invalid context at 
/home/airlied/git/drm-2.6/mm/vmalloc.c:1349
in_atomic(): 1, irqs_disabled(): 1, pid: 6885, name: rmmod
Pid: 6885, comm: rmmod Not tainted 2.6.31-rc9 #80
Call Trace:
 [<ffffffff8102cd56>] __might_sleep+0xfe/0x100
 [<ffffffff810b5ffc>] vunmap+0x38/0x47
 [<ffffffffa004d313>] ttm_bo_kunmap+0x41/0x5a [ttm]
 [<ffffffffa007b6b1>] radeon_object_kunmap+0x55/0x5a [radeon]
 [<ffffffffa009bff1>] r600_ih_ring_fini+0x34/0x7a [radeon]
 [<ffffffffa009c0c1>] r600_irq_fini+0x8a/0x8e [radeon]
 [<ffffffffa009f5fb>] rv770_fini+0x21/0x9a [radeon]
 [<ffffffffa006ec89>] radeon_device_fini+0x2e/0x49 [radeon]
 [<ffffffffa006f795>] radeon_driver_unload_kms+0x26/0x41 [radeon]
 [<ffffffffa0017c90>] drm_put_dev+0xda/0x1a7 [drm]
 [<ffffffffa00590cc>] radeon_pci_remove+0x10/0x14 [radeon]
 [<ffffffff811a7e20>] pci_device_remove+0x28/0x4c
 [<ffffffff8121dd6c>] __device_release_driver+0x61/0xa7
 [<ffffffff8121de3c>] driver_detach+0x8a/0xb0
 [<ffffffff8121d090>] bus_remove_driver+0x86/0xa9
 [<ffffffff8121e319>] driver_unregister+0x67/0x6f
 [<ffffffff811a8050>] pci_unregister_driver+0x3f/0x88
 [<ffffffffa0013f17>] drm_exit+0x40/0x79 [drm]
 [<ffffffffa00ab73c>] radeon_exit+0x10/0x12 [radeon]
 [<ffffffff81063bbb>] sys_delete_module+0x1b7/0x224
 [<ffffffff812fc180>] ? do_page_fault+0x33d/0x36d
 [<ffffffff810747ad>] ? audit_syscall_entry+0x1e9/0x215
 [<ffffffff8100ba6b>] system_call_fastpath+0x16/0x1b

don't know if we need to take the lock once we know the irqs are off.

Dave.

------------------------------------------------------------------------------
Join us December 9, 2009 for the Red Hat Virtual Experience,
a free event focused on virtualization and cloud computing. 
Attend in-depth sessions from your desk. Your couch. Anywhere.
http://p.sf.net/sfu/redhat-sfdev2dev
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to