Commit Graph

29 Commits

Author SHA1 Message Date
Ubuntu
273846a412 FRR 7.5
Build libyang1 which is required for frr 7.5
2020-12-29 03:44:49 -08:00
Ying Xie
7f21c0be1a
[FRR] remove the whole block of outchannel properly (#6045)
- Why I did it
Fix issue #6043

- How I did it
We are disabling in container frr log. The log entries are sent to base image and are logged in /var/log/quagga/bgpd.log.

However, we need to remove the whole outchannel config block to avoid an error message raised by rsyslogd.

- How to verify it
Without the change, test_autorestart bgp container will fail on loganalyer errors. With the change, restarting bgp container is no longer generating error message and the test will pass.

The log generated by frr continued appearing in /var/log/quagga/bgpd.log
2020-11-26 16:50:32 -08:00
Ying Xie
d3c1a5bf39
[frr] remove frr rsyslog file outchannel (#5962)
- Why I did it
frr is creating /var/log/frr/frr.log inside the frr docker and letting it grow. It will eventually exhaust hard drive space.

To fixe issue #5965

- How I did it
Remove rsyslog file outchannel so that frr won't generate /var/log/frr/frr.log inside the docker.

- How to verify it
Manually removed the outchannel and restart BGP docker, making sure that /var/log/frr/frr.log is no longer created inside the docker.

While restarting bgp docker, observed that base image /var/log/quagga/bgpd.log continued to grow and captured all FRR logs.
2020-11-20 19:36:04 -08:00
pavel-shirshov
8585005a36
[FRR]: Update frr to latest 7.2.1-s3 (#4294)
- Updated to latest frr 7.2.1 from the master.
- Updated patches accordingly
2020-04-01 12:57:19 -07:00
Danny Allen
6005f4c976
Revert "Update frr to latest 7.2.1 (#4145)" (#4170)
This reverts commit 4b42a48f45.
2020-02-20 13:47:21 -08:00
pavel-shirshov
4b42a48f45
Update frr to latest 7.2.1 (#4145) 2020-02-13 18:45:37 -08:00
pavel-shirshov
c63b5fc719
[frr]: Use tag for building frr (#4082)
Changed logic for building frr. Previously we used latest commit in the FRR_BRANCH. Now the buildsystem will use a tag to identify a commit for building. New approach will let us to update sonic-frr without corrupting building sonic-buildimage.
2020-02-07 07:51:01 -08:00
pavel-shirshov
61858807ce [frr]: Update FRR to 7.2.1 (#4066)
Update rules for frr package.
Update frr submodule
2020-01-25 19:43:22 -08:00
wangshengjun
70e8c5e29e [FRR]there is no need to checkout master branch after compiling frr. (#3941)
Signed-off-by: wangshengjun <wangshengjun@asterfusion.com>
2020-01-23 14:41:02 -08:00
pavel-shirshov
794d459483
Update frr with latest changes from frr master (#3806) 2019-11-25 13:12:57 -08:00
Tyler Li
7c65f8c58a Fix vrf test failed after frr update to 7.2 (#3763) 2019-11-19 08:15:33 -08:00
pavel-shirshov
aa1a13677d
[frr]: Move to version 7.2 (#3704)
* Use 7.2 tree to generate frr packages

* Adapt patches for frr/7.2

* Use vrf_id
2019-11-06 11:57:23 -08:00
pavel-shirshov
d85777bb11 [frr]: Fix the issue 'branch already exist' in frr package rebuilds (#3692)
Fixed Makefile of FRR. Before we had issues after #3589:

- When you want to rebuild frr with new changes you get error "branch frr/7.1 is already exist".
- When your patch list is empty stg undo gives an error
2019-11-04 09:36:15 -08:00
Praveen Chaudhary
423d481284 [FRR]: Patch for kernel level graceful restart. (#3621)
* [FRR]: Patch for kernel level graceful restart.

Original Patch in FRR master:
https://github.com/FRRouting/frr/pull/4301

* Rename 0007-zebra-kernel-level-graceful-restart.patch to 0008-zebra-kernel-level-graceful-restart.patch
2019-10-17 07:08:13 -07:00
sudhanshukumar22
5d9bd9c1ad Port a fix from FRR community (#3614)
Author: sudhanshukumar22 <sudhanshu.kumar@broadcom.com>
Date:   Tue Oct 16 12:33:20 2019 -0700
     39c93f379a
     If we have a case where have created a fd for i/o and we have removed the
     handling thread but still have the fd in the poll data structure, there
     existed a case where we would get the handle this fd return from poll but we
     would immediately do nothing with it because we didn't have a thread to hand
     the event to.

     This leads to an infinite loop.  Prevent the infinite loop
    from happening and log the problem.
Signed-off-by: Preetham Singh (preetham.singh@broadcom.com)
2019-10-17 00:20:36 -07:00
sudhanshukumar22
48e4cf6971 commit 4ea6cafbcad4c72186587b45fa5e2f6c6dbec893 (HEAD -> bgp-snmp-socket-issue, origin/bgp-snmp-socket-issue) (#3604)
Author: sudhanshukumar22 <sudhanshu.kumar@broadcom.com>
Date:   Tue Oct 15 02:31:20 2019 -0700

    lib: changes for making snmp socket non-blocking

    Description: The changes have been done to make the snmp socket
    non-blocking before calling snmp_read()
    FRR Pull request: https://github.com/FRRouting/frr/pull/5134

    Problem Description/Summary :
    vtysh hangs on first try to enter after a reboot with BGP dynamic peers

    Expected Behavior :
    VTYSH should not hang.
    When we debug more into bgpd docker by doing gdb on its threads, we find the below thread of bgpd, which is causing the issue.
    Thread 1 (Thread 0x7f1e1ec46d40 (LWP 47)):

    0x00007f1e1d762593 in recvfrom () from /lib/x86_64-linux-gnu/libpthread.so.0
    0x00007f1e1aadd09b in netsnmp_tcpbase_recv () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
    0x00007f1e1aad9617 in netsnmp_transport_recv () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
    0x00007f1e1aab2c07 in _sess_read () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
    0x00007f1e1aab3a29 in snmp_sess_read2 () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
    0x00007f1e1aab3a7b in snmp_read2 () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
    0x00007f1e1aab3acf in snmp_read () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
    0x00007f1e1b44d7ec in agentx_read (t=0x7fffa75f0080) at lib/agentx.c:63
    0x00007f1e1e7d6451 in thread_call (thread=0x7fffa75f0080) at lib/thread.c:1620
    0x00007f1e1e770699 in frr_run (master=0x559396ea60f0) at lib/libfrr.c:1011
    0x0000559395b4d953 in main (argc=5, argv=0x7fffa75f02b8) at bgpd/bgp_main.c:492

    (gdb) bt

    0x00007f830c89d210 in __read_nocancel () from /lib/x86_64-linux-gnu/libpthread.so.0
    0x000056450e1e8238 in vtysh_client_run (vclient=0x56450e4a8b40 <vtysh_client+24768>, line=0x56450e21add0 enable, callback=0x0, cbarg=0x0) at vtysh/vtysh.c:216
    0x000056450e1e8c6b in vtysh_client_run_all (head_client=0x56450e4a8b40 <vtysh_client+24768>, line=0x56450e21add0 enable, continue_on_err=0, callback=0x0, cbarg=0x0) at vtysh/vtysh.c:356
    0x000056450e1e8ddb in vtysh_client_execute (head_client=0x56450e4a8b40 <vtysh_client+24768>, line=0x56450e21add0 enable) at vtysh/vtysh.c:393
    0x000056450e1e9c82 in vtysh_execute_func (line=0x56450e21add0 enable, pager=0) at vtysh/vtysh.c:598
    0x000056450e1e9dee in vtysh_execute_no_pager (line=0x56450e21add0 enable) at vtysh/vtysh.c:619
    0x000056450e1f7d48 in vtysh_read_file (confp=0x56451000a9d0, top_cfg=1) at vtysh/vtysh_config.c:494
    0x000056450e1f7ef2 in vtysh_read_config (config_default_dir=0x56450e4edc20 <frr_config> /etc/frr/frr.conf, top_cfg=1) at vtysh/vtysh_config.c:522
    0x000056450e1e5de4 in vtysh_apply_top_level_config () at vtysh/vtysh_main.c:301
    0x000056450e1e7842 in main (argc=2, argv=0x7ffc81e6f598, env=0x7ffc81e6f5b0) at vtysh/vtysh_main.c:692

    The fix has been taken from the following link.
    https://sourceforge.net/p/net-snmp/patches/1348/
2019-10-16 13:02:20 -07:00
wangshengjun
34d8842fbd [FRR]: Use stg in a proper way. (#3589)
* [FRR]: Use stg in a proper way.

Signed-off-by: wangshengjun <wangshengjun@asterfusion.com>

* [FRR]restore the detach status for frr submodule after finish patching

Signed-off-by: wangshengjun <wangshengjun@asterfusion.com>

* [FRR]use the 'FRR_VERSION' exported from 'rule/frr.mk'.

Signed-off-by: wangshengjun <wangshengjun@asterfusion.com>
2019-10-15 11:13:48 -07:00
pavel-shirshov
ce2ecf2680
[frr]: Update frr version to 7.1 (#3575)
* Build 7.1 without patches

* Port patches
2019-10-08 07:30:27 -07:00
pavel-shirshov
fb666d23f1
[FRR]: Use stg instead of patch (#3480)
* Use stg instead of patch
2019-09-29 10:57:08 -07:00
tylerlinp
e547b0d960 [zebra_fpm] VRF ifindex cannot be larger than 255 (#3280) 2019-08-06 15:49:18 -07:00
pavel-shirshov
dd0f005b8a
[FRR]: Port some patches from sonic-quagga repo (#3017)
* Update sonic-quagga submodule

* Port some patches from sonic-quagga

* Fix Makefile

* Another patch

* Uncomment bgp test

* Downport Nikos's patch

* Add a patch to alleviate the vendor issue

* use patch instead of stg
2019-06-23 15:26:02 -07:00
Michel Moriniaux
18544530d3 [FRR] Enable SNMP support (#2981)
This is a follow-up of sonic-snmpagent PR 92
Now that licensing issues have been solved FRR is distributed with SNMP
support compiled-in. This PR adds the last bits of configuration to get
the frr-snmp debian packages added to the docker container and the
config bits to enable the snmp module in FRR

This PR brings the functionality of being able to poll bgpd for routes
and peer status.

Signed-off-by: Michel Moriniaux <m.moriniaux@criteo.com>
2019-06-19 01:24:42 -07:00
pavel-shirshov
1e3b62fe8f
[FRR]: Update frr to frr-7.0.1 (#2899)
* Update frr to frr-7.0.1

* Fix a typo

* Set right permissions on /etc/frr

* Convert external file links from debian to Azure

* Revert python3 fix

* Build frr using more than 1 job

* Add SWIG as dependency for libswss-common
2019-05-16 10:59:12 -07:00
Nikos
6bf97d8a23 [docker-frr]: Move docker to stretch and add pythontools (#2819) 2019-04-25 13:21:20 -07:00
Nikos
4ed5cb4ef1 [docker-frr]: Move FRR from 4.0 to 6.0.2 and make the new frr version and debian package compile (#2454)
Signed-off-by: nikos <ntriantafillis@gmail.com>
2019-01-16 18:34:41 -08:00
Nikos
d9d341bc73 [sonic-frr]: Fix sonic build with frr (#2114)
Signed-off-by: nikos <ntriantafillis@gmail.com>
2018-10-03 23:51:13 -07:00
zhenggen-xu
673bb6580e [sonic-frr]: FRR 4.0 integration with SONiC (#2099)
* FRR 4.0 integration with SONiC

-- Uses SONiC FRR repo frr/4.0 (which has SONiC support) to build image
-- Makefile changes to make frr4.0 builtable.
-- Updated/Added FRR configuration files
-- bgpd jinja template fixes

To build SONiC images with FRR4.0, simply edit rules/config file and change
routing stack to following:

SONIC_ROUTING_STACK = frr

and then build images as usual.

* Used integrated-vtysh-config in FRR
Changed to single template: frr.conf.j2 for configuration and added tests
2018-10-02 10:24:59 -07:00
zhenggen-xu
a49ac2d211 [FRR]: Change the FRR as a submodule (#1071)
Signed-off-by: zxu@linkedin.com
2017-10-23 21:17:58 -07:00
Rodny Molina
d30fbf1d72 [build]: Adding support for Free-Range-Routing stack. (#510)
- Extending SONiC building infrastructure to provide users
           with greater flexibility, by allowing them to elect a
           routing-stack different than the default one (quagga). The desired
           routing-stack will be defined in rules/config file.

         - As part of these changes I'm adding support for
           Free-Range-Routing (FRR) stack. Quagga will continue to be
           the default routing-stack.

Signed-off-by: Rodny Molina <rodny@linkedin.com>
2017-04-20 09:12:27 -07:00