drm/radeon: use system_wq instead of dev_priv->wq
authorTejun Heo <tj@kernel.org>
Mon, 3 Jan 2011 13:49:32 +0000 (14:49 +0100)
committerDave Airlie <airlied@redhat.com>
Thu, 6 Jan 2011 04:32:16 +0000 (14:32 +1000)
commit32c87fca2fac490e34a9fa900b45f2fbb4faacf9
tree181e9c1d1493124f0a0f5a8a65be4bf29053b77e
parentaf5dd83b873efd4e1477f2265b6fa15a825aff26
drm/radeon: use system_wq instead of dev_priv->wq

With cmwq, there's no reason for radeon to use a dedicated workqueue.
Drop dev_priv->wq and use system_wq instead.

Because radeon_driver_irq_uninstall_kms() may be called from
unsleepable context, the work items can't be flushed from there.
Instead, init and flush from radeon_irq_kms_init/fini().

While at it, simplify canceling/flushing of rdev->pm.dynpm_idle_work.
Always initialize and sync cancel instead of being unnecessarily smart
about it.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Alex Deucher <alexdeucher@gmail.com>
Cc: dri-devel@lists.freedesktop.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/evergreen.c
drivers/gpu/drm/radeon/r100.c
drivers/gpu/drm/radeon/r600.c
drivers/gpu/drm/radeon/radeon.h
drivers/gpu/drm/radeon/radeon_device.c
drivers/gpu/drm/radeon/radeon_irq_kms.c
drivers/gpu/drm/radeon/radeon_pm.c
drivers/gpu/drm/radeon/rs600.c