MFprojects/camlock r254685:
Remove TQ_FLAGS_PENDING flag, softly duplicating queue emptiness status.
This commit is contained in:
parent
b43560ab19
commit
1d1e92f102
@ -70,7 +70,6 @@ struct taskqueue {
|
|||||||
|
|
||||||
#define TQ_FLAGS_ACTIVE (1 << 0)
|
#define TQ_FLAGS_ACTIVE (1 << 0)
|
||||||
#define TQ_FLAGS_BLOCKED (1 << 1)
|
#define TQ_FLAGS_BLOCKED (1 << 1)
|
||||||
#define TQ_FLAGS_PENDING (1 << 2)
|
|
||||||
|
|
||||||
#define DT_CALLOUT_ARMED (1 << 0)
|
#define DT_CALLOUT_ARMED (1 << 0)
|
||||||
|
|
||||||
@ -223,8 +222,6 @@ taskqueue_enqueue_locked(struct taskqueue *queue, struct task *task)
|
|||||||
task->ta_pending = 1;
|
task->ta_pending = 1;
|
||||||
if ((queue->tq_flags & TQ_FLAGS_BLOCKED) == 0)
|
if ((queue->tq_flags & TQ_FLAGS_BLOCKED) == 0)
|
||||||
queue->tq_enqueue(queue->tq_context);
|
queue->tq_enqueue(queue->tq_context);
|
||||||
else
|
|
||||||
queue->tq_flags |= TQ_FLAGS_PENDING;
|
|
||||||
|
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
@ -301,10 +298,8 @@ taskqueue_unblock(struct taskqueue *queue)
|
|||||||
|
|
||||||
TQ_LOCK(queue);
|
TQ_LOCK(queue);
|
||||||
queue->tq_flags &= ~TQ_FLAGS_BLOCKED;
|
queue->tq_flags &= ~TQ_FLAGS_BLOCKED;
|
||||||
if (queue->tq_flags & TQ_FLAGS_PENDING) {
|
if (!STAILQ_EMPTY(&queue->tq_queue))
|
||||||
queue->tq_flags &= ~TQ_FLAGS_PENDING;
|
|
||||||
queue->tq_enqueue(queue->tq_context);
|
queue->tq_enqueue(queue->tq_context);
|
||||||
}
|
|
||||||
TQ_UNLOCK(queue);
|
TQ_UNLOCK(queue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user