Displaying 1 result from an estimated 1 matches for "num_unused".
2010 Jul 10
1
deadlock possiblity introduced by "drm/nouveau: use drm_mm in preference to custom code doing the same thing"
...ock(&mm->unused_lock);
+ spin_lock_irqsave(&mm->unused_lock, flags);
if (list_empty(&mm->unused_nodes))
child = NULL;
else {
@@ -98,7 +99,7 @@ static struct drm_mm_node *drm_mm_kmalloc(struct drm_mm *mm, int atomic)
list_del(&child->fl_entry);
--mm->num_unused;
}
- spin_unlock(&mm->unused_lock);
+ spin_unlock_irqrestore(&mm->unused_lock, flags);
}
return child;
}
@@ -111,22 +112,23 @@ static struct drm_mm_node *drm_mm_kmalloc(struct drm_mm *mm, int atomic)
int drm_mm_pre_get(struct drm_mm *mm)
{
struct drm_mm_node *node;
+ uns...