[tor-commits] [tor/maint-0.4.0] kist: When readding chans, check correct chan's sched_heap_idx

nickm at torproject.org nickm at torproject.org
Tue Feb 19 16:51:29 UTC 2019


commit b054a6c6b9cdda5c35b905f98ff092f15d8b749d
Author: Matt Traudt <sirmatt at ksu.edu>
Date:   Thu Feb 14 16:18:58 2019 -0500

    kist: When readding chans, check correct chan's sched_heap_idx
    
    Closes #29508
    
    Signed-off-by: David Goulet <dgoulet at torproject.org>
---
 changes/bug29508             | 3 +++
 src/core/or/scheduler_kist.c | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/changes/bug29508 b/changes/bug29508
new file mode 100644
index 000000000..ee728bbbc
--- /dev/null
+++ b/changes/bug29508
@@ -0,0 +1,3 @@
+  o Minor bugfixes (scheduler):
+    - When readding channels to the pending list, check the correct channel's
+      sched_heap_idx. Fixes bug 29508; bugfix on 0.3.2.10
diff --git a/src/core/or/scheduler_kist.c b/src/core/or/scheduler_kist.c
index 34e567207..01be751ad 100644
--- a/src/core/or/scheduler_kist.c
+++ b/src/core/or/scheduler_kist.c
@@ -724,7 +724,7 @@ kist_scheduler_run(void)
     SMARTLIST_FOREACH_BEGIN(to_readd, channel_t *, readd_chan) {
       scheduler_set_channel_state(readd_chan, SCHED_CHAN_PENDING);
       if (!smartlist_contains(cp, readd_chan)) {
-        if (!SCHED_BUG(chan->sched_heap_idx != -1, chan)) {
+        if (!SCHED_BUG(readd_chan->sched_heap_idx != -1, readd_chan)) {
           /* XXXX Note that the check above is in theory redundant with
            * the smartlist_contains check.  But let's make sure we're
            * not messing anything up, and leave them both for now. */





More information about the tor-commits mailing list