SONiC is a heavy writer to /var/log partition, we noticed that this
behavior causes certain flash drive to become read-only over time.
To avoid this issue, we mount /var/log parition on these devices as
tmpfs.
- Mount /var/log as tmpfs
- /var/log default size is 128M
- Adjust size according to existing var-log.ext4 file size.
- Adjust size to between 5% to 10% of total memory size.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* Updated Makefile infrastructure to build debug images.
As a sample, platform/broadcom/docker-orchagent-brcm.mk is updated to add a docker-orchagent-brcm-dbg.gz target.
Now "BLDENV=stretch make target/docker-orchagent-brcm-dbg.gz" will build the debug image.
This debug image can be used in any linux box to inspect core file. If your module's external dependency can be suitably mocked, you my even manually run it inside.
"docker run -it --entrypoint=/bin/bash e47a8fb8ed38"
You may map the core file path to this docker run.
* Dropped the regular binary using DBG_PACKAGES and a small name change to help readability.
* Tweaked the changes to retain the existing behavior w.r.t INSTALL_DEBUG_TOOLS=y.
When this change ('building debug docker image transparently') is extended to all dockers, this flag would become redundant. Yet, there can be some test based use cases that rely on this flag.
Until after all the dockers gets their debug images by default and we switch all use cases of this flag to use the newly built debug images, we need to maintain the existing behavior.
After warm reboot is done, we need to disable warm reboot flag and
tear down anything setup for warm reboot and persisted across.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
sonic-sairedis:
e8cb879 Make object list deterministic when iterating (#438)
5486f97 Ignore ACL_COUNTER bytes and packets during comparison logic (#443)
b138ff9 Notify OA about exception and process only restart query events (#437)
0974a43 Set MTU value on created tap device for virtual switch (#436)
e2f50e8 Increase eth buffer size to 16k for virtual switch (#435)
79fb388 [bfn] Ged rid of ld_preload. Link against libsai only (#429)
2e47b78 Remove MAC alignment WA for Mellanox platforms. (#430)
e1354fe Add pre match to comparison logic and unittests (#423)
18a5ebb Drop FDB notifications if they contain invalid OIDs (#428)
sonic-swss-common:
8af58ad sonic-swss-common: Add vxlan macros to schema (#269)
76837bf Make class Select support batch read from selectables (#270)
4cf643e Add multiple fields hdel support (#267)
a710529 Update PFC_WD table name in CONFIG_DB (#266)
3c452c1 Update README.md (#268)
sonic-swss:
e329dbd Survive pfc watchdog storm action across warm-reboot (#794)
sonic-utilities:
6ee0aea (HEAD, origin/master, origin/HEAD) [config]: Change the order of interface commands (#504)
5ae30d2 [show vlan brief] Support 'alias' interface naming mode (#497)
bafebf9 Update neighbor advertiser (#498)
fa90083 [clear/main.py]: clear ndp command. (#450)
65f69e4 [show interface neighbor expected] Support 'alias' interface naming mode (#495)
aae39e7 updated show ipv6 interface for alias mode (#493)
170fed9 [warm-reboot] initialize warm reboot state table before warm rebooting (#492)
06cd99f Allow config shutdown and startup operations on valid PortChannel interface names (#474)
98cdebb [show ip interface] Add support for 'alias' interface naming mode (#486)
5f1de81 [show] Add serial numbers/uptime/hwinfo to 'show version' output (#488)
e78a866 [route_check] Move scripts under scripts/ directory, add to setup.py (#489)
d347527 Change PFC watchdog CONFIG_DB table name from PFC_WD_TABLE to PFC_WD (#475)
Signed-off-by: Wenda Ni <wenni@microsoft.com>
There are some platforms with less powerful CPU/hard-drive could take
longer to get ready for BGP. For these platforms, 240 seconds would be
a safer threshold.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
When adding a lag member dynamically after system boots up, teamd
port priv change handler could re-entrant itself and causing adding
operation to fail.
While handling PORT_CHANGE event, teamd_per_port.c port priv change
handler was called, it will then call runner_lacp to add port to lag,
the later causes IFINFO_CHANGE to be notified and calls the priv change
handler again, this re-entrance would cause runner_lacp port_added to
be called again and messes up with the previous adding sequence. Then
fails the lag member adding operation.
Prevent per port priv change handler re-entrance solves the problem.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* [vm build] force Linux to drop cache before calling kvm
KVM need to allocate 2G memory for this build. The system memory might
be occupied by cache at the moment and doesn't have 2G chunk to give
out. Forcing Kernel to drop cache to boost the chance of getting 2G
memory.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
* [make] add option to enable/disable VS build memory preparation
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
Race condition has been noticed after warm reboot: sometimes when
port_changed notification was received, the link message didn't
have the device name. Without device name, creating team port
would fail.
Registering to the interface information change notification, so
later when device name becomes available, retry creating team port.
Signed-off-by: Ying Xie <ying.xie@microsoft.com>