|
@@ -207,7 +207,6 @@ int pdflush_operation(void (*fn)(unsigned long), unsigned long arg0)
|
|
|
|
|
|
spin_lock_irqsave(&pdflush_lock, flags);
|
|
|
if (list_empty(&pdflush_list)) {
|
|
|
- spin_unlock_irqrestore(&pdflush_lock, flags);
|
|
|
ret = -1;
|
|
|
} else {
|
|
|
struct pdflush_work *pdf;
|
|
@@ -219,8 +218,9 @@ int pdflush_operation(void (*fn)(unsigned long), unsigned long arg0)
|
|
|
pdf->fn = fn;
|
|
|
pdf->arg0 = arg0;
|
|
|
wake_up_process(pdf->who);
|
|
|
- spin_unlock_irqrestore(&pdflush_lock, flags);
|
|
|
}
|
|
|
+ spin_unlock_irqrestore(&pdflush_lock, flags);
|
|
|
+
|
|
|
return ret;
|
|
|
}
|
|
|
|