From 7bfe765ae06fcc0a5570fdd793237e5fa828f7e7 Mon Sep 17 00:00:00 2001 From: David Lamparter Date: Mon, 2 Sep 2019 20:52:56 +0200 Subject: build: only build without libcap on request Linux FRR builds without libcap are massively slow due to the signal-based UID/GID synchronization across threads. This disables the automatic fallback to build without libcap; it can still be requested with "--disable-capabilities" but if the option isn't given in either direction and we can't find libcap that's an error now. Signed-off-by: David Lamparter --- configure.ac | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/configure.ac b/configure.ac index 676c98438..b30b07d8e 100755 --- a/configure.ac +++ b/configure.ac @@ -2007,6 +2007,20 @@ if test "${enable_capabilities}" != "no"; then -o x"${frr_ac_lcaps}" = x"yes"; then AC_DEFINE([HAVE_CAPABILITIES], [1], [capabilities]) fi + + case "$host_os" in + linux*) + if test "$frr_ac_lcaps" != "yes"; then + AC_MSG_ERROR([libcap and/or its headers were not found. Running FRR without libcap support built in causes a huge performance penalty.]) + fi + ;; + esac +else + case "$host_os" in + linux*) + AC_MSG_WARN([Running FRR without libcap support built in causes a huge performance penalty.]) + ;; + esac fi AC_SUBST([LIBCAP]) -- cgit v1.2.3 From 8b9cf71ce3555f822a8bcf1b77e680f239fd16a9 Mon Sep 17 00:00:00 2001 From: David Lamparter Date: Mon, 2 Sep 2019 20:56:57 +0200 Subject: zebra/fpm: deprecation warning for protobuf We agreed on this several weeks ago on the weekly call, I just forgot to actually put it in a PR... A call for any Protobuf FPM users to raise their hand came up empty on both the mailing list as well as Slack. Let's see if this gets any response. If not, it'll be time to remove Protobuf FPM. Signed-off-by: David Lamparter --- zebra/zebra_fpm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/zebra/zebra_fpm.c b/zebra/zebra_fpm.c index eaf43095b..4144c0afe 100644 --- a/zebra/zebra_fpm.c +++ b/zebra/zebra_fpm.c @@ -1927,6 +1927,9 @@ static inline void zfpm_init_message_format(const char *format) "FPM protobuf message format is not available"); return; } + flog_warn(EC_ZEBRA_PROTOBUF_NOT_AVAILABLE, + "FPM protobuf message format is deprecated and scheduled to be removed. " + "Please convert to using netlink format or contact dev@lists.frrouting.org with your use case."); zfpm_g->message_format = ZFPM_MSG_FORMAT_PROTOBUF; return; } -- cgit v1.2.3