mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2025-03-11 17:08:46 +00:00
Threads shouldn't drop stopping loops
This commit is contained in:
parent
0fb9177374
commit
bf961ba405
@ -666,7 +666,6 @@ birdloop_take(struct birdloop_pickup_group *group)
|
|||||||
struct birdloop *loop = NULL;
|
struct birdloop *loop = NULL;
|
||||||
|
|
||||||
LOCK_DOMAIN(attrs, group->domain);
|
LOCK_DOMAIN(attrs, group->domain);
|
||||||
|
|
||||||
int drop =
|
int drop =
|
||||||
this_thread->busy_active &&
|
this_thread->busy_active &&
|
||||||
(group->thread_busy_count < group->thread_count) &&
|
(group->thread_busy_count < group->thread_count) &&
|
||||||
@ -683,7 +682,7 @@ birdloop_take(struct birdloop_pickup_group *group)
|
|||||||
WALK_LIST2(loop, n, this_thread->loops, n)
|
WALK_LIST2(loop, n, this_thread->loops, n)
|
||||||
{
|
{
|
||||||
birdloop_enter(loop);
|
birdloop_enter(loop);
|
||||||
if (ev_active(&loop->event))
|
if (ev_active(&loop->event) && !loop->stopped)
|
||||||
{
|
{
|
||||||
LOOP_TRACE(loop, DL_SCHEDULING, "Dropping from thread");
|
LOOP_TRACE(loop, DL_SCHEDULING, "Dropping from thread");
|
||||||
/* Pass to another thread */
|
/* Pass to another thread */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user