The race condition could happen like this:
When an interface is enslaved into the port channel immediately after
it is created, the order of creating the ifinfo and linking the ifinfo to
the port is not guaranteed.
Please check the patch commit message to get full details.
Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
* [warm reboot] save configuration after warm reboot
After warm reboot, save a copy of in memory database to config_db.json,
upgrade procedure might have removed config_db.json to force new image
to reload minigraph. However, reload minigraph is skipped during warm
reboot. Missing config_db.json would cause device to fault in next
non-upgrading cold/fast reboot.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* Update finalize-warmboot.sh
* backport new platform api to 201811, reboot cause part
* install new platform api on host
* 1. remove chassis's dependency on sonic_platform_daemon.
2. add some mellanox-specific hardware reboot causes.
3. fix typo in files/image_config/process-reboot-cause/process-reboot-cause.
* 1. add dependency of sonic_platform for base image
2. handle the case of reboot cause file not found
* adjust log message.
* [201811][sairedis][swss] advance sub modules head
Submodule src/sonic-sairedis 18ad5f9..4c75b7f:
> Fixed conditional operator. (#487)
Submodule src/sonic-swss 1e99c93..cd12d48:
> [teamsyncd]: Add information for LAG membership changes (#982)
> Fix vlan incremental config and add vs test cases (#799)
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* [swss] include more swss changes
Submodule src/sonic-swss cd12d48..f44029d:
> [MirrorOrch]: Init the next hop ip with 0 instead of default constructor (#953)
> [AclOrch]: Fix the acl mirror counter doubled by inactive mirror and active again (#952)
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* Subscribe to both ConfigDB and AppDB
to get notifications to apply LLDP port config
* the operstate file is not consistent
Removing this since it is not serving any purpose
* Remove check for PortInitDone and PortConfigDone
This is not prteset in Config DB
* Remove checking State DB for port creation
* Check for key to be present before fetching it
* Addressing review comments
Integrating official Mellanox SDK/FW release as a pre condition for getting new Mellanox SAI release with hash changes (inner field) and 3k VXLAN scale. As well as bug fix for Spectrum LP mode.
Signed-off-by: Mykola Faryma <mykolaf@mellanox.com>
In case of going from previous iteration of SONiC, and the last reboot
was hardware, REBOOT_CAUSE_FILE may not be present and the service may
throw an error.
* fix name conflict between sonic_platfrom package and sonic_platform.py
* update sonic-utility submodule to pickup lastest fix
* Revert "update sonic-utility submodule to pickup lastest fix"
This reverts commit f66aa99738.
* update sonic-utility sub module
- Make sure that migrated DB contents persisted for next boot
- Make sure that db saved after warm reboot.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* [dell/Z9100] Fix for optics not detected in fanout mode
This commit fixes the issue of optics not detected
error while running sfputil show eeprom command. The root
casuse was the value of port index from port_config.ini for
fan out scenario. The port index should be starting from 0
and not 1. Platform cpld registers are assuming the port
numbers to start from 0 (lowermost bit), sfputils.py uses this
port number in get_presence function. Since the indexing passed
is wrong the optics was not detected and gave SFP EEPROM not
detected message.
Signed-off-by: Harish Venkatraman <Harish_Venkatraman@Dell.com>
* [dell/z9100] Fix for optics not detected in fanout mode
This commit fixes the issue of optics not detected error
while running sfputil show eeprom command. The root cause
was wrong port_index in fan out scenarios. Earlier fix of
changing the port_config.ini is reverted and changes made
in z9100 platform specific sfputil.py file. The port number
is decrement and tested for both 100G and 50G fanout cases.
Tested for the following show commands and test was succesful
show interfaces status, show interfaces transceiver eeprom,
show interfaces transceiver lpmode, show interface tranceiver
presence.
Signed-off-by: Harish Venkatraman <Harish_Venkatraman@Dell.com>
Submodule src/sonic-platform-common 42119e1..5d7954e:
> [ChassisBase] Make reboot cause constant strings human-readable (#35)
> Add .gitignore file (#28)
> [sonic_platform_base] Add sonic_sfp and sonic_eeprom to sonic_platform_base (#27)
> Enhance new platform API (#19)
> fix typo in platform API base class (#25)
Submodule src/sonic-swss 9cf7b01..1e99c93:
> Set timer only when interval changes. Not in each firing of the timer. (#945)
Submodule src/sonic-utilities ec1e93f..24958f1:
> [fast reboot] stop removing opennsl module before reboot (#560)
Submodule src/sonic-swss-common b472f6e..d6140fa:
> timerfd:read failure - Record in logs as error. (#295)
> do not abort when read timerfd return 0 and errno = 0 (#291)
> Add an assert to logger, which will log a message and abort. (#286)
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* fix the memory leak in on_pmpe. objects created via sx_api having convention new_<type_name> should be release explicitly via delete_<type_name>.
* avoid duplicate code.
* fix fast reboot compatibility
We should handle both cases for backward-compatible with 201803:
- fast-reboot
- SONIC_BOOT_TYPE=fast-reboot
* handle review comments
* add a comment that getBootType code snippet is shared between two files
- What I did
Configure sshd to close all SSH connetions after 15 minutes of inactivity.
- How I did it
Set ClientAliveInterval to 900 (900 seconds = 15 minutes) and ClientAliveCountMax to 0
in /etc/ssh/sshd_config using augtool in build_debian.sh. In the process, I refactored the existing augtool command for sshd_config so as to add comments and empty lines to file for readability.
- How to verify it
Log into device via management port. Wait 15 minutes without sending a keystroke -- you should be automatically logged out.
2) Install debug tools in every debug docker image
3) Install available debug symbols in debug docker image
4) Provide additional host/docker mapping for host dirs /src & /debug
4.1) The one-image will have source code under /src
4.2) /debug is mapped as rw. User can put his core file there and use this dir to
collect debug session logs too.
5) Build debug image using debug dockers
6) Source code is archived into /src of debug image
7) The welcome banner is extended to display these additional facilities in debug image.
Upgrade the version of rsyslog installed in Docker containers to the latest version available from jessie-backports repo (currently 8.23.0-2~bpo). Based off my change to the 201803 branch (#2709). This should eliminate some memory leaks and will prevent any regressions if moving from the 201803 branch to the 201811 branch.