Welcome! Log In Create A New Profile

Advanced

timeout queue broken since f6e6dc1

Posted by Patrick Hemmer 
Patrick Hemmer
timeout queue broken since f6e6dc1
June 06, 2018 01:00AM
Just ran across an issue where the `timeout queue` option is
non-functional. I can send a request to haproxy which sits in the queue
for well past the configured limit.

It appears the issue popped up as a result of this commit:

commit f6e6dc12cd533b2d8bb6413a4b5f875ddfd3e6e3 (refs/bisect/bad)
Author: Olivier Houchard <[email protected]>
Date: Fri May 18 18:38:23 2018 +0200

MAJOR: tasks: Create a per-thread runqueue.

A lot of tasks are run on one thread only, so instead of having them all
in the global runqueue, create a per-thread runqueue which doesn't
require
any locking, and add all tasks belonging to only one thread to the
corresponding runqueue.

The global runqueue is still used for non-local tasks, and is visited
by each thread when checking its own runqueue. The nice parameter is
thus used both in the global runqueue and in the local ones. The rare
tasks that are bound to multiple threads will have their nice value
used twice (once for the global queue, once for the thread-local one).


Reproduced with TARGET=osx
Compiler clang-900.0.39.2

-Patrick
Sorry, only registered users may post in this forum.

Click here to login