| @@ -120,26 +120,31 @@ drm_gem_init(struct drm_device *dev) | | | @@ -120,26 +120,31 @@ drm_gem_init(struct drm_device *dev) |
120 | | | 120 | |
121 | return 0; | | 121 | return 0; |
122 | } | | 122 | } |
123 | | | 123 | |
124 | void | | 124 | void |
125 | drm_gem_destroy(struct drm_device *dev) | | 125 | drm_gem_destroy(struct drm_device *dev) |
126 | { | | 126 | { |
127 | struct drm_gem_mm *mm = dev->mm_private; | | 127 | struct drm_gem_mm *mm = dev->mm_private; |
128 | | | 128 | |
129 | drm_mm_takedown(&mm->offset_manager); | | 129 | drm_mm_takedown(&mm->offset_manager); |
130 | drm_ht_remove(&mm->offset_hash); | | 130 | drm_ht_remove(&mm->offset_hash); |
131 | kfree(mm); | | 131 | kfree(mm); |
132 | dev->mm_private = NULL; | | 132 | dev->mm_private = NULL; |
| | | 133 | |
| | | 134 | #ifdef __NetBSD__ |
| | | 135 | idr_destroy(&dev->object_name_idr); |
| | | 136 | spin_lock_destroy(&dev->object_name_lock); |
| | | 137 | #endif |
133 | } | | 138 | } |
134 | | | 139 | |
135 | /** | | 140 | /** |
136 | * Initialize an already allocated GEM object of the specified size with | | 141 | * Initialize an already allocated GEM object of the specified size with |
137 | * shmfs backing store. | | 142 | * shmfs backing store. |
138 | */ | | 143 | */ |
139 | int drm_gem_object_init(struct drm_device *dev, | | 144 | int drm_gem_object_init(struct drm_device *dev, |
140 | struct drm_gem_object *obj, size_t size) | | 145 | struct drm_gem_object *obj, size_t size) |
141 | { | | 146 | { |
142 | BUG_ON((size & (PAGE_SIZE - 1)) != 0); | | 147 | BUG_ON((size & (PAGE_SIZE - 1)) != 0); |
143 | | | 148 | |
144 | obj->dev = dev; | | 149 | obj->dev = dev; |
145 | obj->filp = shmem_file_setup("drm mm object", size, VM_NORESERVE); | | 150 | obj->filp = shmem_file_setup("drm mm object", size, VM_NORESERVE); |