Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

lib: prioritize VRF creation #6919

Closed
wants to merge 1 commit into from

Conversation

qlyoung
Copy link
Member

@qlyoung qlyoung commented Aug 14, 2020

Bump the priority of VRF creation; this way VRF related config is
applied before other things, specifically interfaces, which need VRFs to
exist.

Signed-off-by: Quentin Young qlyoung@nvidia.com

@LabN-CI
Copy link
Collaborator

LabN-CI commented Aug 14, 2020

Outdated results 💚

Basic BGPD CI results: SUCCESS, 0 tests failed

_ _
Result SUCCESS git merge/6919 72c6601
Date 08/14/2020
Start 15:26:31
Finish 15:52:39
Run-Time 26:08
Total 1815
Pass 1815
Fail 0
Valgrind-Errors 0
Valgrind-Loss 0
Details vncregress-2020-08-14-15:26:31.txt
Log autoscript-2020-08-14-15:27:30.log.bz2
Memory 493 501 425

For details, please contact louberger

@NetDEF-CI
Copy link
Collaborator

NetDEF-CI commented Aug 14, 2020

Continuous Integration Result: SUCCESSFUL

Continuous Integration Result: SUCCESSFUL

Congratulations, this patch passed basic tests

Tested-by: NetDEF / OpenSourceRouting.org CI System

CI System Testrun URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-13626/

This is a comment from an automated CI system.
For questions and feedback in regards to this CI system, please feel free to email
Martin Winter - mwinter (at) opensourcerouting.org.

Warnings Generated during build:

Checkout code: Successful with additional warnings
Report for if.c | 5 issues
===============================================
< WARNING: strncat() is error-prone; please use strlcat() if possible#975: FILE: /tmp/f1-9303/if.c:975:
---
> WARNING: strncat() is error-prone; please use strlcat() if possible#975: FILE: /tmp/f2-9303/if.c:975:
98c98
< #1067: FILE: /tmp/f1-9303/if.c:1067:

Warnings Generated during build:

Debian 10 amd64 build: Successful with additional warnings

Debian Package lintian failed for Debian 10 amd64 build:
(see full package build log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-13626/artifact/DEB10BUILD/ErrorLog/log_lintian.txt)

W: frr source: pkg-js-tools-test-is-missing
W: frr source: newer-standards-version 4.4.1 (current is 4.3.0)
W: frr source: pkg-js-tools-test-is-missing
W: frr source: newer-standards-version 4.4.1 (current is 4.3.0)
W: frr-doc: changelog-file-missing-explicit-entry 6.0-2 -> 7.5-dev-20200814-00-g72c660188-0 (missing) -> 7.5-dev-20200814-00-g72c660188-0~deb10u1
W: frr-pythontools: changelog-file-missing-explicit-entry 6.0-2 -> 7.5-dev-20200814-00-g72c660188-0 (missing) -> 7.5-dev-20200814-00-g72c660188-0~deb10u1
W: frr-rpki-rtrlib: changelog-file-missing-explicit-entry 6.0-2 -> 7.5-dev-20200814-00-g72c660188-0 (missing) -> 7.5-dev-20200814-00-g72c660188-0~deb10u1
W: frr-snmp: changelog-file-missing-explicit-entry 6.0-2 -> 7.5-dev-20200814-00-g72c660188-0 (missing) -> 7.5-dev-20200814-00-g72c660188-0~deb10u1
W: frr: changelog-file-missing-explicit-entry 6.0-2 -> 7.5-dev-20200814-00-g72c660188-0 (missing) -> 7.5-dev-20200814-00-g72c660188-0~deb10u1

@donaldsharp donaldsharp requested a review from rwestphal August 18, 2020 15:30
Copy link
Member

@rwestphal rwestphal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, except for one issue.

The other case to handle is when a VRF and all its associated interfaces are deleted in the same transaction. In that case, if we process the VRF deletion first (due to its better priority), we'll have a problem in the interface destroy() callback since nb_running_get_entry() will return a dangling pointer. To address that issue you might need to change that callback to check if the interface VRF still exists in the configuration. If not, then bail out earlier (assuming the interface was already deleted), otherwise proceed with the interface deletion. Long term we might need some enhancements in the NB layer to better deal with this kind of transaction ordering issues.

@qlyoung qlyoung force-pushed the nb-prioritize-vrf branch from 72c6601 to 0f62605 Compare April 7, 2021 18:01
@qlyoung
Copy link
Member Author

qlyoung commented Apr 7, 2021

@rwestphal can you double check me? Pretty sure I handled the case you mentioned now in lib_interface_destroy.

@NetDEF-CI
Copy link
Collaborator

NetDEF-CI commented Apr 7, 2021

Continuous Integration Result: FAILED

Continuous Integration Result: FAILED

See below for issues.
CI System Testrun URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/

This is a comment from an automated CI system.
For questions and feedback in regards to this CI system, please feel free to email
Martin Winter - mwinter (at) opensourcerouting.org.

Get source / Pull Request: Successful

Building Stage: Failed

Debian 8 amd64 build: Failed (click for details) Debian 8 amd64 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI008BLD/config.log/config.log.gz

Make failed for Debian 8 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI008BLD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9126: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5377: recipe for target 'all' failed
make[1]: Target 'all-am' not remade because of errors.

Debian 8 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI008BLD/config.status/config.status

FreeBSD 11 amd64 build: Failed (click for details)

Make failed for FreeBSD 11 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI009BUILD/ErrorLog/log_make.txt)

/usr/home/ci/cibuild.18237/frr-source/doc/user/zebra.rst:1072: WARNING: duplicate clicmd description of debug zebra pbr, other instance in pbr
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
 1444 |   if (!ifp)
cc1: all warnings being treated as errors
gmake[1]: *** [Makefile:9758: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/usr/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6003: all] Error 2

FreeBSD 11 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI009BUILD/config.status/config.status
FreeBSD 11 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI009BUILD/config.log/config.log.gz

Debian 10 amd64 build: Failed (click for details) Debian 10 amd64 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB10BUILD/config.log/config.log.gz

Make failed for Debian 10 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB10BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9759: lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
make: *** [Makefile:6004: all] Error 2

Debian 10 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB10BUILD/config.status/config.status

Ubuntu 18.04 arm8 build: Failed (click for details) Ubuntu 18.04 arm8 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM8BUILD/config.status/config.status Ubuntu 18.04 arm8 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM8BUILD/config.log/config.log.gz

Make failed for Ubuntu 18.04 arm8 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM8BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5389: recipe for target 'all' failed
OpenBSD 6 amd64 build: Failed (click for details)

Make failed for OpenBSD 6 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI011BUILD/ErrorLog/log_make.txt)

static void elffile_add_dynreloc(struct elffile *w, Elf_Data *reldata,
2 warnings generated.
lib/if.c:1444:8: error: variable 'ifp' is uninitialized when used here [-Werror,-Wuninitialized]
lib/if.c:1423:23: note: initialize the variable 'ifp' to silence this warning
1 error generated.
gmake[1]: *** [Makefile:9757: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6002: all] Error 2

OpenBSD 6 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI011BUILD/config.status/config.status
OpenBSD 6 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI011BUILD/config.log/config.log.gz

Ubuntu 16.04 amd64 build: Failed (click for details)

Make failed for Ubuntu 16.04 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI014BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
Makefile:5389: recipe for target 'all' failed

Ubuntu 16.04 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI014BUILD/config.status/config.status
Ubuntu 16.04 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI014BUILD/config.log/config.log.gz

FreeBSD 12 amd64 build: Failed (click for details)

Make failed for FreeBSD 12 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/FBSD12AMD64/ErrorLog/log_make.txt)

 static bool elffile_virt2file(struct elffile *w, GElf_Addr virt,
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
gmake[1]: *** [Makefile:9758: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/usr/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6003: all] Error 2

FreeBSD 12 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/FBSD12AMD64/config.status/config.status
FreeBSD 12 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/FBSD12AMD64/config.log/config.log.gz

Ubuntu 18.04 amd64 build: Failed (click for details)

Make failed for Ubuntu 18.04 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804AMD64/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
Makefile:5389: recipe for target 'all' failed

Ubuntu 18.04 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804AMD64/config.status/config.status
Ubuntu 18.04 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804AMD64/config.log/config.log.gz

CentOS 8 amd64 build: Failed (click for details) CentOS 8 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CENTOS8BUILD/config.status/config.status

Make failed for CentOS 8 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CENTOS8BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9758: lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make: *** [Makefile:6003: all] Error 2

CentOS 8 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CENTOS8BUILD/config.log/config.log.gz

Ubuntu 16.04 arm7 build: Failed (click for details) Ubuntu 16.04 arm7 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI101BUILD/config.status/config.status Ubuntu 16.04 arm7 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI101BUILD/config.log/config.log.gz

Make failed for Ubuntu 16.04 arm7 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI101BUILD/ErrorLog/log_make.txt)

WARNING: ignoring non-empty DT_REL!
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
WARNING: ignoring non-empty DT_REL!
WARNING: ignoring non-empty DT_REL!
make[1]: Target 'all-am' not remade because of errors.
Ubuntu 18.04 ppc64le build: Failed (click for details)

Make failed for Ubuntu 18.04 ppc64le build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804PPC64LEBUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
Makefile:5389: recipe for target 'all' failed

Ubuntu 18.04 ppc64le build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804PPC64LEBUILD/config.status/config.status
Ubuntu 18.04 ppc64le build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804PPC64LEBUILD/config.log/config.log.gz

Ubuntu 20.04 amd64 build: Failed (click for details) Ubuntu 20.04 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U2004AMD64BUILD/config.status/config.status

Make failed for Ubuntu 20.04 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U2004AMD64BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
 1444 |   if (!ifp)
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9759: lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make: *** [Makefile:6004: all] Error 2

Ubuntu 20.04 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U2004AMD64BUILD/config.log/config.log.gz

Ubuntu 18.04 arm7 build: Failed (click for details)

Make failed for Ubuntu 18.04 arm7 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM7BUILD/ErrorLog/log_make.txt)

WARNING: ignoring non-empty DT_REL!
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
WARNING: ignoring non-empty DT_REL!
WARNING: ignoring non-empty DT_REL!
make[1]: Target 'all-am' not remade because of errors.

Ubuntu 18.04 arm7 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM7BUILD/config.log/config.log.gz
Ubuntu 18.04 arm7 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM7BUILD/config.status/config.status

NetBSD 8 amd64 build: Failed (click for details) NetBSD 8 amd64 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI012BUILD/config.log/config.log.gz

Make failed for NetBSD 8 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI012BUILD/ErrorLog/log_make.txt)

doc/user/_build/texinfo/frr.texi:26547: warning: @image file `frr-figures/fig-vnc-redundant-route-reflectors.txt' (for text) unreadable: No such file or directory.
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
gmake[1]: *** [Makefile:9758: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6003: all] Error 2

NetBSD 8 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI012BUILD/config.status/config.status

Debian 9 amd64 build: Failed (click for details)

Make failed for Debian 9 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI021BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5389: recipe for target 'all' failed
make[1]: Target 'all-am' not remade because of errors.

Debian 9 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI021BUILD/config.status/config.status
Debian 9 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI021BUILD/config.log/config.log.gz

Ubuntu 16.04 arm8 build: Failed (click for details)

Make failed for Ubuntu 16.04 arm8 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U16ARM8BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5389: recipe for target 'all' failed

Ubuntu 16.04 arm8 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U16ARM8BUILD/config.log/config.log.gz
Ubuntu 16.04 arm8 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U16ARM8BUILD/config.status/config.status

Fedora 29 amd64 build: Failed (click for details)

Make failed for Fedora 29 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/F29BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9758: lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make: *** [Makefile:6003: all] Error 2

Fedora 29 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/F29BUILD/config.status/config.status
Fedora 29 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/F29BUILD/config.log/config.log.gz

Debian 11 amd64 build: Failed (click for details) Debian 11 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB11AMD64/config.status/config.status

Make failed for Debian 11 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB11AMD64/ErrorLog/log_make.txt)

/home/ci/cibuild.18237/frr-source/doc/user/zebra.rst:1072: WARNING: duplicate clicmd description of debug zebra pbr, other instance in pbr
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
 1444 |   if (!ifp)
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9762: lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
make: *** [Makefile:6007: all] Error 2

Debian 11 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB11AMD64/config.log/config.log.gz

Ubuntu 16.04 i386 build: Failed (click for details)

Make failed for Ubuntu 16.04 i386 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1604I386/ErrorLog/log_make.txt)

WARNING: ignoring non-empty DT_REL!
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
WARNING: ignoring non-empty DT_REL!
WARNING: ignoring non-empty DT_REL!
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'

Ubuntu 16.04 i386 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1604I386/config.status/config.status
Ubuntu 16.04 i386 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1604I386/config.log/config.log.gz

Successful on other platforms/tests
  • CentOS 7 amd64 build

Warnings Generated during build:

Checkout code: Successful with additional warnings
Debian 8 amd64 build: Failed (click for details) Debian 8 amd64 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI008BLD/config.log/config.log.gz

Make failed for Debian 8 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI008BLD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9126: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5377: recipe for target 'all' failed
make[1]: Target 'all-am' not remade because of errors.

Debian 8 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI008BLD/config.status/config.status

FreeBSD 11 amd64 build: Failed (click for details)

Make failed for FreeBSD 11 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI009BUILD/ErrorLog/log_make.txt)

/usr/home/ci/cibuild.18237/frr-source/doc/user/zebra.rst:1072: WARNING: duplicate clicmd description of debug zebra pbr, other instance in pbr
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
 1444 |   if (!ifp)
cc1: all warnings being treated as errors
gmake[1]: *** [Makefile:9758: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/usr/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6003: all] Error 2

FreeBSD 11 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI009BUILD/config.status/config.status
FreeBSD 11 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI009BUILD/config.log/config.log.gz

Debian 10 amd64 build: Failed (click for details) Debian 10 amd64 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB10BUILD/config.log/config.log.gz

Make failed for Debian 10 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB10BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9759: lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
make: *** [Makefile:6004: all] Error 2

Debian 10 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB10BUILD/config.status/config.status

Ubuntu 18.04 arm8 build: Failed (click for details) Ubuntu 18.04 arm8 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM8BUILD/config.status/config.status Ubuntu 18.04 arm8 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM8BUILD/config.log/config.log.gz

Make failed for Ubuntu 18.04 arm8 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM8BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5389: recipe for target 'all' failed
OpenBSD 6 amd64 build: Failed (click for details)

Make failed for OpenBSD 6 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI011BUILD/ErrorLog/log_make.txt)

static void elffile_add_dynreloc(struct elffile *w, Elf_Data *reldata,
2 warnings generated.
lib/if.c:1444:8: error: variable 'ifp' is uninitialized when used here [-Werror,-Wuninitialized]
lib/if.c:1423:23: note: initialize the variable 'ifp' to silence this warning
1 error generated.
gmake[1]: *** [Makefile:9757: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6002: all] Error 2

OpenBSD 6 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI011BUILD/config.status/config.status
OpenBSD 6 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI011BUILD/config.log/config.log.gz

Ubuntu 16.04 amd64 build: Failed (click for details)

Make failed for Ubuntu 16.04 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI014BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
Makefile:5389: recipe for target 'all' failed

Ubuntu 16.04 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI014BUILD/config.status/config.status
Ubuntu 16.04 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI014BUILD/config.log/config.log.gz

FreeBSD 12 amd64 build: Failed (click for details)

Make failed for FreeBSD 12 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/FBSD12AMD64/ErrorLog/log_make.txt)

 static bool elffile_virt2file(struct elffile *w, GElf_Addr virt,
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
gmake[1]: *** [Makefile:9758: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/usr/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6003: all] Error 2

FreeBSD 12 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/FBSD12AMD64/config.status/config.status
FreeBSD 12 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/FBSD12AMD64/config.log/config.log.gz

Ubuntu 18.04 amd64 build: Failed (click for details)

Make failed for Ubuntu 18.04 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804AMD64/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
Makefile:5389: recipe for target 'all' failed

Ubuntu 18.04 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804AMD64/config.status/config.status
Ubuntu 18.04 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804AMD64/config.log/config.log.gz

CentOS 8 amd64 build: Failed (click for details) CentOS 8 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CENTOS8BUILD/config.status/config.status

Make failed for CentOS 8 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CENTOS8BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9758: lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make: *** [Makefile:6003: all] Error 2

CentOS 8 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CENTOS8BUILD/config.log/config.log.gz

Ubuntu 16.04 arm7 build: Failed (click for details) Ubuntu 16.04 arm7 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI101BUILD/config.status/config.status Ubuntu 16.04 arm7 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI101BUILD/config.log/config.log.gz

Make failed for Ubuntu 16.04 arm7 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI101BUILD/ErrorLog/log_make.txt)

WARNING: ignoring non-empty DT_REL!
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
WARNING: ignoring non-empty DT_REL!
WARNING: ignoring non-empty DT_REL!
make[1]: Target 'all-am' not remade because of errors.
Ubuntu 18.04 ppc64le build: Failed (click for details)

Make failed for Ubuntu 18.04 ppc64le build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804PPC64LEBUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
Makefile:5389: recipe for target 'all' failed

Ubuntu 18.04 ppc64le build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804PPC64LEBUILD/config.status/config.status
Ubuntu 18.04 ppc64le build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1804PPC64LEBUILD/config.log/config.log.gz

Ubuntu 20.04 amd64 build: Failed (click for details) Ubuntu 20.04 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U2004AMD64BUILD/config.status/config.status

Make failed for Ubuntu 20.04 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U2004AMD64BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
 1444 |   if (!ifp)
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9759: lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make: *** [Makefile:6004: all] Error 2

Ubuntu 20.04 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U2004AMD64BUILD/config.log/config.log.gz

Ubuntu 18.04 arm7 build: Failed (click for details)

Make failed for Ubuntu 18.04 arm7 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM7BUILD/ErrorLog/log_make.txt)

WARNING: ignoring non-empty DT_REL!
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
WARNING: ignoring non-empty DT_REL!
WARNING: ignoring non-empty DT_REL!
make[1]: Target 'all-am' not remade because of errors.

Ubuntu 18.04 arm7 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM7BUILD/config.log/config.log.gz
Ubuntu 18.04 arm7 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U18ARM7BUILD/config.status/config.status

NetBSD 8 amd64 build: Failed (click for details) NetBSD 8 amd64 build: Unknown Log URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI012BUILD/config.log/config.log.gz

Make failed for NetBSD 8 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI012BUILD/ErrorLog/log_make.txt)

doc/user/_build/texinfo/frr.texi:26547: warning: @image file `frr-figures/fig-vnc-redundant-route-reflectors.txt' (for text) unreadable: No such file or directory.
lib/if.c: In function 'lib_interface_destroy':
lib/if.c:1444:7: error: 'ifp' may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
gmake[1]: *** [Makefile:9758: lib/if.lo] Error 1
gmake[1]: Target 'all-am' not remade because of errors.
gmake[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
gmake: *** [Makefile:6003: all] Error 2

NetBSD 8 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI012BUILD/config.status/config.status

Debian 9 amd64 build: Failed (click for details)

Make failed for Debian 9 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI021BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5389: recipe for target 'all' failed
make[1]: Target 'all-am' not remade because of errors.

Debian 9 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI021BUILD/config.status/config.status
Debian 9 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/CI021BUILD/config.log/config.log.gz

Ubuntu 16.04 arm8 build: Failed (click for details)

Make failed for Ubuntu 16.04 arm8 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U16ARM8BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
Makefile:5389: recipe for target 'all' failed

Ubuntu 16.04 arm8 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U16ARM8BUILD/config.log/config.log.gz
Ubuntu 16.04 arm8 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U16ARM8BUILD/config.status/config.status

Fedora 29 amd64 build: Failed (click for details)

Make failed for Fedora 29 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/F29BUILD/ErrorLog/log_make.txt)

make[1]: Entering directory '/home/ci/cibuild.18237/frr-source'
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9758: lib/if.lo] Error 1
make[1]: Target 'all-am' not remade because of errors.
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make: *** [Makefile:6003: all] Error 2

Fedora 29 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/F29BUILD/config.status/config.status
Fedora 29 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/F29BUILD/config.log/config.log.gz

Debian 11 amd64 build: Failed (click for details) Debian 11 amd64 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB11AMD64/config.status/config.status

Make failed for Debian 11 amd64 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB11AMD64/ErrorLog/log_make.txt)

/home/ci/cibuild.18237/frr-source/doc/user/zebra.rst:1072: WARNING: duplicate clicmd description of debug zebra pbr, other instance in pbr
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
 1444 |   if (!ifp)
cc1: all warnings being treated as errors
make[1]: *** [Makefile:9762: lib/if.lo] Error 1
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'
make[1]: Target 'all-am' not remade because of errors.
make: *** [Makefile:6007: all] Error 2

Debian 11 amd64 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/DEB11AMD64/config.log/config.log.gz

Ubuntu 16.04 i386 build: Failed (click for details)

Make failed for Ubuntu 16.04 i386 build:
(see full Make log at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1604I386/ErrorLog/log_make.txt)

WARNING: ignoring non-empty DT_REL!
lib/if.c: In function lib_interface_destroy:
lib/if.c:1444:7: error: ifp may be used uninitialized in this function [-Werror=maybe-uninitialized]
cc1: all warnings being treated as errors
Makefile:9138: recipe for target 'lib/if.lo' failed
make[1]: *** [lib/if.lo] Error 1
WARNING: ignoring non-empty DT_REL!
WARNING: ignoring non-empty DT_REL!
make[1]: Leaving directory '/home/ci/cibuild.18237/frr-source'

Ubuntu 16.04 i386 build: config.status output from configure script can be found at https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1604I386/config.status/config.status
Ubuntu 16.04 i386 build: Unknown Log <config.log.gz>
URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18237/artifact/U1604I386/config.log/config.log.gz

Report for if.c | 5 issues
===============================================
< WARNING: strncat() is error-prone; please use strlcat() if possible#908: FILE: /tmp/f1-5645/if.c:908:
---
> WARNING: strncat() is error-prone; please use strlcat() if possible#908: FILE: /tmp/f2-5645/if.c:908:
66c66
< #998: FILE: /tmp/f1-5645/if.c:998:

Bump the priority of VRF creation; this way VRF related config is
applied before other things, specifically interfaces, which need VRFs to
exist.

Signed-off-by: Quentin Young <qlyoung@nvidia.com>
@qlyoung qlyoung force-pushed the nb-prioritize-vrf branch from 0f62605 to 3bd3426 Compare April 7, 2021 18:26
@LabN-CI
Copy link
Collaborator

LabN-CI commented Apr 7, 2021

Outdated results 💚

Basic BGPD CI results: SUCCESS, 0 tests failed

_ _
Result SUCCESS git merge/6919 0f62605
Date 04/07/2021
Start 14:20:30
Finish 15:02:24
Run-Time 41:54
Total 1815
Pass 1815
Fail 0
Valgrind-Errors 0
Valgrind-Loss 0
Details vncregress-2021-04-07-14:20:30.txt
Log autoscript-2021-04-07-14:21:42.log.bz2
Memory 498 496 430

For details, please contact louberger

@idryzhov
Copy link
Contributor

idryzhov commented Apr 7, 2021

@rwestphal can you double check me? Pretty sure I handled the case you mentioned now in lib_interface_destroy.

You didn't handle this case. nb_running_unset_entry can never return NULL. There is an assert(entry); before the return.
The problem here is that it will return the pointer to the already deleted interface.

Please, don't merge this PR. I'll look at it more deeply later this week.

Copy link
Contributor

@idryzhov idryzhov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Commented earlier.

@qlyoung
Copy link
Member Author

qlyoung commented Apr 7, 2021

The problem here is that it will return the pointer to the already deleted interface.

Okay, so if this is true then we have a latent use after free. Right? Can you elaborate on the code path that creates that UAF?

@NetDEF-CI
Copy link
Collaborator

Continuous Integration Result: SUCCESSFUL

Congratulations, this patch passed basic tests

Tested-by: NetDEF / OpenSourceRouting.org CI System

CI System Testrun URL: https://ci1.netdef.org/browse/FRR-FRRPULLREQ-18238/

This is a comment from an automated CI system.
For questions and feedback in regards to this CI system, please feel free to email
Martin Winter - mwinter (at) opensourcerouting.org.

Warnings Generated during build:

Checkout code: Successful with additional warnings
Report for if.c | 5 issues
===============================================
< WARNING: strncat() is error-prone; please use strlcat() if possible#908: FILE: /tmp/f1-21830/if.c:908:
---
> WARNING: strncat() is error-prone; please use strlcat() if possible#908: FILE: /tmp/f2-21830/if.c:908:
66c66
< #998: FILE: /tmp/f1-21830/if.c:998:

@LabN-CI
Copy link
Collaborator

LabN-CI commented Apr 7, 2021

💚 Basic BGPD CI results: SUCCESS, 0 tests failed

Results table
_ _
Result SUCCESS git merge/6919 3bd3426
Date 04/07/2021
Start 17:52:32
Finish 18:34:21
Run-Time 41:49
Total 1815
Pass 1815
Fail 0
Valgrind-Errors 0
Valgrind-Loss 0
Details vncregress-2021-04-07-17:52:32.txt
Log autoscript-2021-04-07-17:53:40.log.bz2
Memory 486 503 423

For details, please contact louberger

@idryzhov
Copy link
Contributor

idryzhov commented Apr 7, 2021

Steps to reproduce:

ip link add red type vrf table 1 - create the vrf

vtysh -c "conf" -c "interface red" - create the interface nb node and store the pointer to the interface in it

ip link del red - delete the vrf AND the interface by calling if_terminate(vrf) from vrf_delete, but the pointer is still stored in the nb node

vtysh -c "conf" -c "no interface red vrf red" - gets the stale pointer from nb node

This is actually not related to this PR at all. I'll have a look at it tomorrow.

@idryzhov
Copy link
Contributor

idryzhov commented Apr 7, 2021

Perhaps we need to check that interface is not configured in if_terminate.

@idryzhov
Copy link
Contributor

idryzhov commented Apr 8, 2021

@qlyoung I raised a PR to fix stale pointers - #8426. Please, take a look.

Regarding this PR:

The checks you added to if.c are not needed because they will never work.
The first won't work because we can't have a VRF dnode without the VRF itself. It is created when the dnode is created.
The second won't work because nb_running_unset_entry never returns NULL.

For the priority change - could you, please, elaborate on the use-case that won't work without this change?

@qlyoung
Copy link
Member Author

qlyoung commented Apr 9, 2021

The checks you added to if.c are not needed because they will never work.
The first won't work because we can't have a VRF dnode without the VRF itself. It is created when the dnode is created.
The second won't work because nb_running_unset_entry never returns NULL.

I understood all this from your previous comment, like I said, this PR is wrong for that reason.

For the priority change - could you, please, elaborate on the use-case that won't work without this change?

When applying a candidate config that contains both interface and vrf creations, with the interfaces being members of those vrfs, if we try to create the interfaces before the VRFs then the VRF object won't exist and the apply will fail. By prioritizing the VRFs so the get created first we sidestep this problem. I was seeing it applying candidate configs over gRPC.

@qlyoung qlyoung closed this Apr 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants