summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@linux.ie>2007-06-01 19:00:24 +1000
committerDave Airlie <airlied@linux.ie>2007-06-01 19:00:24 +1000
commit638c8087deecdf489eb4f70e82590d1be0c8c942 (patch)
treec75e52e21b3912e1d41ccdecbf3e78698c952a82
parent5c394b309de4325daae67fc766a0640b39658a64 (diff)
drm: fixup initialisation of list heads and idr
-rw-r--r--linux-core/drm_fops.c6
-rw-r--r--linux-core/drm_stub.c9
2 files changed, 7 insertions, 8 deletions
diff --git a/linux-core/drm_fops.c b/linux-core/drm_fops.c
index 9625d8f55..e54d5079e 100644
--- a/linux-core/drm_fops.c
+++ b/linux-core/drm_fops.c
@@ -79,12 +79,6 @@ static int drm_setup(drm_device_t * dev)
drm_ht_create(&dev->magiclist, DRM_MAGIC_HASH_ORDER);
INIT_LIST_HEAD(&dev->magicfree);
- INIT_LIST_HEAD(&dev->ctxlist);
- INIT_LIST_HEAD(&dev->vmalist);
-
- INIT_LIST_HEAD(&dev->drwlist);
- idr_init(&dev->drw_idr);
-
dev->sigdata.lock = NULL;
init_waitqueue_head(&dev->lock.lock_queue);
dev->queue_count = 0;
diff --git a/linux-core/drm_stub.c b/linux-core/drm_stub.c
index bcbabf8d0..7b0a0f97c 100644
--- a/linux-core/drm_stub.c
+++ b/linux-core/drm_stub.c
@@ -60,7 +60,12 @@ static int drm_fill_in_dev(drm_device_t * dev, struct pci_dev *pdev,
{
int retcode;
+ INIT_LIST_HEAD(&dev->drwlist);
INIT_LIST_HEAD(&dev->filelist);
+ INIT_LIST_HEAD(&dev->ctxlist);
+ INIT_LIST_HEAD(&dev->vmalist);
+ INIT_LIST_HEAD(&dev->maplist);
+
spin_lock_init(&dev->count_lock);
spin_lock_init(&dev->drw_lock);
spin_lock_init(&dev->tasklet_lock);
@@ -71,6 +76,8 @@ static int drm_fill_in_dev(drm_device_t * dev, struct pci_dev *pdev,
mutex_init(&dev->bm.init_mutex);
mutex_init(&dev->bm.evict_mutex);
+ idr_init(&dev->drw_idr);
+
dev->pdev = pdev;
dev->pci_device = pdev->device;
dev->pci_vendor = pdev->vendor;
@@ -95,8 +102,6 @@ static int drm_fill_in_dev(drm_device_t * dev, struct pci_dev *pdev,
return -ENOMEM;
}
- INIT_LIST_HEAD(&dev->maplist);
-
/* the DRM has 6 counters */
dev->counters = 6;
dev->types[0] = _DRM_STAT_LOCK;