Revert "dnsmasq: backport latest patches"
[openwrt/staging/lynxis.git] / package / network / services / dnsmasq / patches / 0035-lease-prune-lease-as-soon-as-expired.patch
diff --git a/package/network/services/dnsmasq/patches/0035-lease-prune-lease-as-soon-as-expired.patch b/package/network/services/dnsmasq/patches/0035-lease-prune-lease-as-soon-as-expired.patch
deleted file mode 100644 (file)
index e1cfde8..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From df6636bff61aa53ed7ad4b34d940805193c0bc74 Mon Sep 17 00:00:00 2001
-From: Florent Fourcot <florent.fourcot@wifirst.fr>
-Date: Mon, 11 Feb 2019 17:04:44 +0100
-Subject: [PATCH 35/57] lease: prune lease as soon as expired
-
-We detected a performance issue on a dnsmasq running many dhcp sessions
-(more than 10 000). At the end of the day, the server was only releasing
-old DHCP leases but was consuming a lot of CPU.
-
-It looks like curent dhcp pruning:
- 1) it's pruning old sessions (iterate on all current leases). It's
- important to note that it's only pruning session expired since more
- than one second
- 2) it's looking for next lease to expire (iterate on all current leases
- again)
- 3) it launchs an alarm to catch next expiration found in step 2). This
- value can be zero for leases just expired (but not pruned).
-
-So, for a second, dnsmasq could fall in a "prune loop" by doing:
- * Not pruning anything, since difftime() is not > 0
- * Run alarm again with zero as argument
-
-On a server with very large number of leases and releasing often
-sessions, that can waste a very big CPU time.
-
-Signed-off-by: Florent Fourcot <florent.fourcot@wifirst.fr>
-Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
----
- src/lease.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/src/lease.c
-+++ b/src/lease.c
-@@ -558,7 +558,7 @@ void lease_prune(struct dhcp_lease *targ
-   for (lease = leases, up = &leases; lease; lease = tmp)
-     {
-       tmp = lease->next;
--      if ((lease->expires != 0 && difftime(now, lease->expires) > 0) || lease == target)
-+      if ((lease->expires != 0 && difftime(now, lease->expires) >= 0) || lease == target)
-       {
-         file_dirty = 1;
-         if (lease->hostname)