diff --git a/device/arista/x86_64-arista_7280cr3_32p4/platform_env.conf b/device/arista/x86_64-arista_7280cr3_32p4/platform_env.conf index 283e1c0ce7..a6e93033fa 100644 --- a/device/arista/x86_64-arista_7280cr3_32p4/platform_env.conf +++ b/device/arista/x86_64-arista_7280cr3_32p4/platform_env.conf @@ -1 +1,2 @@ +SYNCD_SHM_SIZE=1gb usemsi=1 diff --git a/device/arista/x86_64-arista_7800r3_48cq2_lc/platform_env.conf b/device/arista/x86_64-arista_7800r3_48cq2_lc/platform_env.conf index 89102035fc..76c93ccf17 100644 --- a/device/arista/x86_64-arista_7800r3_48cq2_lc/platform_env.conf +++ b/device/arista/x86_64-arista_7800r3_48cq2_lc/platform_env.conf @@ -1,2 +1,3 @@ +SYNCD_SHM_SIZE=1gb usemsi=1 dmasize=512M diff --git a/device/arista/x86_64-arista_7800r3_48cqm2_lc/platform_env.conf b/device/arista/x86_64-arista_7800r3_48cqm2_lc/platform_env.conf index 89102035fc..76c93ccf17 100644 --- a/device/arista/x86_64-arista_7800r3_48cqm2_lc/platform_env.conf +++ b/device/arista/x86_64-arista_7800r3_48cqm2_lc/platform_env.conf @@ -1,2 +1,3 @@ +SYNCD_SHM_SIZE=1gb usemsi=1 dmasize=512M diff --git a/device/arista/x86_64-arista_7800r3a_36d2_lc/platform_env.conf b/device/arista/x86_64-arista_7800r3a_36d2_lc/platform_env.conf index 0f19ad3cad..9cce2f4dce 100644 --- a/device/arista/x86_64-arista_7800r3a_36d2_lc/platform_env.conf +++ b/device/arista/x86_64-arista_7800r3a_36d2_lc/platform_env.conf @@ -1,3 +1,4 @@ +SYNCD_SHM_SIZE=1gb usemsi=1 dmasize=64M macsec_enabled=1 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/0/config-ramon-1-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/0/config-ramon-1-0.bcm index e55bc4a4eb..4d84d93be1 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/0/config-ramon-1-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/0/config-ramon-1-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=1 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/1/config-ramon-1-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/1/config-ramon-1-1.bcm index 802109801f..8bbe2ff747 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/1/config-ramon-1-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/1/config-ramon-1-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=2 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/10/config-ramon-6-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/10/config-ramon-6-0.bcm index 372ea07d1c..9f155988cf 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/10/config-ramon-6-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/10/config-ramon-6-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=11 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/11/config-ramon-6-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/11/config-ramon-6-1.bcm index 3070800dbf..915ecc0777 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/11/config-ramon-6-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/11/config-ramon-6-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=12 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/12/config-ramon-7-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/12/config-ramon-7-0.bcm index 8f7297b771..131c55e93c 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/12/config-ramon-7-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/12/config-ramon-7-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=13 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/13/config-ramon-7-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/13/config-ramon-7-1.bcm index 219aaa4aea..1096803edd 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/13/config-ramon-7-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/13/config-ramon-7-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=14 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/14/config-ramon-8-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/14/config-ramon-8-0.bcm index ba21d010fa..455ae7eae6 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/14/config-ramon-8-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/14/config-ramon-8-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=15 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/15/config-ramon-8-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/15/config-ramon-8-1.bcm index 4e9aeef329..ad2580fc9b 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/15/config-ramon-8-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/15/config-ramon-8-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=16 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/2/config-ramon-2-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/2/config-ramon-2-0.bcm index 6a5423c5e1..21c7779166 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/2/config-ramon-2-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/2/config-ramon-2-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=3 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/3/config-ramon-2-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/3/config-ramon-2-1.bcm index a13d25a026..3509b6ef31 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/3/config-ramon-2-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/3/config-ramon-2-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=4 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/4/config-ramon-3-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/4/config-ramon-3-0.bcm index 449076477d..f0be45c4da 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/4/config-ramon-3-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/4/config-ramon-3-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=5 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/5/config-ramon-3-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/5/config-ramon-3-1.bcm index cd94ed157c..358f96344b 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/5/config-ramon-3-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/5/config-ramon-3-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=6 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/6/config-ramon-4-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/6/config-ramon-4-0.bcm index 017ac5ccd4..c42441dbcb 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/6/config-ramon-4-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/6/config-ramon-4-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=7 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/7/config-ramon-4-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/7/config-ramon-4-1.bcm index 679e3fa075..761e75cccd 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/7/config-ramon-4-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/7/config-ramon-4-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=8 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/8/config-ramon-5-0.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/8/config-ramon-5-0.bcm index 4adac068b8..524a2f4b30 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/8/config-ramon-5-0.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/8/config-ramon-5-0.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=9 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/9/config-ramon-5-1.bcm b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/9/config-ramon-5-1.bcm index 31834cddc4..289ffff958 100644 --- a/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/9/config-ramon-5-1.bcm +++ b/device/nokia/x86_64-nokia_ixr7250e_sup-r0/Nokia-IXR7250E-SUP-10/9/config-ramon-5-1.bcm @@ -2,7 +2,7 @@ appl_enable_intr_init.BCM8879X=0 appl_param_module_id.BCM8879X=10 bcm_linkscan_interval.BCM8879X=0 -bcm_stat_interval.BCM8879X=4000000 +bcm_stat_interval.BCM8879X=5000000 bist_enable.BCM8879X=0 core_clock_speed_khz.BCM8879X=1000000 custom_feature_access_only.BCM8879X=0 @@ -19,8 +19,8 @@ load_firmware.BCM8879X=0x102 mdio_output_delay_ext.BCM8879X=14 mdio_output_delay_int.BCM8879X=25 mem_cache_enable_parity.BCM8879X=1 -mm_intr_enable.BCM8879X=0 -mm_timeout_usec.BCM8879X=300000 +miim_intr_enable.BCM8879X=0 +miim_timeout_usec.BCM8879X=300000 polled_irq_delay.BCM8879X=100000 polled_irq_mode.BCM8879X=1 port_fec.BCM8879X=7 diff --git a/dockers/docker-base-bullseye/Dockerfile.j2 b/dockers/docker-base-bullseye/Dockerfile.j2 index bbf8603468..1fa7196ea6 100644 --- a/dockers/docker-base-bullseye/Dockerfile.j2 +++ b/dockers/docker-base-bullseye/Dockerfile.j2 @@ -83,6 +83,21 @@ RUN pip3 install supervisord-dependent-startup==1.4.0 RUN mkdir -p /var/log/supervisor /etc/supervisor/conf.d +# Install gcc, libc6-dev and python3-dev for compiling python-lzf +RUN apt-get -y install build-essential libc6-dev python3-dev + +# Install python-lzf +RUN pip3 install 'python-lzf==0.2.4' + +# Install rdbtools +RUN pip3 install 'rdbtools==0.1.15' + +# Uninstall gcc, libc6-dev and python3-dev for compiling python-lzf +RUN apt-get -y purge build-essential libc6-dev python3-dev + +# Uninstall unused dependencies +RUN apt autoremove -y --purge + RUN apt-get -y purge \ exim4 \ exim4-base \ diff --git a/dockers/docker-base-gnmi/Dockerfile.j2 b/dockers/docker-base-gnmi/Dockerfile.j2 new file mode 100644 index 0000000000..e1aecca7de --- /dev/null +++ b/dockers/docker-base-gnmi/Dockerfile.j2 @@ -0,0 +1,30 @@ +{% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %} +FROM docker-config-engine-bullseye-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}} + +ARG docker_container_name +ARG image_version + +## Make apt-get non-interactive +ENV DEBIAN_FRONTEND=noninteractive + +# Pass the image_version to container +ENV IMAGE_VERSION=$image_version + +RUN apt-get update + +{% if docker_base_gnmi_debs.strip() -%} +# Copy locally-built Debian package dependencies +{{ copy_files("debs/", docker_base_gnmi_debs.split(' '), "/debs/") }} + +# Install locally-built Debian packages and implicitly install their dependencies +{{ install_debian_packages(docker_base_gnmi_debs.split(' ')) }} +{%- endif %} + +RUN apt-get clean -y && \ + apt-get autoclean - && \ + apt-get autoremove -y && \ + rm -rf /debs + +COPY ["files/supervisor-proc-exit-listener", "/usr/bin"] + +ENTRYPOINT ["/usr/local/bin/supervisord"] diff --git a/dockers/docker-fpm-frr/frr/bgpd/templates/internal/peer-group.conf.j2 b/dockers/docker-fpm-frr/frr/bgpd/templates/internal/peer-group.conf.j2 index e29a4c9e2f..d2d2be87e7 100644 --- a/dockers/docker-fpm-frr/frr/bgpd/templates/internal/peer-group.conf.j2 +++ b/dockers/docker-fpm-frr/frr/bgpd/templates/internal/peer-group.conf.j2 @@ -14,6 +14,8 @@ neighbor INTERNAL_PEER_V4 allowas-in 1 neighbor INTERNAL_PEER_V4 route-map FROM_BGP_INTERNAL_PEER_V4 in neighbor INTERNAL_PEER_V4 route-map TO_BGP_INTERNAL_PEER_V4 out + neighbor INTERNAL_PEER_V4 send-community + neighbor INTERNAL_PEER_V4 ttl-security hops 1 exit-address-family {% if CONFIG_DB__DEVICE_METADATA['localhost']['switch_type'] == 'chassis-packet' %} neighbor INTERNAL_PEER_V6 update-source Loopback4096 @@ -26,6 +28,8 @@ neighbor INTERNAL_PEER_V6 allowas-in 1 neighbor INTERNAL_PEER_V6 route-map FROM_BGP_INTERNAL_PEER_V6 in neighbor INTERNAL_PEER_V6 route-map TO_BGP_INTERNAL_PEER_V6 out + neighbor INTERNAL_PEER_V6 send-community + neighbor INTERNAL_PEER_V6 ttl-security hops 1 exit-address-family ! ! end of template: bgpd/templates/internal/peer-group.conf.j2 diff --git a/dockers/docker-fpm-frr/frr/bgpd/templates/voq_chassis/peer-group.conf.j2 b/dockers/docker-fpm-frr/frr/bgpd/templates/voq_chassis/peer-group.conf.j2 index 44a49587d0..802aa15ca6 100644 --- a/dockers/docker-fpm-frr/frr/bgpd/templates/voq_chassis/peer-group.conf.j2 +++ b/dockers/docker-fpm-frr/frr/bgpd/templates/voq_chassis/peer-group.conf.j2 @@ -12,6 +12,7 @@ neighbor VOQ_CHASSIS_V4_PEER soft-reconfiguration inbound neighbor VOQ_CHASSIS_V4_PEER route-map FROM_VOQ_CHASSIS_V4_PEER in neighbor VOQ_CHASSIS_V4_PEER route-map TO_VOQ_CHASSIS_V4_PEER out + neighbor VOQ_CHASSIS_V4_PEER send-community exit-address-family address-family ipv6 {% if CONFIG_DB__DEVICE_METADATA['localhost']['type'] == 'ToRRouter' %} @@ -22,6 +23,7 @@ neighbor VOQ_CHASSIS_V6_PEER soft-reconfiguration inbound neighbor VOQ_CHASSIS_V6_PEER route-map FROM_VOQ_CHASSIS_V6_PEER in neighbor VOQ_CHASSIS_V6_PEER route-map TO_VOQ_CHASSIS_V6_PEER out + neighbor VOQ_CHASSIS_V6_PEER send-community exit-address-family ! ! end of template: bgpd/templates/voq_chassis/peer-group.conf.j2 diff --git a/dockers/docker-platform-monitor/Dockerfile.j2 b/dockers/docker-platform-monitor/Dockerfile.j2 index 1c6b484814..353cbe4566 100755 --- a/dockers/docker-platform-monitor/Dockerfile.j2 +++ b/dockers/docker-platform-monitor/Dockerfile.j2 @@ -35,8 +35,8 @@ RUN apt-get update && \ # doesn't ensure all dependencies are installed in the container. So here we # install any dependencies required by the Arista sonic_platform package. # TODO: eliminate the need to install these explicitly. -RUN pip3 install grpcio==1.39.0 \ - grpcio-tools==1.39.0 +RUN pip3 install grpcio==1.57.0 \ + grpcio-tools==1.57.0 # Barefoot platform vendors' sonic_platform packages import these Python libraries RUN pip3 install thrift==0.13.0 netifaces diff --git a/dockers/docker-sonic-gnmi/Dockerfile.j2 b/dockers/docker-sonic-gnmi/Dockerfile.j2 index 9624865202..b1631d9cee 100644 --- a/dockers/docker-sonic-gnmi/Dockerfile.j2 +++ b/dockers/docker-sonic-gnmi/Dockerfile.j2 @@ -1,5 +1,5 @@ {% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %} -FROM docker-config-engine-bullseye-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}} +FROM docker-base-gnmi-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}} ARG docker_container_name ARG image_version @@ -28,7 +28,6 @@ RUN apt-get clean -y && \ COPY ["start.sh", "gnmi-native.sh", "dialout.sh", "/usr/bin/"] COPY ["telemetry_vars.j2", "/usr/share/sonic/templates/"] COPY ["supervisord.conf", "/etc/supervisor/conf.d/"] -COPY ["files/supervisor-proc-exit-listener", "/usr/bin"] COPY ["critical_processes", "/etc/supervisor"] ENTRYPOINT ["/usr/local/bin/supervisord"] diff --git a/dockers/docker-sonic-telemetry/Dockerfile.j2 b/dockers/docker-sonic-telemetry/Dockerfile.j2 index 88aceca4c8..d86c7c2847 100644 --- a/dockers/docker-sonic-telemetry/Dockerfile.j2 +++ b/dockers/docker-sonic-telemetry/Dockerfile.j2 @@ -1,5 +1,5 @@ {% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %} -FROM docker-sonic-gnmi-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}} +FROM docker-base-gnmi-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}} ARG docker_container_name ARG image_version diff --git a/files/build/versions/dockers/docker-platform-monitor/versions-py3 b/files/build/versions/dockers/docker-platform-monitor/versions-py3 index 858ef36164..05dd39450b 100644 --- a/files/build/versions/dockers/docker-platform-monitor/versions-py3 +++ b/files/build/versions/dockers/docker-platform-monitor/versions-py3 @@ -1,8 +1,8 @@ attrs==20.3.0 certifi==2023.5.7 charset-normalizer==3.1.0 -grpcio==1.39.0 -grpcio-tools==1.39.0 +grpcio==1.57.0 +grpcio-tools==1.57.0 guacamole==0.9.2 idna==3.4 importlib-metadata==1.6.0 diff --git a/files/build_templates/docker_image_ctl.j2 b/files/build_templates/docker_image_ctl.j2 index 35d54dcce9..8eabcf08d8 100644 --- a/files/build_templates/docker_image_ctl.j2 +++ b/files/build_templates/docker_image_ctl.j2 @@ -191,6 +191,9 @@ function postStartAction() ip link add name ns-eth1"$NET_NS" type veth peer name eth1@"$NET_NS" ip link set dev eth1@"$NET_NS" master br1 ip link set dev eth1@"$NET_NS" up + # For chassis system where Linux bridge is used on supervisor for midplane communication + # assign alternate name as eth1-midplane for generic design + ip link property add dev br1 altname eth1-midplane else ip link add name ns-eth1"$NET_NS" link eth1-midplane type macvlan mode bridge fi diff --git a/files/image_config/copp/copp_cfg.j2 b/files/image_config/copp/copp_cfg.j2 index 08366e57f6..f3550677d7 100755 --- a/files/image_config/copp/copp_cfg.j2 +++ b/files/image_config/copp/copp_cfg.j2 @@ -34,8 +34,8 @@ "queue": "4", "meter_type":"packets", "mode":"sr_tcm", - "cir":"300", - "cbs":"300", + "cir":"100", + "cbs":"100", "red_action":"drop" }, "queue1_group1": { diff --git a/files/image_config/monit/container_checker b/files/image_config/monit/container_checker index f6be2cda9f..8ca86c0653 100755 --- a/files/image_config/monit/container_checker +++ b/files/image_config/monit/container_checker @@ -58,9 +58,9 @@ def get_expected_running_containers(): for container_name in feature_table.keys(): if feature_table[container_name]["state"] not in ["disabled", "always_disabled"]: if multi_asic.is_multi_asic(): - if feature_table[container_name].get("has_global_scope", "True") == "True": + if feature_table[container_name]["has_global_scope"] == "True": expected_running_containers.add(container_name) - if feature_table[container_name].get("has_per_asic_scope", "False") == "True": + if feature_table[container_name]["has_per_asic_scope"] == "True": num_asics = multi_asic.get_num_asics() for asic_id in range(num_asics): if asic_id in asics_id_presence or container_name in run_all_instance_list: @@ -69,9 +69,9 @@ def get_expected_running_containers(): expected_running_containers.add(container_name) if feature_table[container_name]["state"] == 'always_enabled': if multi_asic.is_multi_asic(): - if feature_table[container_name].get("has_global_scope", "True") == "True": + if feature_table[container_name]["has_global_scope"] == "True": always_running_containers.add(container_name) - if feature_table[container_name].get("has_per_asic_scope", "False") == "True": + if feature_table[container_name]["has_per_asic_scope"] == "True": num_asics = multi_asic.get_num_asics() for asic_id in range(num_asics): if asic_id in asics_id_presence or container_name in run_all_instance_list: diff --git a/installer/default_platform.conf b/installer/default_platform.conf index 35e4fd41df..fca7754476 100755 --- a/installer/default_platform.conf +++ b/installer/default_platform.conf @@ -264,6 +264,14 @@ demo_install_grub() exit 1 } + # Create a blank environment block file. + if [ ! -f "$onie_initrd_tmp/$demo_mnt/grub/grubenv" ]; then + grub-editenv "$onie_initrd_tmp/$demo_mnt/grub/grubenv" create || { + echo "ERROR: grub-editenv failed on: $blk_dev" + exit 1 + } + fi + if [ "$demo_type" = "DIAG" ] ; then # Install GRUB in the partition also. This allows for # chainloading the DIAG image from another OS. @@ -346,6 +354,14 @@ demo_install_uefi_grub() } rm -f $grub_install_log + # Create a blank environment block file. + if [ ! -f "$demo_mnt/grub/grubenv" ]; then + grub-editenv "$demo_mnt/grub/grubenv" create || { + echo "ERROR: grub-editenv failed on: $blk_dev" + exit 1 + } + fi + # Configure EFI NVRAM Boot variables. --create also sets the # new boot number as active. grub=$(find /boot/efi/EFI/$demo_volume_label/ -name grub*.efi -exec basename {} \;) diff --git a/platform/checkout/cisco-8000.ini b/platform/checkout/cisco-8000.ini index 7d99aba1f2..96df1d1685 100644 --- a/platform/checkout/cisco-8000.ini +++ b/platform/checkout/cisco-8000.ini @@ -1,3 +1,3 @@ [module] repo=git@github.com:Cisco-8000-sonic/platform-cisco-8000.git -ref=202305.1.0.1 +ref=202305.1.0.2 diff --git a/platform/mellanox/mlnx-fw-upgrade.j2 b/platform/mellanox/mlnx-fw-upgrade.j2 index 9a73d78eb8..6a03e2ab0f 100755 --- a/platform/mellanox/mlnx-fw-upgrade.j2 +++ b/platform/mellanox/mlnx-fw-upgrade.j2 @@ -30,6 +30,7 @@ declare -r VERBOSE_MIN="${VERBOSE_ERROR}" declare -r EXIT_SUCCESS="0" declare -r EXIT_FAILURE="1" +declare -r FW_ALREADY_UPDATED_FAILURE="2" declare -r QUERY_CMD="mlxfwmanager --query" declare -r LIST_CONTENT_CMD="mlxfwmanager --list-content" @@ -233,6 +234,22 @@ function RunFwUpdateCmd() { fi ERROR_CODE="$?" + + if [[ "${ERROR_CODE}" == "${FW_ALREADY_UPDATED_FAILURE}" ]]; then + LogInfo "FW reactivation is required. Reactivating and updating FW ..." + local -r _MST_DEVICE="$(GetMstDevice)" + local -r _CMD="flint -d ${_MST_DEVICE} ir" + output=$(eval "${_CMD}") + + if [[ "${VERBOSE_LEVEL}" -eq "${VERBOSE_MAX}" ]]; then + output=$(eval "${COMMAND}") + else + output=$(eval "${COMMAND}") >/dev/null 2>&1 + fi + fi + + ERROR_CODE="$?" + if [[ "${ERROR_CODE}" != "${EXIT_SUCCESS}" ]]; then failure_msg="${output#*Fail : }" ExitFailure "FW Update command: ${COMMAND} failed with error: ${failure_msg}" diff --git a/rules/config b/rules/config index 342a9425ee..00249a9661 100644 --- a/rules/config +++ b/rules/config @@ -124,11 +124,9 @@ SONIC_DPKG_CACHE_SOURCE ?= /var/cache/sonic/artifacts # Default VS build memory preparation DEFAULT_VS_PREPARE_MEM = yes -# INCLUDE_SYSTEM_GNMI - build docker-sonic-gnmi for system gnmi support -INCLUDE_SYSTEM_GNMI = y # INCLUDE_SYSTEM_TELEMETRY - build docker-sonic-telemetry for system telemetry support -INCLUDE_SYSTEM_TELEMETRY = n +INCLUDE_SYSTEM_TELEMETRY = y # INCLUDE_ICCPD - build docker-iccpd for mclag support INCLUDE_ICCPD = n @@ -143,7 +141,7 @@ ENABLE_SFLOW_DROPMON = n INCLUDE_MGMT_FRAMEWORK = y # ENABLE_HOST_SERVICE_ON_START - enable sonic-host-server for mgmt-framework and/or -# gnmi containers to access host functionality by default +# telemetry containers to access host functionality by default ENABLE_HOST_SERVICE_ON_START = y # INCLUDE_RESTAPI - build docker-sonic-restapi for configuring the switch using REST APIs @@ -166,6 +164,7 @@ ENABLE_AUTO_TECH_SUPPORT = y # ENABLE_TRANSLIB_WRITE = y # ENABLE_NATIVE_WRITE - Enable native write/config operations via the gNMI interface. +# Uncomment to enable: ENABLE_NATIVE_WRITE = y # INCLUDE_MACSEC - build docker-macsec for macsec support diff --git a/rules/docker-base-gnmi.dep b/rules/docker-base-gnmi.dep new file mode 100644 index 0000000000..dae333ffc1 --- /dev/null +++ b/rules/docker-base-gnmi.dep @@ -0,0 +1,11 @@ + +DPATH := $($(DOCKER_BASE_GNMI)_PATH) +DEP_FILES := $(SONIC_COMMON_FILES_LIST) rules/docker-base-gnmi.mk rules/docker-base-gnmi.dep +DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST) +DEP_FILES += $(shell git ls-files $(DPATH)) + +$(DOCKER_BASE_GNMI)_CACHE_MODE := GIT_CONTENT_SHA +$(DOCKER_BASE_GNMI)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST) +$(DOCKER_BASE_GNMI)_DEP_FILES := $(DEP_FILES) + +$(eval $(call add_dbg_docker,$(DOCKER_BASE_GNMI),$(DOCKER_BASE_GNMI_DBG))) diff --git a/rules/docker-base-gnmi.mk b/rules/docker-base-gnmi.mk new file mode 100644 index 0000000000..6c8c67df90 --- /dev/null +++ b/rules/docker-base-gnmi.mk @@ -0,0 +1,20 @@ +# docker image for GNMI base + +DOCKER_BASE_GNMI_STEM = docker-base-gnmi +DOCKER_BASE_GNMI = $(DOCKER_BASE_GNMI_STEM).gz +DOCKER_BASE_GNMI_DBG = $(DOCKER_BASE_GNMI_STEM)-$(DBG_IMAGE_MARK).gz + +$(DOCKER_BASE_GNMI)_PATH = $(DOCKERS_PATH)/$(DOCKER_BASE_GNMI_STEM) + +$(DOCKER_BASE_GNMI)_DEPENDS += $(SONIC_MGMT_COMMON) +$(DOCKER_BASE_GNMI)_DEPENDS += $(SONIC_TELEMETRY) +$(DOCKER_BASE_GNMI)_DBG_DEPENDS = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_DEPENDS) + +$(DOCKER_BASE_GNMI)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_BULLSEYE) + +$(DOCKER_BASE_GNMI)_VERSION = 1.0.0 +$(DOCKER_BASE_GNMI)_PACKAGE_NAME = base-gnmi + +$(DOCKER_BASE_GNMI)_DBG_IMAGE_PACKAGES = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_IMAGE_PACKAGES) + +SONIC_DOCKER_IMAGES += $(DOCKER_BASE_GNMI) diff --git a/rules/docker-gnmi.mk b/rules/docker-gnmi.mk index f0b47676da..87c1972230 100644 --- a/rules/docker-gnmi.mk +++ b/rules/docker-gnmi.mk @@ -6,16 +6,14 @@ DOCKER_GNMI_DBG = $(DOCKER_GNMI_STEM)-$(DBG_IMAGE_MARK).gz $(DOCKER_GNMI)_PATH = $(DOCKERS_PATH)/$(DOCKER_GNMI_STEM) -$(DOCKER_GNMI)_DEPENDS += $(SONIC_MGMT_COMMON) -$(DOCKER_GNMI)_DEPENDS += $(SONIC_TELEMETRY) -$(DOCKER_GNMI)_DBG_DEPENDS = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_DEPENDS) +$(DOCKER_GNMI)_DBG_DEPENDS = $($(DOCKER_BASE_GNMI)_DBG_DEPENDS) -$(DOCKER_GNMI)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_BULLSEYE) +$(DOCKER_GNMI)_LOAD_DOCKERS += $(DOCKER_BASE_GNMI) $(DOCKER_GNMI)_VERSION = 1.0.0 $(DOCKER_GNMI)_PACKAGE_NAME = gnmi -$(DOCKER_GNMI)_DBG_IMAGE_PACKAGES = $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_IMAGE_PACKAGES) +$(DOCKER_GNMI)_DBG_IMAGE_PACKAGES = $($(DOCKER_BASE_GNMI)_DBG_IMAGE_PACKAGES) SONIC_DOCKER_IMAGES += $(DOCKER_GNMI) ifeq ($(INCLUDE_SYSTEM_GNMI), y) diff --git a/rules/docker-telemetry.mk b/rules/docker-telemetry.mk index 1f9b27d220..746efcad7b 100644 --- a/rules/docker-telemetry.mk +++ b/rules/docker-telemetry.mk @@ -6,14 +6,14 @@ DOCKER_TELEMETRY_DBG = $(DOCKER_TELEMETRY_STEM)-$(DBG_IMAGE_MARK).gz $(DOCKER_TELEMETRY)_PATH = $(DOCKERS_PATH)/$(DOCKER_TELEMETRY_STEM) -$(DOCKER_TELEMETRY)_DBG_DEPENDS = $($(DOCKER_GNMI)_DBG_DEPENDS) +$(DOCKER_TELEMETRY)_DBG_DEPENDS = $($(DOCKER_BASE_GNMI)_DBG_DEPENDS) -$(DOCKER_TELEMETRY)_LOAD_DOCKERS += $(DOCKER_GNMI) +$(DOCKER_TELEMETRY)_LOAD_DOCKERS += $(DOCKER_BASE_GNMI) $(DOCKER_TELEMETRY)_VERSION = 1.0.0 $(DOCKER_TELEMETRY)_PACKAGE_NAME = telemetry -$(DOCKER_TELEMETRY)_DBG_IMAGE_PACKAGES = $($(DOCKER_GNMI)_DBG_IMAGE_PACKAGES) +$(DOCKER_TELEMETRY)_DBG_IMAGE_PACKAGES = $($(DOCKER_BASE_GNMI)_DBG_IMAGE_PACKAGES) SONIC_DOCKER_IMAGES += $(DOCKER_TELEMETRY) ifeq ($(INCLUDE_SYSTEM_TELEMETRY), y) @@ -29,6 +29,9 @@ $(DOCKER_TELEMETRY)_CONTAINER_NAME = telemetry $(DOCKER_TELEMETRY)_RUN_OPT += --privileged -t $(DOCKER_TELEMETRY)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro $(DOCKER_TELEMETRY)_RUN_OPT += -v /etc/timezone:/etc/timezone:ro +ifneq ($(INCLUDE_SYSTEM_GNMI), y) +$(DOCKER_TELEMETRY)_RUN_OPT += -v /var/run/dbus:/var/run/dbus:rw +endif $(DOCKER_TELEMETRY)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT) $(DOCKER_TELEMETRY)_BASE_IMAGE_FILES += monit_telemetry:/etc/monit/conf.d diff --git a/sonic-slave-bullseye/Dockerfile.j2 b/sonic-slave-bullseye/Dockerfile.j2 index ec42ca29de..9b01bc8ced 100644 --- a/sonic-slave-bullseye/Dockerfile.j2 +++ b/sonic-slave-bullseye/Dockerfile.j2 @@ -116,6 +116,8 @@ RUN apt-get update && apt-get install -y \ uuid-dev \ jq \ cron \ +# For sonic-swss-common + nlohmann-json3-dev \ # For quagga build libreadline-dev \ texlive-latex-base \ diff --git a/sonic-slave-buster/Dockerfile.j2 b/sonic-slave-buster/Dockerfile.j2 index 8c1a3a629f..07629010e4 100644 --- a/sonic-slave-buster/Dockerfile.j2 +++ b/sonic-slave-buster/Dockerfile.j2 @@ -117,6 +117,8 @@ RUN apt-get update && apt-get install -y \ libzmq3-dev \ uuid-dev \ jq \ +# For sonic-swss-common + nlohmann-json3-dev \ # For quagga build libreadline-dev \ texlive-latex-base \ diff --git a/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_back.conf b/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_back.conf index 28a543841f..da0e6b7733 100644 --- a/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_back.conf +++ b/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_back.conf @@ -9,6 +9,8 @@ neighbor INTERNAL_PEER_V4 allowas-in 1 neighbor INTERNAL_PEER_V4 route-map FROM_BGP_INTERNAL_PEER_V4 in neighbor INTERNAL_PEER_V4 route-map TO_BGP_INTERNAL_PEER_V4 out + neighbor INTERNAL_PEER_V4 send-community + neighbor INTERNAL_PEER_V4 ttl-security hops 1 exit-address-family address-family ipv6 neighbor INTERNAL_PEER_V6 route-reflector-client @@ -16,6 +18,8 @@ neighbor INTERNAL_PEER_V6 allowas-in 1 neighbor INTERNAL_PEER_V6 route-map FROM_BGP_INTERNAL_PEER_V6 in neighbor INTERNAL_PEER_V6 route-map TO_BGP_INTERNAL_PEER_V6 out + neighbor INTERNAL_PEER_V6 send-community + neighbor INTERNAL_PEER_V6 ttl-security hops 1 exit-address-family ! ! end of template: bgpd/templates/internal/peer-group.conf.j2 diff --git a/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_chasiss_packet.conf b/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_chasiss_packet.conf index 1f4e219e27..64b30e514d 100644 --- a/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_chasiss_packet.conf +++ b/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_chasiss_packet.conf @@ -9,6 +9,8 @@ neighbor INTERNAL_PEER_V4 allowas-in 1 neighbor INTERNAL_PEER_V4 route-map FROM_BGP_INTERNAL_PEER_V4 in neighbor INTERNAL_PEER_V4 route-map TO_BGP_INTERNAL_PEER_V4 out + neighbor INTERNAL_PEER_V4 send-community + neighbor INTERNAL_PEER_V4 ttl-security hops 1 exit-address-family neighbor INTERNAL_PEER_V6 update-source Loopback4096 address-family ipv6 @@ -16,6 +18,8 @@ neighbor INTERNAL_PEER_V6 allowas-in 1 neighbor INTERNAL_PEER_V6 route-map FROM_BGP_INTERNAL_PEER_V6 in neighbor INTERNAL_PEER_V6 route-map TO_BGP_INTERNAL_PEER_V6 out + neighbor INTERNAL_PEER_V6 send-community + neighbor INTERNAL_PEER_V6 ttl-security hops 1 exit-address-family ! ! end of template: bgpd/templates/internal/peer-group.conf.j2 diff --git a/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_front.conf b/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_front.conf index 5b061fa52b..363040eb12 100644 --- a/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_front.conf +++ b/src/sonic-bgpcfgd/tests/data/internal/peer-group.conf/result_front.conf @@ -8,12 +8,16 @@ neighbor INTERNAL_PEER_V4 allowas-in 1 neighbor INTERNAL_PEER_V4 route-map FROM_BGP_INTERNAL_PEER_V4 in neighbor INTERNAL_PEER_V4 route-map TO_BGP_INTERNAL_PEER_V4 out + neighbor INTERNAL_PEER_V4 send-community + neighbor INTERNAL_PEER_V4 ttl-security hops 1 exit-address-family address-family ipv6 neighbor INTERNAL_PEER_V6 soft-reconfiguration inbound neighbor INTERNAL_PEER_V6 allowas-in 1 neighbor INTERNAL_PEER_V6 route-map FROM_BGP_INTERNAL_PEER_V6 in neighbor INTERNAL_PEER_V6 route-map TO_BGP_INTERNAL_PEER_V6 out + neighbor INTERNAL_PEER_V6 send-community + neighbor INTERNAL_PEER_V6 ttl-security hops 1 exit-address-family ! ! end of template: bgpd/templates/internal/peer-group.conf.j2 diff --git a/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_all.conf b/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_all.conf index cf5020ee49..350ff0eeeb 100644 --- a/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_all.conf +++ b/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_all.conf @@ -10,6 +10,7 @@ neighbor VOQ_CHASSIS_V4_PEER soft-reconfiguration inbound neighbor VOQ_CHASSIS_V4_PEER route-map FROM_VOQ_CHASSIS_V4_PEER in neighbor VOQ_CHASSIS_V4_PEER route-map TO_VOQ_CHASSIS_V4_PEER out + neighbor VOQ_CHASSIS_V4_PEER send-community exit-address-family address-family ipv6 neighbor VOQ_CHASSIS_V6_PEER allowas-in 1 @@ -18,6 +19,7 @@ neighbor VOQ_CHASSIS_V6_PEER soft-reconfiguration inbound neighbor VOQ_CHASSIS_V6_PEER route-map FROM_VOQ_CHASSIS_V6_PEER in neighbor VOQ_CHASSIS_V6_PEER route-map TO_VOQ_CHASSIS_V6_PEER out + neighbor VOQ_CHASSIS_V6_PEER send-community exit-address-family ! ! end of template: bgpd/templates/voq_chassis/peer-group.conf.j2 diff --git a/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_base.conf b/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_base.conf index 61813254ac..9818358a77 100644 --- a/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_base.conf +++ b/src/sonic-bgpcfgd/tests/data/voq_chassis/peer-group.conf/result_base.conf @@ -9,6 +9,7 @@ neighbor VOQ_CHASSIS_V4_PEER soft-reconfiguration inbound neighbor VOQ_CHASSIS_V4_PEER route-map FROM_VOQ_CHASSIS_V4_PEER in neighbor VOQ_CHASSIS_V4_PEER route-map TO_VOQ_CHASSIS_V4_PEER out + neighbor VOQ_CHASSIS_V4_PEER send-community exit-address-family address-family ipv6 neighbor VOQ_CHASSIS_V6_PEER activate @@ -16,6 +17,7 @@ neighbor VOQ_CHASSIS_V6_PEER soft-reconfiguration inbound neighbor VOQ_CHASSIS_V6_PEER route-map FROM_VOQ_CHASSIS_V6_PEER in neighbor VOQ_CHASSIS_V6_PEER route-map TO_VOQ_CHASSIS_V6_PEER out + neighbor VOQ_CHASSIS_V6_PEER send-community exit-address-family ! ! end of template: bgpd/templates/voq_chassis/peer-group.conf.j2 diff --git a/src/sonic-config-engine/minigraph.py b/src/sonic-config-engine/minigraph.py index a759393965..4975a45b19 100644 --- a/src/sonic-config-engine/minigraph.py +++ b/src/sonic-config-engine/minigraph.py @@ -2009,7 +2009,7 @@ def parse_xml(filename, platform=None, port_config_file=None, asic_name=None, hw results['ACL_TABLE'] = filter_acl_table_bindings(acls, neighbors, pcs, pc_members, sub_role, current_device['type'] if current_device else None, is_storage_device, vlan_members) results['FEATURE'] = { 'telemetry': { - 'state': 'disabled' + 'state': 'enabled' } } results['TELEMETRY'] = { diff --git a/src/sonic-frr/patch/0027-zebra-Fix-non-notification-of-better-admin-won.patch b/src/sonic-frr/patch/0027-zebra-Fix-non-notification-of-better-admin-won.patch new file mode 100644 index 0000000000..a1e06a7f5f --- /dev/null +++ b/src/sonic-frr/patch/0027-zebra-Fix-non-notification-of-better-admin-won.patch @@ -0,0 +1,70 @@ +From 41b759505afb261211f40e386a30f6cf3870a094 Mon Sep 17 00:00:00 2001 +From: dgsudharsan +Date: Tue, 21 Nov 2023 17:55:24 +0000 +Subject: [PATCH] zebra: Fix non-notification of better admin won If there + happens to be a entry in the zebra rib that has a lower admin distance then a + newly received re, zebra would not notify the upper level protocol about this + happening. Imagine a case where there is a connected route for say a /32 and + bgp receives a route from a peer that is the same route as the connected. + Since BGP has no network statement and perceives the route as being `good` + bgp will install the route into zebra. Zebra will look at the new bgp re and + correctly identify that the re is not something that it will use and do + nothing. This change notices this and sends up a BETTER_ADMIN_WON route + notification. + + +diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c +index 039c44cc09..f2f20bcf7b 100644 +--- a/zebra/zebra_rib.c ++++ b/zebra/zebra_rib.c +@@ -1209,6 +1209,7 @@ static void rib_process(struct route_node *rn) + rib_dest_t *dest; + struct zebra_vrf *zvrf = NULL; + struct vrf *vrf; ++ struct route_entry *proto_re_changed = NULL; + + vrf_id_t vrf_id = VRF_UNKNOWN; + +@@ -1278,6 +1279,7 @@ static void rib_process(struct route_node *rn) + * skip it. + */ + if (CHECK_FLAG(re->status, ROUTE_ENTRY_CHANGED)) { ++ proto_re_changed = re; + if (!nexthop_active_update(rn, re)) { + const struct prefix *p; + struct rib_table_info *info; +@@ -1363,6 +1365,8 @@ static void rib_process(struct route_node *rn) + * new_selected --- RE entry that is newly SELECTED + * old_fib --- RE entry currently in kernel FIB + * new_fib --- RE entry that is newly to be in kernel FIB ++ * proto_re_changed -- RE that is the last changed entry in the ++ * list of RE's. + * + * new_selected will get SELECTED flag, and is going to be redistributed + * the zclients. new_fib (which can be new_selected) will be installed +@@ -1417,6 +1421,22 @@ static void rib_process(struct route_node *rn) + } + } + ++ /* ++ * If zebra has a new_selected and a proto_re_changed ++ * entry that was not the old selected and the protocol ++ * is different, zebra should notify the upper level ++ * protocol that the sent down entry was not selected ++ */ ++ if (new_selected && proto_re_changed && ++ proto_re_changed != old_selected && ++ new_selected->type != proto_re_changed->type) { ++ struct rib_table_info *info = srcdest_rnode_table_info(rn); ++ ++ zsend_route_notify_owner(rn, proto_re_changed, ++ ZAPI_ROUTE_BETTER_ADMIN_WON, info->afi, ++ info->safi); ++ } ++ + /* Update fib according to selection results */ + if (new_fib && old_fib) + rib_process_update_fib(zvrf, rn, old_fib, new_fib); +-- +2.17.1 + diff --git a/src/sonic-frr/patch/series b/src/sonic-frr/patch/series index d914370a70..c057585d64 100644 --- a/src/sonic-frr/patch/series +++ b/src/sonic-frr/patch/series @@ -26,3 +26,4 @@ cross-compile-changes.patch 0024-bgpd-Do-not-process-NLRIs-if-the-attribute-length-is.patch 0025-bgpd-Use-treat-as-withdraw-for-tunnel-encapsulation-.patch 0026-zebra-Add-encap-type-when-building-packet-for-FPM.patch +0027-zebra-Fix-non-notification-of-better-admin-won.patch diff --git a/src/sonic-host-services b/src/sonic-host-services index fc88254deb..689395ab23 160000 --- a/src/sonic-host-services +++ b/src/sonic-host-services @@ -1 +1 @@ -Subproject commit fc88254deb5a7f6d5dd11d04ec97d39e22a4e866 +Subproject commit 689395ab23bdaaa7ce934afdf8324a9467178e45 diff --git a/src/sonic-linux-kernel b/src/sonic-linux-kernel index a46716e1ca..6ff3cc2ae1 160000 --- a/src/sonic-linux-kernel +++ b/src/sonic-linux-kernel @@ -1 +1 @@ -Subproject commit a46716e1ca1e5feff1b10f141a688e6e4270d707 +Subproject commit 6ff3cc2ae1818d4c69b7b50c2ac1728d370ea35e diff --git a/src/sonic-sairedis b/src/sonic-sairedis index 5a052ed6ef..715337ea06 160000 --- a/src/sonic-sairedis +++ b/src/sonic-sairedis @@ -1 +1 @@ -Subproject commit 5a052ed6ef18a671bcd46419edc75202cf86eabb +Subproject commit 715337ea0696ca02f1a43a0ada05a87b15a64809 diff --git a/src/sonic-swss b/src/sonic-swss index 65720c1a5e..516d6ba6fc 160000 --- a/src/sonic-swss +++ b/src/sonic-swss @@ -1 +1 @@ -Subproject commit 65720c1a5edb3bc90d5e2fcdcc96f4c5eefaf20c +Subproject commit 516d6ba6fcc2a2c8dcf2ced8adc06d0369280078 diff --git a/src/sonic-utilities b/src/sonic-utilities index 5ed08f5897..2b6b65807c 160000 --- a/src/sonic-utilities +++ b/src/sonic-utilities @@ -1 +1 @@ -Subproject commit 5ed08f5897d189ce2595bcf98b0dcba68edb0b10 +Subproject commit 2b6b65807c79e1075cbfef90088802e68d36fda3 diff --git a/src/sonic-yang-mgmt/sonic-cfg-help b/src/sonic-yang-mgmt/sonic-cfg-help index 4c14cebc44..bd842b3c4d 100755 --- a/src/sonic-yang-mgmt/sonic-cfg-help +++ b/src/sonic-yang-mgmt/sonic-cfg-help @@ -54,7 +54,14 @@ class SonicCfgDescriber: self.print_field_desc(table['list'], field) print() elif table.get('container') is not None: - self.print_field_desc(table.get('container'), field) + if isinstance(table['container'], dict): + print("key - " + table['container'].get('@name')) + self.print_field_desc(table.get('container'), field) + elif isinstance(table['container'], list): + for c in table['container']: + print("key - " + c.get('@name')) + self.print_field_desc(c, field) + print() def get_referenced_table_field(self, ref): diff --git a/src/sonic-yang-mgmt/tests/test_cfghelp.py b/src/sonic-yang-mgmt/tests/test_cfghelp.py index 2eebebe7be..70b3a1edb1 100644 --- a/src/sonic-yang-mgmt/tests/test_cfghelp.py +++ b/src/sonic-yang-mgmt/tests/test_cfghelp.py @@ -25,6 +25,7 @@ AUTO_TECHSUPPORT Description: AUTO_TECHSUPPORT part of config_db.json +key - GLOBAL +-------------------------+----------------------------------------------------+-------------+-----------+-------------+ | Field | Description | Mandatory | Default | Reference | +=========================+====================================================+=============+===========+=============+ @@ -62,6 +63,7 @@ AUTO_TECHSUPPORT Description: AUTO_TECHSUPPORT part of config_db.json +key - GLOBAL +---------+--------------------------------------------------+-------------+-----------+-------------+ | Field | Description | Mandatory | Default | Reference | +=========+==================================================+=============+===========+=============+ @@ -118,6 +120,25 @@ """ +snmp_table_output="""\ + +SNMP + +key - CONTACT ++---------+----------------------+-------------+-----------+-------------+ +| Field | Description | Mandatory | Default | Reference | ++=========+======================+=============+===========+=============+ +| Contact | SNMP System Contact. | | | | ++---------+----------------------+-------------+-----------+-------------+ +key - LOCATION ++----------+-----------------------+-------------+-----------+-------------+ +| Field | Description | Mandatory | Default | Reference | ++==========+=======================+=============+===========+=============+ +| Location | SNMP System Location. | | | | ++----------+-----------------------+-------------+-----------+-------------+ + +""" + class TestCfgHelp(TestCase): def setUp(self): @@ -167,3 +188,8 @@ def test_when_condition(self): argument = ['-t', 'ACL_RULE', '-f', 'ICMP_TYPE'] output = self.run_script(argument) self.assertEqual(output, acl_rule_table_field_output) + + def test_nested_container(self): + argument = ['-t', 'SNMP'] + output = self.run_script(argument) + self.assertEqual(output, snmp_table_output) diff --git a/src/system-health/health_checker/service_checker.py b/src/system-health/health_checker/service_checker.py index a310fbba1a..76b024388b 100644 --- a/src/system-health/health_checker/service_checker.py +++ b/src/system-health/health_checker/service_checker.py @@ -87,10 +87,10 @@ def get_expected_running_containers(self, feature_table): for feature_name, feature_entry in feature_table.items(): if feature_entry["state"] not in ["disabled", "always_disabled"]: if multi_asic.is_multi_asic(): - if feature_entry.get("has_global_scope", "True") == "True": + if feature_entry["has_global_scope"] == "True": expected_running_containers.add(feature_name) container_feature_dict[feature_name] = feature_name - if feature_entry.get("has_per_asic_scope", "False") == "True": + if feature_entry["has_per_asic_scope"] == "True": num_asics = multi_asic.get_num_asics() for asic_id in range(num_asics): if asic_id in asics_id_presence or feature_name in run_all_instance_list: