zebra: no need to clear memory of the netlink buffers
The memory is always written before sending. Clearing it before use
slows netlink_route_multipath() down considerably and it's pretty
noticeable in a full-internet table scenario loading.
* zebra/rt_netlink.c: subtract bulk buffer size from clear
Signed-off-by: Jorge Boncompte [DTI2] <jorge@dti2.net>
[reworded commit message]
Signed-off-by: David Lamparter <equinox@diac24.net>
diff --git a/zebra/rt_netlink.c b/zebra/rt_netlink.c
index 5909131..15475e2 100644
--- a/zebra/rt_netlink.c
+++ b/zebra/rt_netlink.c
@@ -1368,7 +1368,7 @@
char buf[NL_PKT_BUF_SIZE];
} req;
- memset (&req, 0, sizeof req);
+ memset (&req, 0, sizeof req - NL_PKT_BUF_SIZE);
bytelen = (family == AF_INET ? 4 : 16);
@@ -1443,7 +1443,7 @@
char buf[NL_PKT_BUF_SIZE];
} req;
- memset (&req, 0, sizeof req);
+ memset (&req, 0, sizeof req - NL_PKT_BUF_SIZE);
bytelen = (family == AF_INET ? 4 : 16);
@@ -1903,7 +1903,7 @@
} req;
p = ifc->address;
- memset (&req, 0, sizeof req);
+ memset (&req, 0, sizeof req - NL_PKT_BUF_SIZE);
bytelen = (family == AF_INET ? 4 : 16);