* [systemd-generator]: Fix the code to make sure that dependencies
of host services are generated correctly for multi-asic platforms.
Add code to make sure that systemd timer files are also modified
to add the correct service dependency for multi-asic platforms.
Signed-off-by: SuvarnaMeenakshi <sumeenak@microsoft.com>
* [systemd-generator]: Minor fix, remove debug code and
remove unused variable.
* Update to sonic_cfggen and utilities to populate the (pci) device id in the "asic_id" field in the DEVICE_METADATA. This Id is parsed from the file "asic.conf" file in the device/<platform> dir. The format of entries are eg: for a 2 ASIC platform.
DEV_ID_ASIC_0=03:00.0
DEV_ID_ASIC_1=04:00.0
Going forward will use this device id as the asic instance ID passed to syncd/sai while doing create_switch. Current support is limited, supports only one TD2 platform.
Make sure db_migrator is run after all config are loaded during (#926)
Vnet alias mapping (#924)
Changes to make lldp show command for multi-npu platforms. (#914)
[Mellanox] Fix thermal control issue: use natural sort for fan
status and thermal status (#836)
[Mellanox] add document for thermal control related cli (#832)
[aclorch] Add support for creating ingress and egress MIRROR tables
concurrently (#1286)
[proxy_arp] Implement proxy ARP feature (#1302)
Fix LAG member test case (#1304)
[orchagent] Set default MTU for the underlay loopback interface (#1299)
* The following changes for multi-npu platforms are done
- Set the type in device_metadata for asic configuration to be same as host
- Set the admin-status of internal bgp sessions as up
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
[201911][show] Fix abbreviations for 'show ip bgp ...' commands (#909)
Changes to support acl-loader and mirror-session config commands for
multi-npu platforms. (#908)
Changes to commands config reload/load-minigraph (#919)
Stop/Start restapi server upon config reload (#911)
[config] Add 'interface transceiver' subgroup with 'lpmode' and
'reset' subcommands (#904)
* Moved utility functions for multi-npu platforms from
sonic-utilities config/main.py to here so that they can be used
any module
* Fix the issue with test run during compilation with acl-uploader
PR#908 of sonic-utilities.
* Fix get_num_npu as it was retuning string and not int
* Address Review Comments
* Address Review Comments
* Changes for LLDP for Multi NPU Platoforms:-
a) Enable LLDP for Host namespace for Management Port
b) Make sure Management IP is avaliable in per asic namespace
needed for LLDP Chassis configuration
c) Make sure chassis mac-address is correct in per asic namespace
d) Do not run lldp on eth0 of per asic namespace and avoid chassis
configuration for same
e) Use Linux hostname instead from Device Metadata for lldp chassis
configuration since in multi-npu platforms device metadata hostname
will be differnt
Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
* Address Review Comment with following changes:
a) Use Device Metadata hostname even in per namespace conatiner.
updated minigraph parsing for same to have hostname as system
hostname and add new key for asic name
b) Minigraph changes to have MGMT_INTERFACE Key in per asic/namespace
config also as needed for LLDP for setting chassis management IP.
Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
* Address Review Comments
* [sonic-buildimage] updated minigraph for ACL Table data and ACL Interface
binding update for multu-npu platform based on subrole as "Frontend" or
"Backend". For backend npu no ACL table is associated. For frontend npu
only front-panel interface are associated.
Updated with test case and fix typo in sample-mingraph for npu
Address Review comments
Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
* Fixed the logic as per preview comment. Interface Filter logic
only applies to Everflow/Mirror tables.
* Address Review Comments.
Reverted Add 'interface transceiver' subgroup with 'lpmode' and 'reset'
subcommands (#904) as it dependent of #903 which is not marked to
cherry-pick for 201911. Need to add that before we can use this.
* Multi DB with namespace support, Introducing the database_global.json file
for supporting accessing DB's in other namespaces for service running in
linux host
* Updates based on comments
* Adding the j2 templates for database_config and database_global files.
* Updating to retrieve the redis DIR's to be mounted from database_global.json file.
* Additional check to see if asic.conf file exists before sourcing it.
* Updates based on PR comments discussion.
* Review comments update
* Updates to the argument "-n" for namespace used in both context of parsing minigraph and multi DB access.
* Update with the attribute "persistence_for_warm_boot" that was added to database_config.json file earlier.
* Removing the database_config.json file to avioid confusion in future.
We use the database_config.json.j2 file to generate database_config.json files dynamically.
* Update the comments for sudo usage in docker_image_ctrl.j2
* Update with the new logic in PING PONG tests using sonic-db-cli. With this we wait till the
PONG response is received when redis server is up.
* Similar changes in swss and syncd scripts for the PING tests with sonic-db-cli
* Updated with a missing , in the database_config.json.j2 file, Do pip install of j2cli in docker-base-buster.
[Vnet] Fix NameError for 'swsssdk' and align output (#902)
[config] Add 'interface transceiver' subgroup with 'lpmode' and 'reset' subcommands (#904)
Improved route_check tool and adopt to 20191130 image. (#898)
Dynamic threshold setting changed to 0 and WRED profile green min threshold set to 250000 for Tomahawk devices
Changed the dynamic threshold settings in pg_profile_lookup.ini
Added a macro for WRED profiles in qos.json.j2 for Tomahawk devices
Necessary changes made in qos.config.j2 to use the macro if present
Signed-off-by: Neetha John <nejo@microsoft.com>
[configdb.py]: Allow deletion of entire table from mod_config API. (#61)
[MultiDB] mimic redis-dump-load , adding sonic_db_dump_load.py and so…
[MultiDB] add sonic-db-cli PING all instances support (#65)
Fix sonic-db-cli script to be compatible with python3 and python2.7 (#66)
Namespace support in SonicV2Connector (#63)
[Multiasic]: Add calculation of interface index for backplane interfa…
- Changes to minigraph.py to parse minigraph.xml of a multi asic platform
- Changes to portconfig.py to parse additional column "asic_port_name" in
port_config.ini
- Add a new option -n to sonic-cfggen for multi asic platforms
- Add unit tests for config generation for multi asic platforms
Signed-off-by: SuvarnaMeenakshi <sumeenak@microsoft.com>
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
* [dhcpmon] Filter DHCP O/A Messages of Neighboring Vlans
This code fixes a bug where two or more vlans exist. Cross contamination
happens for DHCP packets Offer/Ack when received on shared northbound links.
The code filters out those packet based on dst IP equal Vlan loopback IP.
signed-off-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
[Vxlan] : adding show vnet/vxlan cmds (#880)
[show][bgp] Use only 'show ip bgp' as the base and use bgp_frr_v4 file
for FRR routing stack (#884)
[fast reboot] set a fast-reboot DB flag (#887)
[show] Add 'ip/ipv6 bgp network' commands (#888)
[routeorch] Handle the empty "nexthop" field for backward compatibility (#1263)
[vnet] Set MTU for the VNET bridge RIF in BITMAP implementation (#1271)
[vnet] Verify if BITMAP route exists before creating new one to avoid
dublication (#1272)
The one big bgp configuration template was splitted into chunks.
Currently we have three types of bgp neighbor peers:
general bgp peers. They are represented by CONFIG_DB::BGP_NEIGHBOR table entries
dynamic bgp peers. They are represented by CONFIG_DB::BGP_PEER_RANGE table entries
monitors bgp peers. They are represented by CONFIG_DB::BGP_MONITORS table entries
This PR introduces three templates for each peer type:
bgp policies: represent policieas that will be applied to the bgp peer-group (ip prefix-lists, route-maps, etc)
bgp peer-group: represent bgp peer group which has common configuration for the bgp peer type and uses bgp routing policy from the previous item
bgp peer-group instance: represent bgp configuration, which will be used to instatiate a bgp peer-group for the bgp peer-type. Usually this one is simple, consist of the referral to the bgp peer-group, bgp peer description and bgp peer ip address.
This PR redefined constant.yml file. Now this file has a setting for to use or don't use bgp_neighbor metadata. This file has more parameters for now, which are not used. They will be used in the next iteration of bgpcfgd.
Currently all tests have been disabled. I'm going to create next PR with the tests right after this PR is merged.
I'm going to introduce better bgpcfgd in a short time. It will include support of dynamic changes for the templates.
FIX:: #4231
[xcvrd] Extend xcvrd with SFP error event handling (#52)
[thermal fix] 1. Catch exception for each update iteration; 2. add
unit test (#51)
Add thermal control daemon to monitor FAN and thermal status and run
thermal policy (#49
Do not set PG to Buffer porfile mapping again if already exist. (#1261)
[sub intf] Use m_lag_id to be the parent port object id when parent port
is LAG (#1235)
* Fix bugs - "show run acl/interfaces" returns traceback when no ACL_RULE/INTERFACE is present in configuration
- Change logic in main to take data only if the var_json appears in DB.
- Add unit testing for bug fix & fix comments
Signed-off-by: Noa Or <noaor@mellanox.com>
- This commit fixes the issue #4021 (Sensord not able to start up on
both master and 201911 branches)
- Add the new patch file for "lm-sensors" to perform dh_installinit to
include sensord.init in the packed deb. So that the missing init
script file for 'sensord' will be included in the created 'sensord'
deb.
Signed-off-by: Charlie Chen <charlie_chen@edge-core.com>
[fwutil]: Use overlay driver when mounting next image filesystem (#825)
Fix for adding L3 interface to Vlan group (#826)Fix for adding L3 interface to Vlan group (#826)
[db_migrator]Do DB migration for buffer pool size change on Mellanox platform (#833)
explicitly specify command with underscores (#846)
[intfutil] set speed to 0 when interface speed is not available (#839)
maintains backward compatibility to search original x509 location
when telemetry table does not have certs
Signed-off-by: Guohan Lu <lguohan@gmail.com>
Brief:
The community code for has been updated, which mismatched with the existing sonic-mgmt-framework. Hence it broke the build.
Submodule-PR: #43
Details:
The SONiC mgmt Framework, pulls down the community modules in two steps.
Pull the existing; This does a transparent compile too.
Then checkout the specific commit-id for each and do the final compile.
The community code change broke in the compilation phase of step-1.
Fix: For the two affected modules, do download only.
Proper fix:
As part of the next phase of changes, the mgmt-framework is moving go-submodule mode, which will ensure the download happens for the assigned commit-ids only.
e.g. Refer go.mod in sonic-telemetry
Multi-Db changes for NAT feature. (#1202)
[cfgmgr] clear loopback and vrf in kernel if not warmstart (#1141)
upon cold reboot, skip remove mgmt vrf table from the kernel (#1214)
Multi-Db changes for NAT feature. (#1202)
[cfgmgr] clear loopback and vrf in kernel if not warmstart (#1141)
upon cold reboot, skip remove mgmt vrf table from the kernel (#1214)
This patch upgrade the kernel from version
4.9.0-9-2 (4.9.168-1+deb9u3) to 4.9.0-11-2 (4.9.189-3+deb9u2)
Co-authored-by: rajendra-dendukuri <47423477+rajendra-dendukuri@users.noreply.github.com>
Enable m_isCombinedMirrorV6Table for BFN platform (#1212)
[vnet]: Update VNET route table size to 40K for BITMAP implementation (#1132)
Default action for Egress ACL Table not poulated. (#1208)
Add/Del lag_name_map item according to lag adding and removing (#1124)
Increase ip2me CIR/CBR for faster in-band file transfers (#1000)
If sonic-cfggen is passed the -m argument (to load the minigraph file) along with one or more -j <json_file> arguments, load the JSON files before loading the minigraph file.
This ensures that the init_cfg.json file is loaded before the minigraph, therefore the minigraph can override any default configuration options specified in init_cfg.json. Currently, the behavior is reversed.
Note: This is not an issue if loading loading multiple JSON files, because sonic-cfggen loads them in the left-to-right order they were specified on the command line, therefore providing flexibility for loading JSON files in a specific order. As long as init_cfg.json is specified before config_db.json, the values specified in config_db.json will take precedence.
Following PR have been CHerry-picked:
* [portsorch] fix wrong orchagent behaviour when LAG member gets
disabled
* [team sync/mgr] Add debug message before cleaning up LAGs
* Made Change to have Configurable option to enable/disable docker image
* [Submodule-Update] sonic-utilities .
Following PR has been merged tp 201911
* Platform Driver Development Framework (PDDF): Adding PDDF CLI utils
* [config] Add 'feature' subcommand
* [fwutil]: Command-line utility for interacting with platform components
* [show] Add subcommand to display the status of auto-restart feature
for each container
* [config] Add subcommand to configure the status of auto-restart
feature for each
container
* [Command Reference] Document CLI commands related to container
auto-restart feature
* [config/main.py] Modify reload() function to load configuration from
init_cfg.json
* Fix for dhcp_relay deletion on a VLAN
* [config] Check if service exists before start/stop/restart of service
* Multi-Db changes for NAT feature
* [reboot] make sure the reboot happens even if platform reboot failed
- What I did
Ported a fix from libteam master to our master.
Fixes#4070Fixes#3649
- How I did it
Applied patch jpirko/libteam@c723737 from upstream.
- How to verify it
Build image for your DUT and warm-reboot your DUT 10 times. Check that all PortChannels are up and no error messages in teamd.log
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.
*792: [neighbor advertiser] remove http endpoint access
*789: [fdbshow][nbrshow] Print interface OID in lieu of name if there is
no OID->interface name mapping
*788 [acl-loader] Use V6 EtherType for IPv6 ACL rule
*786 ipaddr module to ipaddress
*785 [dropconfig] Move prefix-handling from CLI to orchagent
*645 Changes in swss-utilities submodule to support NAT feature