]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: listeners: do not uselessly try to close zombie listeners in soft_stop()
authorWilly Tarreau <w@1wt.eu>
Wed, 23 Sep 2020 16:12:11 +0000 (18:12 +0200)
committerWilly Tarreau <w@1wt.eu>
Fri, 9 Oct 2020 09:27:29 +0000 (11:27 +0200)
The loop doesn't match anymore since the non-started listeners are in
LI_INIT and even if it had ever worked the benefit of closing zombies
at this point looks void at best.

src/proxy.c

index e23268d98f28f86a49bbe9a6b17922ef4a3ddc09..d5af92fc0040694c6a7ba65452dd6e368993acb3 100644 (file)
@@ -1237,21 +1237,6 @@ void soft_stop(void)
        p = proxies_list;
        tv_update_date(0,1); /* else, the old time before select will be used */
        while (p) {
-               /* Zombie proxy, let's close the file descriptors */
-               if (p->state == PR_STSTOPPED &&
-                   !LIST_ISEMPTY(&p->conf.listeners) &&
-                   LIST_ELEM(p->conf.listeners.n,
-                   struct listener *, by_fe)->state > LI_ASSIGNED) {
-                       struct listener *l;
-                       list_for_each_entry(l, &p->conf.listeners, by_fe) {
-                               if (l->state > LI_ASSIGNED) {
-                                       fd_delete(l->rx.fd);
-                                       l->rx.fd = -1;
-                               }
-                               l->state = LI_INIT;
-                       }
-               }
-
                if (p->state != PR_STSTOPPED) {
                        ha_warning("Stopping %s %s in %d ms.\n", proxy_cap_str(p->cap), p->id, p->grace);
                        send_log(p, LOG_WARNING, "Stopping %s %s in %d ms.\n", proxy_cap_str(p->cap), p->id, p->grace);