From db6011fba6ee5437e016831f8eee7fcc73f0a5f9 Mon Sep 17 00:00:00 2001
From: Craig Tiller <ctiller@google.com>
Date: Sun, 24 Apr 2016 13:03:11 -0700
Subject: [PATCH] Fix inf loop

---
 src/core/ext/client_config/subchannel.c | 7 -------
 test/core/end2end/fuzzers/api_fuzzer.c  | 2 +-
 2 files changed, 1 insertion(+), 8 deletions(-)

diff --git a/src/core/ext/client_config/subchannel.c b/src/core/ext/client_config/subchannel.c
index 125a291f21..c925c28c67 100644
--- a/src/core/ext/client_config/subchannel.c
+++ b/src/core/ext/client_config/subchannel.c
@@ -135,8 +135,6 @@ struct grpc_subchannel {
   int have_alarm;
   /** our alarm */
   grpc_timer alarm;
-  /** current random value */
-  uint32_t random;
 };
 
 struct grpc_subchannel_call {
@@ -297,10 +295,6 @@ void grpc_subchannel_weak_unref(grpc_exec_ctx *exec_ctx,
   }
 }
 
-static uint32_t random_seed() {
-  return (uint32_t)(gpr_time_to_millis(gpr_now(GPR_CLOCK_MONOTONIC)));
-}
-
 grpc_subchannel *grpc_subchannel_create(grpc_exec_ctx *exec_ctx,
                                         grpc_connector *connector,
                                         grpc_subchannel_args *args) {
@@ -332,7 +326,6 @@ grpc_subchannel *grpc_subchannel_create(grpc_exec_ctx *exec_ctx,
   grpc_set_initial_connect_string(&c->addr, &c->addr_len,
                                   &c->initial_connect_string);
   c->args = grpc_channel_args_copy(args->args);
-  c->random = random_seed();
   c->root_external_state_watcher.next = c->root_external_state_watcher.prev =
       &c->root_external_state_watcher;
   grpc_closure_init(&c->connected, subchannel_connected, c);
diff --git a/test/core/end2end/fuzzers/api_fuzzer.c b/test/core/end2end/fuzzers/api_fuzzer.c
index 5ccaa784a4..b133a948ee 100644
--- a/test/core/end2end/fuzzers/api_fuzzer.c
+++ b/test/core/end2end/fuzzers/api_fuzzer.c
@@ -264,7 +264,7 @@ static void do_connect(grpc_exec_ctx *exec_ctx, void *arg, bool success) {
 
 static void sched_connect(grpc_exec_ctx *exec_ctx, grpc_closure *closure,
                           grpc_endpoint **ep, gpr_timespec deadline) {
-  if (gpr_time_cmp(deadline, gpr_now(deadline.clock_type)) <= 0) {
+  if (gpr_time_cmp(deadline, gpr_now(deadline.clock_type)) < 0) {
     *ep = NULL;
     grpc_exec_ctx_enqueue(exec_ctx, closure, false, NULL);
     return;
-- 
GitLab