sched: Ignore closed channel after flushing cells
commitdcabf801e52a83e2c3cc23ccc1fa906582a927d6
authorDavid Goulet <dgoulet@torproject.org>
Wed, 8 Nov 2017 14:44:39 +0000 (8 09:44 -0500)
committerDavid Goulet <dgoulet@torproject.org>
Wed, 8 Nov 2017 14:44:39 +0000 (8 09:44 -0500)
tree298f6cc999b675a78d7333b41d0ef18290ebb444
parente5a83062ed4e9e6b908efc6b75f13ab269f97377
sched: Ignore closed channel after flushing cells

The flush cells process can close a channel if the connection write fails but
still return that it flushed at least one cell. This is due because the error
is not propagated up the call stack so there is no way of knowing if the flush
actually was successful or not.

Because this would require an important refactoring touching multiple
subsystems, this patch is a bandaid to avoid the KIST scheduler to handle
closed channel in its loop.

Bandaid on #23751.

Signed-off-by: David Goulet <dgoulet@torproject.org>
changes/bug23751 [new file with mode: 0644]
src/or/scheduler_kist.c