This repository has been archived by the owner on Mar 1, 2023. It is now read-only.
forked from sonic-net/sonic-buildimage
-
Notifications
You must be signed in to change notification settings - Fork 1
Brcm poc changes to include sonic-mgmt-framework docker to sonic-broadcom.bin #1
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
As I commented in the other pull request, we should update the Dockerfile for sonic-slave-stretch-base to use the newer version of Go, and any additional dependencies that can be prefetched. |
seiferteric
pushed a commit
that referenced
this pull request
Oct 14, 2019
* Update src/sonic-swss from branch 'broadcom_sonic' to 09d35c997a8013f9c328d45048273cdd282eb981 - [JIRA SONIC-6788] Sonic - SONIC_2.0 - ST:After unconfigure L3 config with VRf, "unregister_netdevice: waiting for Vrf1 to become free. Usage count = 6" scrolls on console Whenever IP packet arrives in IP Stack, fib lookup is performed on table based on Route policy configured and based on fib lookup result, dst will be allocated for this packet. When IP packet is received, prior to dst allocation, lookup is happening in local route table later in l3mdev-table. This is evident from BT below and traces added in dev_hold. This holds refcount of l3mdev netdev. [ 109.400301] hold dev: Vrf1 ref: 117 [ 109.400308] CPU: 2 PID: 13410 Comm: python3.6 Tainted: G O 4.9.0-9-2-amd64 #1 Debian 4.9. 168-1+deb9u3 [ 109.400312] Hardware name: Accton AS7326/Default string, BIOS AS7326 V36 20181228 12/28/2018 [ 109.400314] 0000000000000000 ffffffffa37349f4 ffff8b04b93aa800 ffff8b052ba9d000 [ 109.400321] ffffffffa391c87e 00000000ffffffff ffffffffa40e2240 ffff8b04b93aa800 [ 109.400325] ffff8b052ba9d000 0000000000000001 ffffffffa391c8f4 0000000000000002 [ 109.400330] Call Trace: [ 109.400333] <IRQ> [ 109.400342] [<ffffffffa37349f4>] ? dump_stack+0x5c/0x78 [ 109.400347] [<ffffffffa391c87e>] ? dst_init+0x17e/0x190 [ 109.400351] [<ffffffffa391c8f4>] ? dst_alloc+0x64/0x90 [ 109.400354] [<ffffffffa394e6d4>] ? rt_dst_alloc+0x54/0xf0 [ 109.400359] [<ffffffffa3951b51>] ? ip_route_input_noref+0x1f1/0xe00 [ 109.400366] [<ffffffffc0450788>] ? nf_nat_ipv4_in+0x28/0x80 [nf_nat_ipv4] [ 109.400370] [<ffffffffa3953d7b>] ? ip_rcv_finish+0xab/0x400 [ 109.400375] [<ffffffffa3954744>] ? ip_rcv+0x294/0x370 [ 109.400379] [<ffffffffa3953cd0>] ? inet_del_offload+0x40/0x40 [ 109.400387] [<ffffffffa391164d>] ? __netif_receive_skb_core+0x51d/0xa40 [ 109.400393] [<ffffffffa3911bef>] ? netif_receive_skb_internal+0x2f/0xa0 [ 109.400407] [<ffffffffc059b812>] ? br_pass_frame_up+0xc2/0x160 [bridge] [ 109.400419] [<ffffffffc059b660>] ? br_port_flags_change+0x20/0x20 [bridge] [ 109.400430] [<ffffffffc059bad0>] ? br_handle_frame_finish+0x220/0x510 [bridge] [ 109.400441] [<ffffffffc059be00>] ? br_handle_local_finish+0x40/0x40 [bridge] [ 109.400449] [<ffffffffa394ca74>] ? nf_iterate+0x54/0x60 [ 109.400460] [<ffffffffc059be00>] ? br_handle_local_finish+0x40/0x40 [bridge] [ 109.400471] [<ffffffffc059bf6b>] ? br_handle_frame+0x16b/0x2f0 [bridge] [ 109.400481] [<ffffffffc059b8b0>] ? br_pass_frame_up+0x160/0x160 [bridge] [ 109.400489] [<ffffffffa3911438>] ? __netif_receive_skb_core+0x308/0xa40 [ 109.400499] [<ffffffffc066e006>] ? _iproc_write+0x88/0x90 [linux_kernel_bde] [ 109.400507] [<ffffffffc066e0d8>] ? lkbde_irq_mask_set+0xca/0xdb [linux_kernel_bde] [ 109.400514] [<ffffffffa3912ca8>] ? process_backlog+0x88/0x130 [ 109.400519] [<ffffffffa3912436>] ? net_rx_action+0x246/0x380 [ 109.400525] [<ffffffffa3a20f1d>] ? __do_softirq+0x10d/0x2b0 [ 109.400531] [<ffffffffa34800b2>] ? irq_exit+0xc2/0xd0 [ 109.400536] [<ffffffffa3a1ffa7>] ? do_IRQ+0x57/0xe0 [ 109.400541] [<ffffffffa3a1dd16>] ? common_interrupt+0x96/0x96 This takes reference of VRF l3mdev netdev during fib lookup which is wrong. Currently, in sonic, fib rule lookup follows below policy: first local table is looked up, then l3mdev-table(VRF table) later main table. root@leaf4:~# ip rule ls 0: from all lookup local 1000: from all lookup [l3mdev-table] 32765: from 10.59.136.34 lookup default 32766: from all lookup main 32767: from all lookup default root@leaf4:~# This means local table lookup is done first followed by VRF table, this can cause issue esp in case of duplicate IP in VRF and default vrf causing false hits. Above policy should be changed to first do l3mdev-table lookup(VRF table) followed by local table. Adding code in vrfmgrd to ensure local table priority is reduced by increasing preference to 32765 when first vrf is configured in system. Change-Id: Ic24b498244434c5452dc0721f99c72332ece0b27
seiferteric
pushed a commit
that referenced
this pull request
Oct 14, 2019
* Update src/sonic-swss from branch 'broadcom_sonic' to 8625d8d448c935764ef16a97e457b70e3e98de16 - Merge "[JIRA SONIC-6788] ST:After unconfigure L3 config with VRf, "unregister_netdevice: waiting for Vrf1 to become free. Usage count = 6" scrolls on console" into broadcom_sonic - [JIRA SONIC-6788] ST:After unconfigure L3 config with VRf, "unregister_netdevice: waiting for Vrf1 to become free. Usage count = 6" scrolls on console Whenever IP packet arrives in IP Stack, fib lookup is performed on table based on Route policy configured and based on fib lookup result, dst will be allocated for this packet. When IP packet is received, prior to dst allocation, lookup is happening in local route table later in l3mdev-table. This is evident from BT below and traces added in dev_hold. This holds refcount of l3mdev netdev. [ 109.400301] hold dev: Vrf1 ref: 117 [ 109.400308] CPU: 2 PID: 13410 Comm: python3.6 Tainted: G O 4.9.0-9-2-amd64 #1 Debian 4.9. 168-1+deb9u3 [ 109.400312] Hardware name: Accton AS7326/Default string, BIOS AS7326 V36 20181228 12/28/2018 [ 109.400314] 0000000000000000 ffffffffa37349f4 ffff8b04b93aa800 ffff8b052ba9d000 [ 109.400321] ffffffffa391c87e 00000000ffffffff ffffffffa40e2240 ffff8b04b93aa800 [ 109.400325] ffff8b052ba9d000 0000000000000001 ffffffffa391c8f4 0000000000000002 [ 109.400330] Call Trace: [ 109.400333] <IRQ> [ 109.400342] [<ffffffffa37349f4>] ? dump_stack+0x5c/0x78 [ 109.400347] [<ffffffffa391c87e>] ? dst_init+0x17e/0x190 [ 109.400351] [<ffffffffa391c8f4>] ? dst_alloc+0x64/0x90 [ 109.400354] [<ffffffffa394e6d4>] ? rt_dst_alloc+0x54/0xf0 [ 109.400359] [<ffffffffa3951b51>] ? ip_route_input_noref+0x1f1/0xe00 [ 109.400366] [<ffffffffc0450788>] ? nf_nat_ipv4_in+0x28/0x80 [nf_nat_ipv4] [ 109.400370] [<ffffffffa3953d7b>] ? ip_rcv_finish+0xab/0x400 [ 109.400375] [<ffffffffa3954744>] ? ip_rcv+0x294/0x370 [ 109.400379] [<ffffffffa3953cd0>] ? inet_del_offload+0x40/0x40 [ 109.400387] [<ffffffffa391164d>] ? __netif_receive_skb_core+0x51d/0xa40 [ 109.400393] [<ffffffffa3911bef>] ? netif_receive_skb_internal+0x2f/0xa0 [ 109.400407] [<ffffffffc059b812>] ? br_pass_frame_up+0xc2/0x160 [bridge] [ 109.400419] [<ffffffffc059b660>] ? br_port_flags_change+0x20/0x20 [bridge] [ 109.400430] [<ffffffffc059bad0>] ? br_handle_frame_finish+0x220/0x510 [bridge] [ 109.400441] [<ffffffffc059be00>] ? br_handle_local_finish+0x40/0x40 [bridge] [ 109.400449] [<ffffffffa394ca74>] ? nf_iterate+0x54/0x60 [ 109.400460] [<ffffffffc059be00>] ? br_handle_local_finish+0x40/0x40 [bridge] [ 109.400471] [<ffffffffc059bf6b>] ? br_handle_frame+0x16b/0x2f0 [bridge] [ 109.400481] [<ffffffffc059b8b0>] ? br_pass_frame_up+0x160/0x160 [bridge] [ 109.400489] [<ffffffffa3911438>] ? __netif_receive_skb_core+0x308/0xa40 [ 109.400499] [<ffffffffc066e006>] ? _iproc_write+0x88/0x90 [linux_kernel_bde] [ 109.400507] [<ffffffffc066e0d8>] ? lkbde_irq_mask_set+0xca/0xdb [linux_kernel_bde] [ 109.400514] [<ffffffffa3912ca8>] ? process_backlog+0x88/0x130 [ 109.400519] [<ffffffffa3912436>] ? net_rx_action+0x246/0x380 [ 109.400525] [<ffffffffa3a20f1d>] ? __do_softirq+0x10d/0x2b0 [ 109.400531] [<ffffffffa34800b2>] ? irq_exit+0xc2/0xd0 [ 109.400536] [<ffffffffa3a1ffa7>] ? do_IRQ+0x57/0xe0 [ 109.400541] [<ffffffffa3a1dd16>] ? common_interrupt+0x96/0x96 This takes reference of VRF l3mdev netdev during fib lookup which is wrong. Currently, in sonic, fib rule lookup follows below policy: first local table is looked up, then l3mdev-table(VRF table) later main table. root@leaf4:~# ip rule ls 0: from all lookup local 1000: from all lookup [l3mdev-table] 32765: from 10.59.136.34 lookup default 32766: from all lookup main 32767: from all lookup default root@leaf4:~# This means local table lookup is done first followed by VRF table, this can cause issue esp in case of duplicate IP in VRF and default vrf causing false hits. Above policy should be changed to first do l3mdev-table lookup(VRF table) followed by local table. Adding code in vrfmgrd to ensure local table priority is reduced by increasing preference to 1001 just below l3mdev-table which has pref 1000 when first vrf is configured in system. Restore original default when last vrf is deleted Dev sanity: http://10.59.132.240:9009/projects/csg_sonic/sanity/logs/dev-sanity-th2-td3-03/sonic_dev_sanity_190809_0336_1548/end_mail Change-Id: Ib8f05a372e536519a1b7971a8dd0fc413fe545fc
seiferteric
pushed a commit
that referenced
this pull request
Nov 18, 2019
* Update src/sonic-frr/frr from branch 'broadcom_sonic' to 0fb4e167fc692e1cb389abe153df2cd2b7f40c6b - [JIRA SONIC-10754] Merge branch broadcom_sonic_frr_7.1 to 'broadcom_sonic'. Change-Id: Icfd8ffd17e15f483566697e09ed2b12d71053bd7 - [JIRA SONIC-10754] merge latest pimd changes into temp frr7.1 upgrade branch. Change-Id: I483487e1b1c90c7ecfc81b06d4f3927bba753a7f - [JIRA SONIC-10033] Merge of FRR changes from broadcom_sonic into frr7.1 upgrade temporary branch. Daily sanity verified. Change-Id: I63565e7b4ed8a3708329ee5d0d2f742f592d626e - Merge pull request #5092 from sworleys/Fix-Vrf_ID-Decode_7.1 [7.1] lib: Decode vrf_id update appropriately from zapi - lib: Decode vrf_id update appropriately from zapi The vrf_id in `zsend_interface_vrf_update()` is encoded as a long via `stream_putl()`, we should decode it as such as well. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com> - Merge pull request #5030 from donaldsharp/7.1_send_that_error_bgp 7.1 send that error bgp - bgpd: Invalid NH's should send an apropriate reason code RFC 4271 sec 6.3 p33, In the case of a BGP_NEXTHOP attribute with an incorrect value, FRR is supposed to send a notification and include 'Corresponding type, length and value of the NEXT_HOP attribute in the notification data. Fixes: #4997 Signed-off-by: Nikos <ntriantafillis@gmail.com> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - bgpd: IPv6 session flapping with MP_REACH_NLRI and 0.0.0.0 in NEXT_HOP attribute This is causing interop issues with vendors. According to the RFC, receiver should ignore the NEXT_HOP attribute with MP_REACH_NLRI present. Signed-off-by: nikos <ntriantafillis@gmail.com> - bgpd: IPv6 session flapping with MP_REACH_NLRI and 0.0.0.0 in NEXT_HOP attribute This is causing interop issues with vendors. According to the RFC, receiver should ignore the NEXT_HOP attribute with MP_REACH_NLRI present. Signed-off-by: nikos ntriantafillis@gmail.com - Merge pull request #4960 from ton31337/fix/check_if_rmap_exists_before_warning bgpd: [7.1] `neighbor X:X::X default-originate` complains about (null) - bgpd: `neighbor X:X::X default-originate` complains about (null) The `neighbor X:X::X default-originate command is complaining that: The route-map '(null)' does not exist. Upon inspection of the code we were passing a NULL string to the lookup. Testing for null gets us this: donna.cumulusnetworks.com# conf t donna.cumulusnetworks.com(config)# router bgp 99 donna.cumulusnetworks.com(config-router)# neighbor 2001:1::1:2 remote-as 99 donna.cumulusnetworks.com(config-router)# neighbor 2001:1::1:2 default-originate donna.cumulusnetworks.com(config-router)# end donna.cumulusnetworks.com# show run Building configuration... Current configuration: ! frr version 7.2-dev frr defaults datacenter hostname donna.cumulusnetworks.com log stdout no ipv6 forwarding ! ip route 4.5.6.7/32 10.50.11.4 ! router bgp 99 neighbor 2001:1::1:2 remote-as 99 ! address-family ipv4 unicast neighbor 2001:1::1:2 default-originate Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4938 from ton31337/feature/documentation_for_rfc8212_7.1 doc: [7.1] Add documentation for `bgp ebgp-requires-policy` command - doc: Add documentation for `bgp ebgp-requires-policy` command Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4899 from ton31337/fix/no_aspath_prepend_last_7.1 bgpd: [7.1] Add 'no set as-path prepend last-as X' command - bgpd: Update doc for some as-path route-map commands Update the documentation for some as-path route-map commands. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - bgpd: Add 'no set as-path prepend last-as X' command The `set as-path prepend last-as X` command had no, 'no' form of the command. Add this into the cli. Testing: ! route-map BLARBLE permit 10 set as-path prepend last-as 3 ! ! router bgp 9999 neighbor 10.50.12.118 remote-as external neighbor 10.50.12.118 ebgp-multihop 30 ! address-family ipv4 unicast neighbor 10.50.12.118 route-map BLARBLE in ! ! eva# show bgp ipv4 uni 4.4.4.4 BGP routing table entry for 4.4.4.4/32 Paths: (1 available, best #1, table default) Advertised to non peer-group peers: 10.50.12.118 999 999 999 999 10.50.12.118 from 10.50.12.118 (10.50.12.118) Origin incomplete, metric 0, valid, external, best (First path received) Last update: Mon Aug 26 09:47:17 2019 eva# conf eva(config)# route-map BLARBLE permit 10 eva(config-route-map)# no set as-path prepend last-as 3 eva(config-route-map)# end eva# clear bgp ipv4 uni * eva# show bgp ipv4 uni 4.4.4.4 BGP routing table entry for 4.4.4.4/32 Paths: (1 available, best #1, table default) Advertised to non peer-group peers: 10.50.12.118 999 10.50.12.118 from 10.50.12.118 (10.50.12.118) Origin incomplete, metric 0, valid, external, best (First path received) Last update: Mon Aug 26 09:48:31 2019 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4853 from rtrlib/2019-08-16-bugfix-7-1 bgpd: rpki fixes (stable/7.1) - bgpd: fix bgp_table range lookup In case the topmost node has a larger prefix length than the lookup prefix it never matches even if it was still lower than maxlen This also alters a test case to check for this bug. Signed-off-by: Marcel Röthke <marcel.roethke@haw-hamburg.de> - bgpd: remove initial sync timeout in rpki startup code The initial sync timeout breaks config load and is not necessary anyway. Fix #4827 Signed-off-by: Marcel Röthke <marcel.roethke@haw-hamburg.de> - Merge pull request #4743 from opensourcerouting/7.1/ospfd-default-originate [7.1] ospfd: fix default originate always - bgpd: [7.1] Strip `delete` keyword when looking up for communit… (#4769) bgpd: [7.1] Strip `delete` keyword when looking up for communities - bgpd: [7.1] Strip `delete` keyword when looking up for lcommuni… (#4786) bgpd: [7.1] Strip `delete` keyword when looking up for lcommunities - bgpd: Strip `delete` keyword when looking up for lcommunities Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - topotests: Check if set-comm-list is working under route-map scope Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - bgpd: Convert to network byte order before passing value to `community_del_val` community_val_get() returns ntohl(val) which is used in more places like community_include(), community_add_val(), but community_del_val() is missing back conversion htonl(). Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - bgpd: Strip `delete` keyword when looking up for communities Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4749 from ton31337/fix/next-hop-self_force_alias_for_ipv6_7.1 bgpd: [7.1] Add hidden `next-hop-self all` for all address families - bgpd: Add hidden `next-hop-self all` for all address families Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - ospfd: re-fix default origination check ospf->external[DEFAULT_ROUTE] and zclient->default_information don't line up with each other; the former is only used for "originate always". Fixes: #4237 Signed-off-by: David Lamparter <equinox@diac24.net> - Revert "ospfd: default route got flushed after lsa refresh timer." This reverts commit a6b4e1fdedb290e8d86f73b0d7f842f7042b26af. This fix is wrong too. Signed-off-by: David Lamparter <equinox@diac24.net> - Merge pull request #4662 from opensourcerouting/fix-outdated-candidate-7.1 [7.1] lib: fix outdated candidate configuration issue - Merge pull request #4665 from ton31337/fix/show_delete_suboption_for_set_comm-list_7.1 bgpd: [7.1] Show `delete` sub-option for `set [l]comm-list <list> delete` - bgpd: Show `delete` sub-option for `set [l]comm-list <list> delete` Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - lib: fix outdated candidate configuration issue Even when using the classic CLI mode (i.e. when --tcli is not used), the northbound code still uses vty->candidate_config to perform configuration changes. From the perspective of the user, the running configuration is being edited directly, but under the hood the northbound layer does a full configuration transaction for each command. When the running configuration is edited by a northbound client other than the CLI (e.g. kernel, gRPC), vty->candidate_config might become outdated, and this can lead to lots of weird problems. To fix this, always regenerate vty->candidate_config before each configuration command when using the classic CLI mode. When using the transactional CLI, the user needs to update the candidate manually using the "update" command, otherwise the "commit" command will fail with this error: "% Candidate configuration needs to be updated before commit". Fixes some problems reported by Don after moving an interface from one VRF to another one while zebra is running. Reported-by: Don Slice <dslice@cumulusnetworks.com> Signed-off-by: Renato Westphal <renato@opensourcerouting.org> - Merge pull request #4646 from ton31337/feature/validate_lcommunity_7.1 bgpd: [7.1] Validate large-community-list against UINT_MAX - bgpd: Validate large-community-list against UINT_MAX Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - [7.1] *: s/TRUE/true/, s/FALSE/false/ (#4633) [7.1] *: s/TRUE/true/, s/FALSE/false/ - *: s/TRUE/true/, s/FALSE/false/ Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - Merge pull request #4611 from donaldsharp/7_1_igmp_connected_source [7.1]pimd: Dissallow query to be received from a non-connected source - pimd: Dissallow query to be received from a non-connected source When we receive an igmp query on a interface, ensure that the source address of the packet is connected to the incoming interface. This will prevent a meanie from crafting a igmp packet with a source address less than ours and causing us to suspend query activities. Fixes: #1692 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4595 from ton31337/feature/autocomplete/bgp_peer-groups_7.1 bgpd: [7.1] List all groups dynamically for commands with peer-group - bgpd: List all groups dynamically for commands with peer-group Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4593 from ton31337/fix/match_ip_nexthop_type_blackhole_7.1 rmap: [7.1] Backport changes regarding `no match ip next-hop type` - rmap: Minor changes in comments regarding match ip[v6] next-hop type Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - rmap: Modify cli helper text for `match_ipv6_next_hop_type_cmd` Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - rmap: Add hooks into zebra,ospf,rip for `match ip next-hop type blackhole` Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - FRRouting release 7.1 - gRPC northbound plugin - "table NNN" removed from zebra - more dataplane MT work - EVPN in non-default VRFs - RFC 8212 (default deny policy for eBGP) - RFC 8106 (IPv6 RA DNS options) Signed-off-by: David Lamparter <equinox@opensourcerouting.org> - Merge pull request #4539 from opensourcerouting/7.1/watchfrr-sd-timeout [7.1] tools: retain sanity when reloading under systemd - tools: retain sanity when reloading under systemd Without this, we end up restarting watchfrr with the systemd watchdog non-functional & tripped a bit later. Also, if watchfrr is in the "control" cgroup, systemd 232 will kill it. (241 apparently doesn't. Can't find anything about this in systemd's ChangeLog though.) Signed-off-by: David Lamparter <equinox@opensourcerouting.org> (cherry picked from commit 9c251d376ad8e604c25767b32c2816e9ae75a738) - 7.1: isisd: The RFC states that v6 addresses are limited to 16 in a hello … (#4475) 7.1: isisd: The RFC states that v6 addresses are limited to 16 in a hello … - isisd: The RFC states that v6 addresses are limited to 16 in a hello packet The RFC states we can send only up to 16 v6 addresses in a hello packet and cannot send sub tlv's of that type. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4462 from donaldsharp/7.1_bfd_access_list 7.1: bfdd: Modify bfdd to quietly accept access-lists - bfdd: Modify bfdd to quietly accept access-lists The `access-list ...` command was causing bfdd to return 'unknown commands'. Make bfdd at least cognizant of access-lists enough to not create strange error messages Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4425 from ton31337/feature/show_fqdn_in_show_ip_bgp_7.1 bgpd: [7.1] Show FQDN in `show [ip] bgp` output - bgpd: Show FQDN in `show [ip] bgp` output We already show this information in `show [ip] bgp <prefix`, thus why don't show it in global output. It's very handy when using at scale and to see the whole picture instead of resolving neighbor manually. It will show FQDN only if `bgp default show-hostname` is toggled. Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4423 from ton31337/feature/delete_prefix_list_by_sequence_number_7.1 plist: [7.1] Delete prefix-list by sequence number - plist: Delete prefix-list by sequence number Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4411 from opensourcerouting/feature/fix-isis-route-deletion-7.1 isisd: del routes when area is unconfigured - isisd: del routes when area is unconfigured attempt to fix #4399 Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io> - Merge pull request #4406 from opensourcerouting/snap-fix-7.1 [7.1] Snap fixes for 7.1 - snapcraft: Add libdb5.3 dependency Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Disable libyang CACHE for snap package (Temp workaround) There seems to be a bug in latest libyang running when running in a snap container which causes a failure of the cache logic. Disable CACHE for now as it's not yet needed. Will be re-enabled in a later release Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Add FabricD to Snap package Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Update bgpd to use newer rpki lib Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Add libyang to snap package Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Add missing staticd.conf.default Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Don't stage libc6 Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - snapcraft: Update RTRLIB to 0.6.3 Signed-off-by: Martin Winter <mwinter@opensourcerouting.org> - Merge pull request #4381 from opensourcerouting/7.1/dlist [7.1] DLIST / BGP adv_fifo deletion fix - bgpd: use DLIST for adv_fifo I mistakenly assumed that something called "FIFO" would primarily be used by removing items from the front. This isn't the case for the adv_fifo... so use a DLIST there to make sure deletions from the middle of the queue are fast. Signed-off-by: David Lamparter <equinox@diac24.net> (cherry picked from commit 5ac8ecbabd9638f726fdff5d49b43e675a47e434) - lib: add DECLARE_DLIST (double-linked list) Turns out we need one of these. Same API as DECLARE_LIST, but deleting random items is much faster. Signed-off-by: David Lamparter <equinox@diac24.net> (cherry picked from commit fdad523b547e68a2170a7e5fec4bad98222cb9a0) - Merge pull request #4356 from donaldsharp/7.1_updates 7.1 updates - bgpd: display bgp neighbor advertised-routes json warning message Issue 1: Getting an empty json without any warning message, while executing the command "show ip bgp neighbor <x.x.x.x> advertised-routes json" when the bgp instance is not present or getting created. Issue 2: Getting an empty json without any warning message, while executing the command "show ip bgp vrf/view <name> advertised-routes json" when the specified view/vrf is not present. Fix: Display warning message while executing the above cli commands, when the bgp instance, specified vrf is not present. Signed-off-by: Sarita Patra <saritap@vmware.com> - lib: fix crash in the CLI grammar sandbox The CLI grammer sandbox needs to initialize the northbound subsystem otherwise the running_config global variable won't be set, which leads to crashes. Fixes #4319. Signed-off-by: Renato Westphal <renato@opensourcerouting.org> - doc: fix ospf6d router-id cmd in ospf6d, the 'router-id' command must be prefixed with 'ospf6'. Update the docs to reflect this. Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io> - bgpd: evpn json cli bug fix Bug: If there are 2 different prefixes under an rd, the output of "show bgp l2vpn evpn json" would print only one of the prefixes. RCA: prefix info was added to the json_object once per rd. Hence, prefix and rd were added just once, as the loop iterated over all the prefixes and paths. This is related to my earlier commit that went in via PR 4283: https://github.com/FRRouting/frr/pull/4283 Signed-off-by: Lakshman Krishnamoorthy <lkrishnamoor@vmware.com> - doc: add doc for zebra dplane cli Add some notes about the cli associated with the zebra dataplane. Signed-off-by: Mark Stapp <mjs@voltanet.io> - zebra: unset sticky mac upon local deletion if the local sticky mac delete request is received, if there are associated neighbor entries present, mac's only local flag is removed and marked as auto mac. this results in next local mac learning automatically assumes mac is sticky. There is a case when bridge learning off is configured, user configures sticky mac via bridge fdb add. This MAC learns associated neighbor entry. Later user deletes stick mac via bridge fdb del, this triggers frr to delete mac but if there are neighbors present, frr marks MAC as AUTO but does not remove sticky flag. User enables bridge learning on which triggers The mac to learn as dynamic entry and in absence of this fix, the mac is marked as sticky. Ticket:CM-24968 Reviewed By:CCR-8683 Testing Done: Validated broken condition with internally reproduction with fix and without. Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com> - doc: add doc for bgp maximum-prefix knob Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - bgpd: Evpn json cli output missing Issue1: The following json cli commands are broken (they dont display anything): 1. show [ip] bgp l2vpn evpn json 2. show [ip] bgp l2vpn evpn all neighbors <IP> routes json 3. show [ip] bgp l2vpn evpn rd <RD> json 4. show [ip] bgp l2vpn evpn rd <RD> neighbors <IP> routes json RCA1: The existing json_object was partially filled. Some fields like "prefix", "prefixLen", etc were not filled in the json_object. RCA2: Code missing to display the constructed json_object. Issue2: Column header not shown on bgp evpn commands. Fix: turned on the flag to display header Output after fix: The above commands have been made to follow the existing output style of "show bgp l2vpn evpn routes json" leaf-1# sh bgp l2vpn evpn json { "bgpTableVersion":1, "bgpLocalRouterId":"10.100.0.1", "defaultLocPrf":100, "localAS":65000, "10.100.0.1:3":{ "rd":"10.100.0.1:3", "[3]:[0]:[32]:[10.100.0.1]":{ "prefix":"[3]:[0]:[32]:[10.100.0.1]", "prefixLen":288, "paths":[ { "valid":true, "bestpath":true, "pathFrom":"external", "routeType":3, "ethTag":0, "ipLen":32, "ip":"10.100.0.1", "weight":32768, "peerId":"(unspec)", "aspath":"", "path":"", "origin":"IGP", "nexthops":[ { "ip":"10.100.0.1", "afi":"ipv4", "used":true } ] } ] } }, .......... .......... "10.100.0.2:2":{ "rd":"10.100.0.2:2", "[3]:[0]:[32]:[10.100.0.2]":{ "prefix":"[3]:[0]:[32]:[10.100.0.2]", "prefixLen":288, "paths":[ { "valid":true, "bestpath":true, "pathFrom":"external", "routeType":3, "ethTag":0, "ipLen":32, "ip":"10.100.0.2", "weight":0, "peerId":"205.0.113.2", "aspath":"65002", "path":"65002", "origin":"IGP", "nexthops":[ { "ip":"10.100.0.2", "afi":"ipv4", "used":true } ] }, { "valid":true, "pathFrom":"external", "routeType":3, "ethTag":0, "ipLen":32, "ip":"10.100.0.2", "weight":0, "peerId":"203.0.113.4", "aspath":"65001 65002", "path":"65001 65002", "origin":"IGP", "nexthops":[ { "ip":"10.100.0.2", "afi":"ipv4", "used":true } ] } ] } }, .... .... "numPrefix":10, "totalPrefix":10 } leaf-1# sh bgp l2vpn evpn BGP table version is 1, local router ID is 10.100.0.1 Status codes:s suppressed, d damped, h history, * valid, > best, i - int Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path Route Distinguisher: ip 10.100.0.1:3 *> [3]:[0]:[32]:[10.100.0.1] 10.100.0.1 32768 i Route Distinguisher: ip 10.100.0.1:4 *> [3]:[0]:[32]:[10.100.0.1] 10.100.0.1 32768 i Route Distinguisher: ip 10.100.0.1:5 *> [3]:[0]:[32]:[10.100.0.1] 10.100.0.1 32768 i Route Distinguisher: ip 10.100.0.1:6 *> [3]:[0]:[32]:[10.100.0.1] 10.100.0.1 32768 i Route Distinguisher: ip 10.100.0.2:2 *> [3]:[0]:[32]:[10.100.0.2] 10.100.0.2 0 65002 i * [3]:[0]:[32]:[10.100.0.2] 10.100.0.2 0 65001 65002 Route Distinguisher: ip 10.100.0.2:3 *> [3]:[0]:[32]:[10.100.0.2] 10.100.0.2 0 65002 i * [3]:[0]:[32]:[10.100.0.2] 10.100.0.2 0 65001 65002 Route Distinguisher: ip 10.100.0.2:4 *> [3]:[0]:[32]:[10.100.0.2] 10.100.0.2 0 65002 i * [3]:[0]:[32]:[10.100.0.2] 10.100.0.2 0 65001 65002 Displayed 10 out of 10 total prefixes Signed-off-by: Lakshman Krishnamoorthy <lkrishnamoor@vmware.com> - isisd: Don't set subtlv structure if we didn't unpack any subtlvs This ensures deserialized and serialized TLV representation is consistent. - Pimd : S,G Mroute entries are not expiring even after KAT expiry, become stale entries. Topology: -------- Source | FHR | RP ------ LHR --- Recv1 | Recv2 Root case : ----------- When RP acts as a LHR i.e RP has a local receiver and registed for the same group where LHR connected receiver also registered for the same multicast group.When RP receives a (s,g) join form LHR , it increments upstream ref count to two to track the Local membership as well.But at the time of KAT expiry in RP , upstream reference is not being removed Which is added to track local membership which is causing to make these entries as stale in RP and FHR. Fix : Made the change such that it removes the upstream reference if it is added to track the local memberships. Signed-off-by: Rajesh Girada <rgirada@vmware.com> - lib, bgpd: Disallow processing of duplicate config. This fix aims to reduce the load on BGPD when certain exisiting configurations are replayed. Specifically, the fix prevents BGPD from processing routes when the following already existing configurations are replayed: 1) A match criteria is configured within a route-map. 2) When "call" is invoked within a route-map. 3) When a route-map is tied to a BGP neighbor. Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com> - lib : Child rmap not sending an update to parent rmap,if there is an update in child rmap. Route map library creates a hash table to save the dependency binding. route-map LRM permit 1 call rLRM Whenever there is change in child routemap(rLRM), it tries to find the dependency mapping with the child route map MATCH event and it fails.The handing of match add and match delete was missing to get the correct dependency,here it's LRM. This fix would correct the flow to get the correct dependency. Signed-off-by: vishaldhingra <vdhingra@vmware.com> - Merge pull request #4336 from mjstapp/fix_vrf_lsps_7_1 zebra: [7.1] remove vrf LSPs when vrf is deleted - zebra: [7.1] remove vrf LSPs when vrf is deleted Try to remove any LSPs associated with a vrf when the vrf is deleted. The vrf code was calling a helpful zebra_mpls api, but that api was basically a no-op for vrfs other than the default. Signed-off-by: Mark Stapp <mjs@voltanet.io> - configure: Update Version to be 7.1 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4286 from vishaldhingra/show_expanded bgpd : lcommlist not shows the standard and expanded conf. correctly. - bgpd : lcommlist not shows the standard and expanded conf. correctly. lcommunity_list_show uses the wrong macro to calculate the style. Use the correct one LARGE_COMMUNITY_LIST_STANDARD. Signed-off-by: vishaldhingra<vdhingra@vmware.com> - Merge pull request #4280 from qlyoung/remove-yang-strreplace-func lib: remove str_replace function - Merge pull request #4277 from rtrlib/2019-05-07-master-bugfix RPKI fixes/improvements - Merge pull request #4082 from opensourcerouting/grpc-nb-plugin gRPC northbound plugin - Merge pull request #4215 from Orange-OpenSource/TE ospfd: Correct Link-ID and Remote IP for TE LSA - lib: remove str_replace function Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - Merge pull request #4273 from donaldsharp/doc_zebra_command doc: Add a couple of missed `show zebra ...` comamnds to doc - Merge pull request #4270 from opensourcerouting/libyang-compat lib, yang: disable libyang custom user types temporarily - bgpd: fix rpki module build without ssh support Signed-off-by: Marcel Röthke <marcel.roethke@haw-hamburg.de> - bgpd: add missing newline to a warning message in the rpki module Signed-off-by: Marcel Röthke <marcel.roethke@haw-hamburg.de> - doc: Add a couple of missed `show zebra ...` comamnds to doc Noticed that a couple of the `show zebra ...` commands are missing from the zebra documentation that I use a bunch. Let's add them in. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4266 from vishaldhingra/lcomm_dyn bgpd : dynamic modification in lcomm-list is not taking effect. - Merge pull request #4268 from qlyoung/frrstr-replace lib: add string replace function - Merge pull request #4244 from donaldsharp/pim_single_interface pimd: Stop crash in show of single interface - Merge pull request #4264 from pguibert6WIND/trace_bfd More traces for BFD clients - lib, yang: disable libyang custom user types temporarily libyang 1.0 introduced a few changes in the user types API, and these changes made FRR incompatible with libyang 1.x. In order to ease our migration from libyang 0.x to libyang 1.x, let's disable our libyang custom user types temporarily so that FRR can work with both libyang 0.x and libyang 1.x. This should be especially helpful to the CI systems during the transition. Once the migration to libyang 1.x is complete, this commit will be reverted. Disabling our libyang custom user types should have only minimal performance implications when processing configuration transactions. The user types infrastructure should be more important in the future to perform canonization of YANG data values when necessary. Signed-off-by: Renato Westphal <renato@opensourcerouting.org> - lib: add string replace function Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - Merge pull request #4256 from donaldsharp/zebra_table doc, zebra: Remove "table X" command - Merge pull request #4253 from qlyoung/zapi-handler-args-macro ZAPI callback args macro - Merge pull request #4234 from donaldsharp/flood_the_vtep zebra: Fix incorrect reading of REMOTE_VTEP_[ADD|DEL] - doc, zebra: Remove "table X" command This command is broken and has been broken since the introduction of vrf's. Since no-one has complained it is safe to assume that there is no call for this specialized linux command. Remove from the system with extreme prejudice. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - zebra: Be consistent in how we call rib_add( and rib_delete( with tableid The rib_add( and rib_delete( functions are there to allow kernel interactions with the creation of routes. Fixup the code to be consistent in the passup of the tableid. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - bgpd : dynamic modification in lcomm-list is not taking effect. lcomm-list is configured and attached to route-map via match clause. If you modify the lcomm-list then it is not taking into effect via routemap. Signed-off-by: vishaldhingra <vdhingra@vmware.com> - ospfd: add bfd up event trace that bfd trace is visible when using 'debug ospf nsm event' command. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com> - bgpd: add bfd event trace that bfd event trace is visible when 'debug bgp neighbor-event' is enabled. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com> - Merge pull request #4255 from donaldsharp/coverity_stole_my_sanity Coverity stole my sanity - *: use ZAPI_CALLBACK_ARGS macro for zapi handlers This macro: - Marks ZAPI callbacks for readability - Standardizes argument names - Makes it simple to add ZAPI arguments in the future - Ensures proper types - Looks better - Shortens function declarations Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - lib: define ZAPI_CALLBACK_ARGS macro Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - zebra: Memory allocations do not fail If a memory allocation fails then we *know* we assert and core the program. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - lib: Remove functionally dead code. The vrf_with_default_name vrf variable is set to NULL and then tested to see if it is valid. Removing the dead code. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - ospfd: continue statement is redundant The continue statement is redundant because DISCARD_LSA has one in it already. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - bgpd: The vpn variable must be non-null The vpn variable in bgp_evpn_advertise_svi_ip_vni must be non-null as such it is impossible to ever need the !vpn test case. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - zebra: Add some extra safety for route_info The route_info[X].meta_q_map *must* be less than MQ_SIZE or we will do some strange stuff, so assert on it at startup. The distance in route_info is a uint8_t so let's keep the data structure the same. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - bgpd: Remove logically dead code assignment The label value is set to MPLS_LABEL_NONE at the start of the function and we never modify it, testing it for BGP_PREVENT_VRF_2_VRF_LEAK equality will never be true Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - zebra: ifp must be a real pointer sometimes The ifp pointer must be pointing at a real location in memory since right above us in this loop we return if it is. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - pbrd: Prevent usage of c if it is null It is possible, that a connected lookup from zebra_interface_address_read is null. Protect and Serve Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4233 from qlyoung/fix-zapi-msg-debugs zebra: fix zapi msg debugging dumps - zebra: fix zapi msg debugging dumps When we switched to a pthread per client, we lost the ability to correlate zapi message debugs with their handlers in zlog, because the message was logged when it was read off the zapi socket and not right before it was processed. Move the zapi msg hexdump to happen right before we call the message handler. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - Merge pull request #4252 from pogojotz/master doc: Fix failing `make doc` - doc: Fix failing `make doc` This build system bug was introduced with 9251d1f596. Signed-off-by: Juergen Werner <pogojotz@gmx.net> - Merge pull request #4247 from mjstapp/fix_topotest_topo_only topotest: fix pytest deprecation warning - topotest: fix pytest deprecation warning As of pytest 4.something, a pattern we were using in conftest.py was deprecated. Also make a new-ish test script executable (all the rest appear to be?) Signed-off-by: Mark Stapp <mjs@voltanet.io> - Merge pull request #4243 from mjstapp/fix_dplane_strlcpy zebra: replace strncpy with strlcpy in dplane - pimd: Stop crash in show of single interface There exists a possiblity that we have upstream data but at this point in time the rpf failed because there is no path. As such the rpf interface will be NULL and we should not necessarily trust it. Prevent a crash Ticket: CM-24857 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - zebra: replace strncpy with strlcpy in dplane The dataplane module picked up a couple of strncpys; replace them. Signed-off-by: Mark Stapp <mjs@voltanet.io> - Merge pull request #4238 from LabNConsulting/working/lb/master/tt-clear-nves topotests/bgp_rfapi_basic_sanity: cleanup rfapi using non-debug command - Merge pull request #4241 from FRRouting/revert-4192-biswajitfrr_4 Revert "bgpd: Prevent IPv6 routes received via a ibgp session with own ip as nexthop " - Revert "bgpd: Prevent IPv6 routes received via a ibgp session with own ip as nexthop " - Merge pull request #4240 from FRRouting/revert-4236-zebra_diet Revert "Zebra diet" - Revert "Zebra diet" - Merge pull request #4236 from donaldsharp/zebra_diet Zebra diet - topotests/bgp_rfapi_basic_sanity: cleanup rfapi using non-debug command Signed-off-by: Lou Berger <lberger@labn.net> - lib: Convert table code to use new hash type This converts the new table code to use the new hash type provided by David. The following test is 1 million routes installed and how much memory we are using: Old mem usage: Memory statistics for zebra: System allocator statistics: Total heap allocated: 574 MiB Holding block headers: 0 bytes Used small blocks: 0 bytes Used ordinary blocks: 536 MiB Free small blocks: 33 MiB Free ordinary blocks: 4600 KiB Ordinary blocks: 0 Small blocks: 0 Holding blocks: 0 New Memory usage: Memory statistics for zebra: System allocator statistics: Total heap allocated: 542 MiB Holding block headers: 0 bytes Used small blocks: 0 bytes Used ordinary blocks: 506 MiB Free small blocks: 3374 KiB Free ordinary blocks: 33 MiB Ordinary blocks: 0 Small blocks: 0 Holding blocks: 0 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - lib: Make prefix_hash_key accept a const We should not be modifying the pointer for the prefix_hash_key function, make it a const so that we can use it elsewhere. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - lib: Make _find functions treat the head as const The head of a list should not change for find functions. Probably are others that should be considered but these changes can come in as needed I believe. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - zebra: Remove linked list and replace with new LIST The `struct rib_dest_t` was being used to store the linked list of rnh's associated with the node. This was taking up a bunch of memory. Replace with new data structure supplied by David and see the memory reductions associated with 1 million routes in the zebra rib: Old: Memory statistics for zebra: System allocator statistics: Total heap allocated: 675 MiB Holding block headers: 0 bytes Used small blocks: 0 bytes Used ordinary blocks: 567 MiB Free small blocks: 39 MiB Free ordinary blocks: 69 MiB Ordinary blocks: 0 Small blocks: 0 Holding blocks: 0 New: Memory statistics for zebra: System allocator statistics: Total heap allocated: 574 MiB Holding block headers: 0 bytes Used small blocks: 0 bytes Used ordinary blocks: 536 MiB Free small blocks: 33 MiB Free ordinary blocks: 4600 KiB Ordinary blocks: 0 Small blocks: 0 Holding blocks: 0 `struct rnh` was moved to rib.h because of the tangled web of structure dependancies. This data structure is used in numerous places so it should be ok for the moment. Future work might be needed to do a better job of splitting up data structures and function definitions. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - doc: Some minor doc cleanup for new data structures Noticed during attempts at usage that the documentation needed a couple small updates: 1) Tell the user which header to include 2) Some functions want the address of the data structure Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4230 from sworleys/Route-Info-Check zebra: Check on startup route_info has all types - Merge pull request #4220 from donaldsharp/fix_linux_alias zebra: Modify how we display/store os description - Merge pull request #4192 from bisdhdh/biswajitfrr_4 bgpd: Prevent IPv6 routes received via a ibgp session with own ip as nexthop - topotests/bgp_rfapi_basic_sanity: cleanup rfapi using non-debug command Signed-off-by: Lou Berger <lberger@labn.net> - zebra: Check on startup route_info has all types Add a function to check if the route_info array has all types specified with data in it. Specifically, test the 'key' attribute for non-zero data. Ignore ZEBRA_ROUTE_SYSTEM as it should be zero key anyway. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com> - zebra: suppress unused variable warning Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - Merge pull request #4226 from sworleys/PBR-BFD-OF-route_info zebra: Add PBR, BFD, OpenFabric to route_info - zebra: Fix incorrect reading of REMOTE_VTEP_[ADD|DEL] With flooding control added recently we were not properly handling the new flood control parameter in zebra_vxlan.c handler functions. The error message that was being repeatedly seen: 2019/05/01 00:47:32 ZEBRA: [EC 100663311] stream_get2: Attempt to get out of bounds 2019/05/01 00:47:32 ZEBRA: [EC 100663311] &(struct stream): 0x7f0f04001740, size: 22, getp: 22, endp: 22 The fix was to ensure that both the _add and _del functions kept proper sizing of amount of data read *and* the _del function was not reading the flood_control data from the stream. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4232 from mjstapp/fix_topotests_py3 topotest: fixes to support python3 - topotest: fixes to support python3 Make some small changes to support both python 2 and 3. Signed-off-by: Mark Stapp <mjs@voltanet.io> - Merge pull request #3045 from opensourcerouting/atoms READY: lists/skiplists/rb-trees new API & sequence lock & atomic lists - ospfd: Correct Link-ID and Remote IP for TE LSA Solve issue #4198 Link-ID and Remote IP address must be set accordingly to the interface type (Point-to-Point or Broadcast) from the neighbor information. However, this information are only valid once the Network State Machine (NSM) is Full i.e. when the adjacency is up. The original TE code only look to Interface State Machine (ISM) change which not allow to collect valid neighbor information. The patch move setup of Link-ID and Remote-IP TE parameters from ospf_mpls_te_ism_change() to ospf_mpls_te_nsm_change() function. Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com> - zebra: Comment to ensure types added to route_info Add a comment to indicate that route types added to Zebra, should also be present in the route_info array. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com> - Merge pull request #4227 from faickermo/fix_show_ip_bgp_json bpgd: Add the end of newline of show bgp table json output - zebra: Add OpenFabric to route_info array Add OpenFabric to the route_info array for handling processing of the OpenFabric route type. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com> - zebra: Add BFD to route_info array Add BFD to the route_info array for handling processing of the BFD route type. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com> - zebra: Add PBR to route_info array Add PBR to the route_info array for handling processing of the PBR route type. Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com> - Revert "lib: use DECLARE_SKIPLIST for timers instead of pqueue" This reverts commit 7c198e4e1ac07c043ecfc573aed9f1d107f87234. - Revert "lib: remove pqueue_*" This reverts commit 798ac49d06b6619adb4c5ac765b092397bc50a6c. - bpgd: Add the end of newline of show bgp table json output Signed-off-by: Faicker Mo <faicker.mo@ucloud.cn> - lib: remove fifo implementation - bgpd: replace label pool fifo with DECLARE_LIST Again, the FIFO_* stuff in lib/fifo.h is no different from a simple unsorted list. Just use DECLARE_LIST here so we can get rid of FIFO_*. Signed-off-by: David Lamparter <equinox@opensourcerouting.org> - bgpd: replace ADV_FIFO with DECLARE_LIST The FIFO_* stuff in lib/fifo.h is no different from a simple unsorted list. Just use DECLARE_LIST here so we can get rid of FIFO_*. Signed-off-by: David Lamparter <equinox@opensourcerouting.org> - isisd: replace dict_* with DECLARE_RBTREE Historically, isisd has been carrying around its own red-black tree to manage its LSP DB in. This replaces that with the newly-added DECLARE_RBTREE_*. This allows completely removing the dict_* code. Signed-off-by: David Lamparter <equinox@diac24.net> - lib: remove pqueue_* All users of the pqueue_* implementations have been migrated to use TYPEDSKIP_* skiplists. Remove. Signed-off-by: David Lamparter <equinox@diac24.net> - ospfd: replace pqueue_* with DECLARE_SKIPLIST This replaces the SPF pqueue_* with a DECLARE_SKIPLIST_* skiplist. Signed-off-by: David Lamparter <equinox@diac24.net> - ospf6d: replace pqueue_* with DECLARE_SKIPLIST As the previous commit, this replaces ospf6d's pqueue_* usage in SPF calculations with a DECLARE_SKIPLIST_* skiplist. Signed-off-by: David Lamparter <equinox@diac24.net> - lib: use DECLARE_SKIPLIST for timers instead of pqueue Replaces the use of pqueue_* for the thread_master's timer list with an instance of DECLARE_SKIPLIST_*. Signed-off-by: David Lamparter <equinox@diac24.net> - lib: use DECLARE_LIST for thread_list Replaces the open-coded thread_list with a DECLARE_LIST instantiation. Some function prototypes are actually identical to what was previously open-coded. Signed-off-by: David Lamparter <equinox@diac24.net> - lib: use DECLARE_HASH for qobj hash This changes the qobj node ID hash to use the new typed hash instead of the old hash_* code. Signed-off-by: David Lamparter <equinox@diac24.net> - tests: exercise the typesafe list wrappers Since all of these list implementations provide almost the same API, we can run and validate them against the same test code. 9 tests for the price of one! Signed-off-by: David Lamparter <equinox@opensourcerouting.org> - doc: add developer docs for type-safe lists Signed-off-by: David Lamparter <equinox@diac24.net> - lib: atomlist & atomsort These two are lock-free linked list implementations, the plain one is primarily intended for queues while the sorted one is for general data storage. Signed-off-by: David Lamparter <equinox@diac24.net> - lib: typesafe rb-tree Typesafe red-black tree, built out of the OpenBSD implementation and the macro soup layered on top. API compatible with skiplists & simple lists. Signed-off-by: David Lamparter <equinox@opensourcerouting.org> - lib: typesafe lists, skiplist & hash By the power of the C preprocessor, these macros provide type-safe warppers for simple lists, skiplists and hash tables. Also, by changing the instantiation macro, it is easily possible to switch between algorithms; the code itself does not need to be changed since the API is identical across all algorithms. Signed-off-by: David Lamparter <equinox@opensourcerouting.org> - lib: add new gRPC-based northbound plugin This is an experimental plugin for now. Full documentation will come later. Signed-off-by: Renato Westphal <renato@opensourcerouting.org> - lib: introduce a read-write lock for northbound configurations The upcoming gRPC-based northbound plugin will run on a separate pthread, and it will need to have access to the running configuration global variable. Introduce a rw-lock to control concurrent access to the running configuration. Add the lock inside the "nb_config" structure so that it can be used to protect candidate configurations as well (this might be necessary depending on the threading scheme of future northbound plugins). Signed-off-by: Renato Westphal <renato@opensourcerouting.org> - lib: add API to allow northbound clients to lock/unlock the running configuration The ability to lock the running configuration to prevent other users from changing it is a very important one. We already supported the "configure exclusive" command but the lock was applied to the CLI users only (other clients like ConfD could still commit configuration transactions, ignoring the CLI lock). This commit introduces a global lock for the running configuration that is shared by all northbound clients, and provides a public API to manipulate it. This way other northbound clients will also be able to lock/unlock the running configuration if required (the upcoming gRPC northbound plugin will have RPCs for that). NOTE: this is a management-level lock for the running configuration, not to be confused with low-level locks used to avoid data races. Signed-off-by: Renato Westphal <renato@opensourcerouting.org> - zebra: Modify how we display/store os description The alias/description of an interface in linux was being used to override the internal description. As such let's fix the display to keep track of both if we have it. Config in FRR: ! interface docker0 description another combination ! interface enp3s0 description BAMBOOZLE ME WILL YOU ! Config in linux: sharpd@robot ~/f/zebra> ip link show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 alias This is the loopback you cabbage 2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 74:d0:2b:9c:16:eb brd ff:ff:ff:ff:ff:ff alias HI HI HI Now the 'show int descr' command: robot# show int description Interface Status Protocol Description docker0 up down another combination enp3s0 up up BAMBOOZLE ME WILL YOU HI HI HI lo up up This is the loopback you cabbage Fixes: #4191 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4216 from donaldsharp/nhg_sharpd_fixup vtysh: Fixup exit nexthop-group to include sharpd - vtysh: Fixup exit nexthop-group to include sharpd The exit of the nexthop-group should know about sharpd Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4159 from sworleys/WQ-ErrFunc-Fix lib: Fix workqueue error function callback - Merge pull request #4209 from dslicenc/zebra-nexthop-update-flag zebra: resolve issue with protocol route-map not applied properly - zebra: resolve issue with protocol route-map not applied properly Problem reported that route-maps applied to "ip protocol table bgp" would not be invoked if the ip protocol table command was issued after the bgp prefixes were installed. Found that a recent change improving how often nexthop_active_update runs missed causing this filtering to be applied. This fix resolves that issue as well as a couple of other places that were problematic with the recent change. Signed-off-by: Don Slice <dslice@cumulusnetworks.com> - Merge pull request #4201 from Orange-OpenSource/SR-isis Issue #4032: Add IS-IS-TE support per Area - isisd: Correct MPLS-TE CLI to new northbound API Due to recent modification in northbound API, replace yang_dnode_get_entry() call by nb_running_get_entry() call. Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com> - isisd: Add IS-IS-TE support per Area Solve issue #4032 - Change MPLS-TE from global to per Area - Add new mpls_te_area structure to area in replacement of global variable isisMPLS_TE - Move mpls-te from global to instance in frr-isisd.yang - Change code in isis_te.c, isis_northbound.c, isis_cli.c, isis_pdu.c, isis_lsp.c and isis_zebra.c accordingly Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com> - Merge pull request #4205 from donaldsharp/pim_more_flags pimd: Add missing flags to json output - Merge pull request #4204 from dslicenc/frr-reload-bfd-timers tools: frr-reload.py stop bouncing peers on bfd timer change - tools: frr-reload.py stop bouncing peers on bfd timer change Problem reported that if a bgp neighbor had a bfd timer change made in frr.conf and systemctl reload frr performed, the neighbor with the timer changed bounced. If the change is made in vtysh by just adding the new timer values, no peer bounce occurs. This fix skips the delete part of the delete/add process in frr-reload so the peers stay up. Signed-off-by: Don Slice <dslice@cumulusnetworks.com> - Merge pull request #4155 from pguibert6WIND/bfd_increase_config bfdd: avoid having bfd config inherited from operation context - Merge pull request #4145 from pguibert6WIND/bfd_converge_up BFD speed convergence up - Merge pull request #4140 from ton31337/fix/do_not_send_notification_again_with_invalid_nlri bgpd: Do not send UPDATE message with maximum-prefix - Merge pull request #4126 from karamalla0406/4113 zebra: L3VNI's are allowed to unconfigure from any VRF - Merge pull request #4200 from ton31337/fix/add_alias_for_force_next-hop bgpd: Make sure `next-hop-self all` backward compatible with force - bgpd: Make sure `next-hop-self all` backward compatible with force Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4203 from opensourcerouting/bfd-fix-src-port bfdd: fix UDP source port range - bfdd: fix UDP source port range RFC 5881 Section 4 tells us that the BFD source port must be between 49152 and 65535 inclusive. Spotted by Lucian Cristian. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org> - bgpd: Do not send UPDATE message with maximum-prefix When using maximum-prefix and count is overflow BGP sends UPDATE message: Apr 15 20:45:06 exit1-debian-9 bgpd[9818]: 192.168.0.2 [Error] Error parsing NLRI Apr 15 20:45:06 exit1-debian-9 bgpd[9818]: %NOTIFICATION: sent to neighbor 192.168.0.2 3/10 (UPDATE Message Error/Invalid Network Field) 0 bytes Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - bgpd: Prevent IPv6 routes received via a ibgp session with own ip as nexthop Prevent IPv6 routes received via a ibgp session with one of its own interface ip as nexthop from getting installed in the BGP table. Implemented IPV6 HASH table, where we need to add any ipv6 address as they gets configured and delete them from the HASH table as the ipv6 addresses get unconfigured. The above hash table is used to verify if any route learned via BGP has nexthop which is equal to one of its its connected ipv6 interface. Signed-off-by: Biswajit Sadhu sadhub@vmware.com - pimd: Add missing flags to json output the json code has not been updated since a variety of new flags have been added to the code base. Add those flags in so we can tell what is going on sometimes. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4187 from donaldsharp/doc_pim doc: Cleanup output of new PIM-EVPN doc - Merge pull request #4176 from qlyoung/doc-cleanup-ospf-apiserver Cleanup OSPF API server docs - doc: typo / grammar pass on OSPF API docs Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - doc: add copyright notice from Ralph Keller Ralph has kindly granted us GPLv2+ license to use this documentation, and requests that we keep a reference to his name. Add these facts to the documentation. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - Merge pull request #4184 from ton31337/fix/documentation_for_as-path_regexp doc: Specify allowed chars in bgp regular expressions - doc: Specify allowed chars in bgp regular expressions Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - doc: pim evpn tabs -> spaces And remove `interface` highlight directive Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - doc: Cleanup output of new PIM-EVPN doc The PIM-EVPN doc was not rendering very well on the website. So Update documentation to allow it to render better. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4179 from donaldsharp/mroute_show Mroute show - Merge pull request #4177 from donaldsharp/pim_more_sg pimd: When creating new upstream state, figure out what we should join - Merge pull request #4163 from chiragshah6/evpn_dev2 bgpd: instance delete unimport evpn routes - Merge pull request #4183 from ton31337/feature/validate_regexp_for_show_command_as_well bgpd: Validate as-path in `show bgp regexp` - bgpd: Validate as-path in `show bgp regexp` Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com> - Merge pull request #4185 from FRRouting/revert-4137-TE Revert "isisd: Add IS-IS-TE support per Area" - Revert "isisd: Add IS-IS-TE support per Area" - Merge pull request #4137 from Orange-OpenSource/TE isisd: Add IS-IS-TE support per Area - Merge pull request #4162 from opensourcerouting/rip-issues ripd, ripngd: fix cleaning up of offset lists - doc: Update `show ip mroute` command docs. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - pimd: Add ability to select on S or G for `show ip mroute` Add the ability to select on a S or G for a `show ip mroute` command. show ip mroute 225.1.1.111 show ip mroute 4.5.6.7 225.1.1.111 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - pimd: When creating new upstream state, figure out what we should join Always when creating a new S,G state look at all possible ifchannels to decide what the mroute should be. The bug that this is fixing is this: Suppose two incoming `*,G` joins on swp1, and swp2. Now suppose that one of those ifchannel `*,G` sends a `*,G S,G RPT Prune`. We were creating the S,G upstream state as we should but we were only looking at the S,G ifchannel to decide the S,G mroute we would be creating. As such what we need to do is to look over the associated *,G ifchannels and allow us to associate correct oil needed. Ticket: CM-24732 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> - Merge pull request #4173 from mjstapp/fix_linklist_warning lib: fix warning in linklist api - doc: add --apiserver to ospfd manpage Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - doc: cleanup OSPF API server documentation * Reflow to 80 columns * Improve markup * Add --apiserver option to example ospfd invocations * Add note on requirement of this option to use api server Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> - lib: fix warning in linklist api Add return value and comment to new/recent linklist api to clean up compile warning. Signed-off-by: Mark Stapp <mjs@voltanet.io> - Merge pull request #3786 from mjstapp/dplane_intf zebra: async interface address programming - Merge pull request #4161 from opensourcerouting/nb-performance lib: rework management of user pointers in the northbound layer - zebra: removing old intf address code Remove old ioctl and netlink interface-address code after conversion to async dataplane Signed-off-by: Mark Stapp <mjs@voltanet.io> - zebra: Dplane interface address install for non-netlink ioctl-based platform code for interface address installation Signed-off-by: Mark Stapp <mjs@voltanet.io> - zebra: add 'is broadcast' accessor for interface data Add flag and accessor corresponding to the interface struct's 'is broadcast' flag. Signed-off-by: Mark Stapp <mjs@voltanet.io> - libs: use const in some interface flag accessors Use const in several interface struct flag accessors (that just test flags.) Signed-off-by: Mark Stapp <mjs@voltanet.io> - zebra: Use dplane for interface addresses (netlink) Start using the dataplane for interface-address programming, on netlink platforms. Other platforms just stubbed at this point. Signed-off-by: Mark Stapp <mjs@voltanet.io> - zebra: add interface-address info for dataplane Add data and accessor apis for interface-address information. Signed-off-by: Mark Stapp <mjs@voltanet.io> - Merge pull request #4025 from AnuradhaKaruppiah/pim-evpn pim-evpn: Forwarding overlay BUM traffic via multicast VxLAN tunnels in the underlay - Merge pull request #4057 from mjstapp/fix_privs_even_more lib: serialize privs changes - libs: control privs changes with refcount Use a refcount to control privs changes. Support process-wide privs apis, as well as per-pthread apis. Signed-off-by: Mark Stapp <mjs@voltanet.io> - Merge pull request #4166 from donaldsharp/pim_s_g Pim s g - Merge pull request #4170 from AnuradhaKaruppiah/evpn-fix-bgp-locks bgpd: lock the tenant-vrf associated with the l2-vni - Merge pull request #4156 from ton31337/fix/allow_backslash_in_as-path_regexp bgpd: Allow backslash in as-path filter lists - pimd: fix macro backslash alignment Fixed in response to Jafar's comments. Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com> - lib: two extra bytes were being allocated for the SG string Fixup in response to Jafar's review comments. This is actually old code moved in from pimd to lib. But the fixup does make sense. Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com> - zebra: use "mcast group" instead of just mcast in show and logs Fixup done in response to Jafar's review comments. root@act-7726-03:~# vtysh -c "show interface vxlan1000111" Interface vxlan1000111 is up, line protocol is up Link ups: 0 last: (never) Link downs: 0 last: (never) PTM status: disabled vrf: default …
seiferteric
pushed a commit
that referenced
this pull request
Nov 25, 2019
* Update src/sonic-telemetry from branch 'broadcom_sonic' to 31c54a162e0707830cefcad5cf99451c293095f4 - [JIRA SONIC-10470]merge sonic-telemetry dell_sonic --> broadcom_sonic 11112019 Change-Id: I2ae9fe6f9a60937ad178c3a930308ea046cad51e - Merge pull request sonic-net#43 from project-arlo/gnoi_ConfigManagement Add config mgmt gNOI RPCs, rename sonic gNOI proto file - Merge pull request sonic-net#42 from project-arlo/gnoi_techsupport Gnoi techsupport - Add config mgmt gNOI RPCs, rename sonic gNOI proto file - Merge remote-tracking branch 'github/master' into gnoi_techsupport - Merge pull request sonic-net#41 from project-arlo/gnmi_set_prefix Add prefix support to gnmi_set - Merge pull request sonic-net#40 from project-arlo/updates_only Updates only - Merge pull request sonic-net#39 from project-arlo/username_password_support Username password support - Make same changes for show-techsupport proto - Add sonic-tests:sum rpc for example - wip - Initial support for showTechSupport rpc - Add prefix support to gnmi_set - Finish updates_only for poll and once - Move line inside block - Implement updates_only for stream subscriptions - Add authentication to gNOI. Return gRPC erros from PAMAuthenAndAuthor for better error codes - verify username/password is actually sent - Remove file added by accident - Add cmd line arg to enable user/passwd auth - Initial username/password auth support - Merge pull request #36 from project-arlo/gNOI Initial gNOI Support - Merge pull request #37 from project-arlo/jsonSchemaTests Json schema tests - remove debug code - Fix bug with muliple operations reusing path var - Add target option to gNOI client - Get schema for tests from compiled output - Add flag module to gNOI client to support morre rpcs in the future - Remove commented out code - Initial checkin for gNOI, with example System Time rpc - Merge pull request #34 from project-arlo/jsonSchemaTests Json schema tests - Merge pull request #35 from project-arlo/brcm_poc Brcm poc - Merge remote-tracking branch 'broadcom/broadcom_sonic' into brcm_poc - Add cleanup to test cases - Migrate interface ipv4 test to new format - Fix Makefile schema path, ad models, change test format - Fix formatting of json in README - Merge pull request #33 from project-arlo/master Syncing project-arlo/sonic-telmetry master to brcm_poc - typo - Add readme for json schema tests - More changes for Json Schema based tests - Use json schema for get tests as well. Use get test in set to verify results - Go back to local gNMI server - Initial validation support using json schema - Load tests from files and get info from file name - Merge pull request #30 from project-arlo/fix-check-testcase Fix check testcase to check individual attributes in a platform-independent way. - Merge pull request #31 from project-arlo/gnmi_cli_fixes Add check that heartbeat_interval is only valid on streaming query type - Merge remote-tracking branch 'project-arlo-telemetry/brcm_poc' into broadcom_sonic Change-Id: Ia772a55a893c2bee3c9e974700e4821f2f8d7af6 - Add check that heartbeat_interval is only valid on streaming query type - Merge branch 'master' of https://github.com/project-arlo/sonic-telemetry into fix-check-testcase Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Merge pull request #29 from project-arlo/master Dell fixes on telemetry repo - 13th Sep - Merge pull request #28 from project-arlo/tests Disable platform specific test for now - Disable platform specific test for now - Merge pull request #27 from project-arlo/update_tls_config Remove duplicate ciphers - Remove duplicate ciphers - fix the check if value set testcase Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Merge pull request #26 from project-arlo/update_tls_config Update tls config - Update cipher suite list again - Fix spaces to tabs - Set Min TLS Version and cipher suites - Merge remote-tracking branch 'project-arlo-telemetry/brcm_poc' into broadcom_sonic Change-Id: Iae02e417fe8c8ea378a0e85d2354cda10f833b1b - Merge pull request #25 from project-arlo/master merge gnmi_cli code into telemetry repo - Merge pull request #23 from project-arlo/gnmi_cli_fixes Gnmi cli fixes - Merge pull request #24 from project-arlo/brcm_poc Fix low code coverage issue by enabling the gnmi_server test code listening on port 8081 - Fix streaming_type in tests - Merge remote-tracking branch 'project-arlo-telemetry/brcm_poc' into broadcom_sonic Change-Id: I14fb29ab4016f390fab9c930a0af69f9a20eba85 - Merge remote-tracking branch 'sshorigin/master' into gnmi_cli_fixes - Add full code for gnmi_cli with our changes so it can be built from scratch like gnmi_set/get. Update Makefile. Add fixes to gnmi_cli to use seconds as units everywhere instead of nanoseconds, and accept string for -streaming_type - Merge pull request #22 from project-arlo/brcm_poc BRCM changes for Telemetry UT - Merge remote-tracking branch 'project-arlo-telemetry/brcm_poc' into broadcom_sonic Change-Id: I4a0804425a4e0a396870004d717f192354dd19c8 - Merge remote-tracking branch 'project-arlo-telemetry/brcm_poc' into broadcom_sonic Change-Id: Id9f1bef203c4a017d53ce0a854072732656e69ee - Merge remote-tracking branch 'project-arlo-telemetry/brcm_poc' into broadcom_sonic Change-Id: Id9f1bef203c4a017d53ce0a854072732656e69ee - Merge pull request #21 from project-arlo/master bring brcm_poc in par with master - Merge pull request #20 from project-arlo/gnmi-test-after-set Add code to check values set - Add code to check values set Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Merge pull request #19 from project-arlo/gnmi-add-delete-test Minor fix in Delete OC Interface IP testcase - Minor fix in Delete OC Interface IP testcase Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Merge pull request #18 from project-arlo/gnmi-add-delete-test Add delete test case - Add delete testcase Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Merge pull request #17 from project-arlo/gnmi_test_sys_pfm Gnmi Server test for system platform and interfaces - Add json file for ip config Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Working gnmi server test for sys,pfm,interfaces - Add test to set ip address Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Code cleanup in server_test.go Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - Fix paths - fix - Fix some issues with test infra - Changes for testing get/set operations on OC interfaces Signed-off-by: Tejaswi Goel <Tejaswi_Goel@Dell.com> - working gnmi sys and pfm test without clearing bad logs - Merge pull request #16 from project-arlo/tests Disable old tests that fail due to new fields being added. Add basic … - Disable old tests that fail due to new fields being added. Add basic interface get test and capabilities test. Change package name and add symlink to cvl schema - Merge pull request #15 from project-arlo/tests Add test directory - Add test directory - Merge pull request #14 from project-arlo/translib-stream-subscribe Implement updates_only for ON_CHANGE streaming mode - Implement updates_only for ON_CHANGE streaming mode - Merge pull request #13 from project-arlo/translib-stream-subscribe Check error response before adding to on_change list - Check error response before adding to on_change list - Merge pull request #12 from project-arlo/capabilities-models Return models based on translib GetModels API - Return models based on translib GetModels API - Merge pull request #11 from project-arlo/translib-stream-subscribe Translib stream subscribe - Fix bug with sync messages - Implement suppress_redundant, fix ticker_map format, remove some debug prints, fix heartbeats - Close channel on error, check if timer if HB - Update IsSupported to IsOnChangeSupported, add heartbeat_interval support to gnmi_cli, remove debug code - Fix issue with when sync message is sent. Add heartbeat support. Add valueCache for suppress_redundant (wip) - convert subscribeResponse to gnmi subscribeResponse and return - wip - Merge pull request #10 from project-arlo/fix-if-replace-update Fix issue with updates and replace with interfaces - Fix issue with updates and replace with interfaces - Merge pull request #9 from project-arlo/sample-subscribe Sample subscribe - Fixes, also include binary for gnmi_cli for now - Add some dummy code for future subscribe api - cleanup - Use ticker_info struct - cleanup - Add paths to existing timer group if interval is the same - Initial support for sample based streaming subscribe - Merge pull request #8 from project-arlo/subscribe-support Ad once channel cleanup - Ad once channel cleanup - Merge pull request #7 from project-arlo/subscribe-support Subscribe support - Add gnmi_cli for subscribe client, update Makefile to build it, add .gitignore - Implement ONCE subscribe mode for translib - Port polling subscriptions code for translib - Merge pull request #6 from project-arlo/buildimage-refactor Fix build issue - Fix build issue - Merge pull request #5 from project-arlo/buildimage-refactor trigger building ocbinds file in translib, add gnmi_clients - trigger building ocbinds file in translib, forgot to add gnmi_clients in last commit - Merge pull request #4 from project-arlo/buildimage-refactor Add gnmi set and get client to build - Add gnmi set and get client to build - Merge pull request #3 from project-arlo/buildimage-refactor Add back install and other targets to fix deb package - Add back install and other targets to fix deb package - Merge pull request #2 from project-arlo/buildimage-refactor Buildimage refactor - Install CVL deps and update gopath - More Makefile changes - Move source files into src, change import paths, fixing Makefile - Merge pull request #1 from project-arlo/brcm_poc Merge PoC changes to master - Ignore test results for gnmi_server The Debian files attempt to run make check for the gNMI server, however, it fails on a build machine, because it expects the Redis server to be available and listening on localhost port 6379. For now, the result of the test is ignored, and we have to find a way to fix this so that the tests work even on a build machine. - GNMI PoC changes
seiferteric
pushed a commit
that referenced
this pull request
Jan 14, 2021
This update brings in the following commits. 86c1108 Enable arm architecture to build in addition to amd64 (#37) 4acb2c3 fix bugs and enhance Transformer (#35) 49e5a22 ygot related enhancements and fixes (#34) 51224de Fix ietf yang search path for cvl schema builds (#32) 3c6cdb3 CVL Changes #8: 'must' and 'when' expression evaluation (#31) dabf231 CVL Changes #7: 'leafref' evaluation (#28) 6f9535f CVL Changes #6: Customized Xpath Engine integration (#27) 5e2466b DB-Layer fixes/enhancements (#26) 9a27302 CVL Changes #4: Implementation of new CVL APIs (#22) dbf1093 Translib support for authorization, yang versioning and Delete flag (#21) 80f369e CVL Changes #5: YParser enhancement (#23) 904ce18 CVL Changes #3: Multi-db instance support (#20) 9d24a34 CVL Changes #2: YValidator infra changes for evaluating xpath expression (#19) f3fc40f CVL Changes #1: Initial CVL code reorganization and common infra changes (#18) 4922601 Bulk and RPC API support in translib (#16) 1d730df RFC7895 yang module library implementation (#15)
seiferteric
pushed a commit
that referenced
this pull request
Jan 14, 2021
…ebian (sonic-net#6114) Sonic devices advertise meaningful system description along with Debian package information. before the fix: ------------- admin@sonic:~$ show lldp neighbors ------------------------------------------------------------------------------- LLDP neighbors: ------------------------------------------------------------------------------- Interface: Ethernet0, via: LLDP, RID: 3, Time: 0 day, 16:36:30 SysName: sonic SysDescr: Debian GNU/Linux 9 (stretch) Linux 4.9.0-11-2-amd64 #1 SMP Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64 ------------------------------------------------------------------------------- After the fix: root@sonic:~# show lldp neighbors Ethernet16 ------------------------------------------------------------------------------- LLDP neighbors: ------------------------------------------------------------------------------- Interface: Ethernet16, via: LLDP, RID: 10, Time: 0 day, 00:01:00 SysName: sonic SysDescr: SONiC Software Version: SONiC.sonic_upstream_1.0_daily_201130_1501_62-dirty-20201130.203529 - HwSku: Accton-AS7816-64X - Distribution: Debian 10.6 - Kernel: 4.19.0-9-2-amd64 ------------------------------------------------------------------------------- Signed-off-by: sudhanshukumar22 <sudhanshu.kumar@broadcom.com>
seiferteric
pushed a commit
that referenced
this pull request
Jan 24, 2022
Allow mellanox platform to build and successfully switch packets in Debian 11 Upgraded * Mellanox SDK * Mellanox Hardware Management * Mellanox Firmware * Mellanox Kernel Patches Adjusted build system to support host system running bullseye and dockers running buster.
seiferteric
pushed a commit
that referenced
this pull request
Jan 24, 2022
* Make neccesary changed to mellanox platform code to build on Debian 11 * Revert use of backported kernel to build mft and elect to only build kernel module under bullseye
seiferteric
pushed a commit
that referenced
this pull request
Jan 24, 2022
Submodule update for sonic-linkmgrd Incorporates: c11a576 (2021-11-22 09:38:46) [ci]: show code coverage in azure pipeline (#4) 4ceb01d (2021-11-18 20:24:20) Fix MUX toggling issue (#1) d640527 (2021-11-12 22:31:44) [ci]: fix artifact download b9f247d (2021-11-12 22:31:44) [ci]: use native arm64/armhf build 3059122 (2021-09-27 11:32:23) [linkgrd] Add Missing Apache License Header
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Initial changes on sonic-buildimage for having sonic-mgmt-framework(for PoC) as submodule and dockers started automatically. The docker has supervisor and runs rest_server on port 80.