Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update DNS-SD advertisements on fail-safe timeout #23199

Merged
merged 5 commits into from
Oct 18, 2022

Conversation

msandstedt
Copy link
Contributor

When we remove a fabric during a pending add with fail-safe timeout, we aren't updating DNS-SD adevertisements. In addition to the obvious consequence of continuing to advertise a now-stale identity, this can also leave the advertisement slots full if the failed fabric addition was to the Nth slot in an N-fabric device.

This then breaks advertisement when recommissioning to the Nth slot thereafter for builds that do not set this:

CHIP_CONFIG_MINMDNS_DYNAMIC_OPERATIONAL_RESPONDER_LIST

For those builds, this condition persists until reboot or some other action triggers DnssdServer::StartServer.

This commit fixes the problem by moving the DnssdServer::StartServer call from the RemoveFabric invoke handler to the server's OnFabricRemoved callback. That will result in server restart both for RemoveFabric invocations and fail-safe expiry.

Fixes #23169

When we remove a fabric during a pending add with fail-safe timeout, we
aren't updating DNS-SD adevertisements.  In addition to the obvious
consequence of continuing to advertise a now-stale identity, this can
also leave the advertisement slots full if the failed fabric addition
was to the Nth slot in an N-fabric device.

This then breaks advertisement when recommissioning to the Nth slot
thereafter for builds that do not set this:

CHIP_CONFIG_MINMDNS_DYNAMIC_OPERATIONAL_RESPONDER_LIST

For those builds, this condition persists until reboot or some other
action triggers DnssdServer::StartServer.

This commit fixes the problem by moving the DnssdServer::StartServer
call from the RemoveFabric invoke handler to the server's
OnFabricRemoved callback.  That will result in server restart both
for RemoveFabric invocations and fail-safe expiry.

Fixes project-chip#23169
@andy31415
Copy link
Contributor

Is there a test that could be added to make sure this never regresses again?

@github-actions
Copy link

github-actions bot commented Oct 14, 2022

PR #23199: Size comparison from d520b39 to 7f9ccd9

Increases (9 builds for bl702, cc13x2_26x2, psoc6)
platform target config section d520b39 7f9ccd9 change % change
bl702 lighting-app bl702+rpc .text 1030502 1030506 4 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 174368 174384 16 0.0
lock-ftd LP_CC2652R7 (read/write) 172828 172844 16 0.0
lock-mtd LP_CC2652R7 (read/write) 184760 184776 16 0.0
pump-app LP_CC2652R7 (read/write) 161500 161516 16 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_frame 373516 373520 4 0.0
.debug_line 3672175 3672178 3 0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_frame 376596 376600 4 0.0
.debug_info 26568825 26568827 2 0.0
.debug_line 3692892 3692895 3 0.0
light cy8ckit_062s2_43012 .debug_frame 346928 346932 4 0.0
.debug_line 3262816 3262819 3 0.0
lock cy8ckit_062s2_43012 .debug_frame 348820 348824 4 0.0
.debug_line 3260677 3260680 3 0.0
Decreases (21 builds for bl602, bl702, cc13x2_26x2, cyw30739, k32w, nrfconnect, psoc6, qpg, telink)
platform target config section d520b39 7f9ccd9 change % change
bl602 lighting-app bl602 .text 1069118 1069114 -4 -0.0
bl602+rpc (read/write) 1434934 1434926 -8 -0.0
.text 1100466 1100462 -4 -0.0
bl702 lighting-app bl702 .debug_info 37905413 37905411 -2 -0.0
.debug_line 5256822 5256794 -28 -0.0
.debug_loc 3367145 3367104 -41 -0.0
bl702+rpc .debug_line 5631353 5631325 -28 -0.0
.debug_loc 3559792 3559751 -41 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677175 677159 -16 -0.0
.text 587072 587056 -16 -0.0
lock-ftd LP_CC2652R7 (read only) 675867 675851 -16 -0.0
.text 598072 598056 -16 -0.0
lock-mtd LP_CC2652R7 (read only) 659623 659607 -16 -0.0
.text 556008 555992 -16 -0.0
pump-app LP_CC2652R7 (read only) 687915 687899 -16 -0.0
.text 596700 596684 -16 -0.0
cyw30739 light cyw930739m2evb_01 (read/write) 587914 587906 -8 -0.0
.app_xip_area 464524 464516 -8 -0.0
lock cyw930739m2evb_01 (read/write) 592162 592154 -8 -0.0
.app_xip_area 463452 463444 -8 -0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 543958 543950 -8 -0.0
.app_xip_area 425624 425616 -8 -0.0
k32w contact k32w0+release (read/write) 661284 661268 -16 -0.0
.text 563028 563012 -16 -0.0
lock k32w0+release (read/write) 633092 633076 -16 -0.0
.text 552684 552668 -16 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 text 815708 815700 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 text 803600 803592 -8 -0.0
psoc6 light cy8ckit_062s2_43012 (read/write) 1606356 1606340 -16 -0.0
.text 1415520 1415504 -16 -0.0
lock cy8ckit_062s2_43012 (read/write) 1640276 1640260 -16 -0.0
.text 1444424 1444408 -16 -0.0
qpg lock-app qpg6105+debug (read/write) 1113712 1113696 -16 -0.0
.text 560808 560792 -16 -0.0
telink light-switch-app tlsr9518adk80d text 553138 553134 -4 -0.0
lighting-app tlsr9518adk80d text 571356 571352 -4 -0.0
ota-requestor-app tlsr9518adk80d text 577542 577538 -4 -0.0
Full report (31 builds for bl602, bl702, cc13x2_26x2, cyw30739, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section d520b39 7f9ccd9 change % change
bl602 lighting-app bl602 (read/write) 1389710 1389710 0 0.0
.bss 90729 90729 0 0.0
.data 9928 9928 0 0.0
.text 1069118 1069114 -4 -0.0
bl602+rpc (read/write) 1434934 1434926 -8 -0.0
.bss 98161 98161 0 0.0
.data 10312 10312 0 0.0
.text 1100466 1100462 -4 -0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1188691 1188691 0 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 67102 67102 0 0.0
.bss_psram 29696 29696 0 0.0
.comment 48 48 0 0.0
.data 4272 4272 0 0.0
.debug_abbrev 1506865 1506865 0 0.0
.debug_aranges 133136 133136 0 0.0
.debug_frame 486600 486600 0 0.0
.debug_info 37905413 37905411 -2 -0.0
.debug_line 5256822 5256794 -28 -0.0
.debug_loc 3367145 3367104 -41 -0.0
.debug_ranges 359376 359376 0 0.0
.debug_str 3457811 3457811 0 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 144 144 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 116744 116744 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 565071 565071 0 0.0
.symtab 171664 171664 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
957058 957058 0 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1284355 1284355 0 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75150 75150 0 0.0
.bss_psram 29936 29936 0 0.0
.comment 48 48 0 0.0
.data 4800 4800 0 0.0
.debug_abbrev 1644410 1644410 0 0.0
.debug_aranges 140640 140640 0 0.0
.debug_frame 511972 511972 0 0.0
.debug_info 41812026 41812026 0 0.0
.debug_line 5631353 5631325 -28 -0.0
.debug_loc 3559792 3559751 -41 -0.0
.debug_ranges 381832 381832 0 0.0
.debug_str 3853711 3853711 0 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 160 160 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 130136 130136 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 624244 624244 0 0.0
.symtab 189472 189472 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1030502 1030506 4 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677175 677159 -16 -0.0
(read/write) 174368 174384 16 0.0
.bss 81236 81236 0 0.0
.data 3380 3380 0 0.0
.rodata 89791 89791 0 0.0
.text 587072 587056 -16 -0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 641423 641423 0 0.0
(read/write) 158004 158004 0 0.0
.bss 80508 80508 0 0.0
.data 3380 3380 0 0.0
.rodata 78927 78927 0 0.0
.text 562176 562176 0 0.0
lock-ftd LP_CC2652R7 (read only) 675867 675851 -16 -0.0
(read/write) 172828 172844 16 0.0
.bss 78476 78476 0 0.0
.data 3304 3304 0 0.0
.rodata 77315 77315 0 0.0
.text 598072 598056 -16 -0.0
lock-mtd LP_CC2652R7 (read only) 659623 659607 -16 -0.0
(read/write) 184760 184776 16 0.0
.bss 74164 74164 0 0.0
.data 3304 3304 0 0.0
.rodata 103135 103135 0 0.0
.text 556008 555992 -16 -0.0
pump-app LP_CC2652R7 (read only) 687915 687899 -16 -0.0
(read/write) 161500 161516 16 0.0
.bss 78428 78428 0 0.0
.data 3296 3296 0 0.0
.rodata 90731 90731 0 0.0
.text 596700 596684 -16 -0.0
pump-controller-app LP_CC2652R7 (read only) 672423 672423 0 0.0
(read/write) 177104 177104 0 0.0
.bss 78540 78540 0 0.0
.data 3292 3292 0 0.0
.rodata 86287 86287 0 0.0
.text 585656 585656 0 0.0
shell LP_CC2652R7 (read only) 668198 668198 0 0.0
(read/write) 185664 185664 0 0.0
.bss 83556 83556 0 0.0
.data 3376 3376 0 0.0
.rodata 86502 86502 0 0.0
.text 581380 581380 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 587914 587906 -8 -0.0
.app_xip_area 464524 464516 -8 -0.0
.bss 65808 65808 0 0.0
.data 760 760 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592162 592154 -8 -0.0
.app_xip_area 463452 463444 -8 -0.0
.bss 71120 71120 0 0.0
.data 768 768 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 543958 543950 -8 -0.0
.app_xip_area 425624 425616 -8 -0.0
.bss 60800 60800 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w contact k32w0+release (read/write) 661284 661268 -16 -0.0
.bss 77040 77040 0 0.0
.data 2104 2104 0 0.0
.text 563028 563012 -16 -0.0
light k32w0+release (read/write) 671280 671280 0 0.0
.bss 74816 74816 0 0.0
.data 2060 2060 0 0.0
.text 591676 591676 0 0.0
lock k32w0+release (read/write) 633092 633076 -16 -0.0
.bss 75600 75600 0 0.0
.data 2080 2080 0 0.0
.text 552684 552668 -16 -0.0
linux chip-tool-ipv6only arm64 (read only) 10429476 10429476 0 0.0
(read/write) 706353 706353 0 0.0
.bss 33953 33953 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 650632 650632 0 0.0
.dynamic 560 560 0 0.0
.got 13896 13896 0 0.0
.init 24 24 0 0.0
.init_array 208 208 0 0.0
.rodata 518132 518132 0 0.0
.text 8255780 8255780 0 0.0
thermostat-no-ble arm64 (read only) 2390524 2390524 0 0.0
(read/write) 143633 143633 0 0.0
.bss 55377 55377 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 77256 77256 0 0.0
.dynamic 560 560 0 0.0
.got 5176 5176 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 144436 144436 0 0.0
.text 2003184 2003184 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2452168 2452168 0 0.0
.bss 215028 215028 0 0.0
.data 5872 5872 0 0.0
.text 1414812 1414812 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1183451 1183451 0 0.0
bss 144441 144441 0 0.0
rodata 144396 144396 0 0.0
text 815708 815700 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1162119 1162119 0 0.0
bss 143668 143668 0 0.0
rodata 135968 135968 0 0.0
text 803600 803592 -8 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 0 0 0 0.0
(read only) 841968 841968 0 0.0
(read/write) 1745212 1745212 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188712 188712 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1229384 1229384 0 0.0
.debug_aranges 111872 111872 0 0.0
.debug_frame 373516 373520 4 0.0
.debug_info 26832044 26832044 0 0.0
.debug_line 3672175 3672178 3 0.0
.debug_loc 3589235 3589235 0 0.0
.debug_ranges 339728 339728 0 0.0
.debug_str 3441214 3441214 0 0.0
.heap 841968 841968 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 569639 569639 0 0.0
.symtab 421184 421184 0 0.0
.text 1545448 1545448 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 0 0 0 0.0
(read only) 842704 842704 0 0.0
(read/write) 1687796 1687796 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187976 187976 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1221183 1221183 0 0.0
.debug_aranges 111344 111344 0 0.0
.debug_frame 376596 376600 4 0.0
.debug_info 26568825 26568827 2 0.0
.debug_line 3692892 3692895 3 0.0
.debug_loc 3576872 3576872 0 0.0
.debug_ranges 338344 338344 0 0.0
.debug_str 3430227 3430227 0 0.0
.heap 842704 842704 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 533728 533728 0 0.0
.symtab 407616 407616 0 0.0
.text 1488768 1488768 0 0.0
.zero.table 8 8 0 0.0
light cy8ckit_062s2_43012 0 0 0 0.0
(read only) 850896 850896 0 0.0
(read/write) 1606356 1606340 -16 -0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179992 179992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1055294 1055294 0 0.0
.debug_aranges 103552 103552 0 0.0
.debug_frame 346928 346932 4 0.0
.debug_info 22032547 22032547 0 0.0
.debug_line 3262816 3262819 3 0.0
.debug_loc 3274834 3274834 0 0.0
.debug_ranges 303648 303648 0 0.0
.debug_str 3235759 3235759 0 0.0
.heap 850896 850896 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 470105 470105 0 0.0
.symtab 376064 376064 0 0.0
.text 1415520 1415504 -16 -0.0
.zero.table 8 8 0 0.0
lock cy8ckit_062s2_43012 0 0 0 0.0
(read only) 845880 845880 0 0.0
(read/write) 1640276 1640260 -16 -0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184992 184992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1057420 1057420 0 0.0
.debug_aranges 103952 103952 0 0.0
.debug_frame 348820 348824 4 0.0
.debug_info 22271244 22271244 0 0.0
.debug_line 3260677 3260680 3 0.0
.debug_loc 3303427 3303427 0 0.0
.debug_ranges 305592 305592 0 0.0
.debug_str 3255273 3255273 0 0.0
.heap 845880 845880 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 472512 472512 0 0.0
.symtab 377728 377728 0 0.0
.text 1444424 1444408 -16 -0.0
.zero.table 8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1148632 1148632 0 0.0
.bss 110556 110556 0 0.0
.data 832 832 0 0.0
.text 595732 595732 0 0.0
lock-app qpg6105+debug (read/write) 1113712 1113696 -16 -0.0
.bss 106372 106372 0 0.0
.data 836 836 0 0.0
.text 560808 560792 -16 -0.0
telink light-switch-app tlsr9518adk80d (read/write) 789364 789364 0 0.0
bss 72480 72480 0 0.0
noinit 43520 43520 0 0.0
text 553138 553134 -4 -0.0
lighting-app tlsr9518adk80d (read/write) 811468 811468 0 0.0
bss 73328 73328 0 0.0
noinit 43520 43520 0 0.0
text 571356 571352 -4 -0.0
ota-requestor-app tlsr9518adk80d (read/write) 819412 819412 0 0.0
bss 74236 74236 0 0.0
noinit 43520 43520 0 0.0
text 577542 577538 -4 -0.0

@msandstedt
Copy link
Contributor Author

Is there a test that could be added to make sure this never regresses again?

It's not obvious to me how we would unit test. It is difficult because some of the communication between the fabric table and dns-sd server runs through the app server. That actually is probably the source of this bug in a way: the app shouldn't need to know how to tell the dns-sd server what to do / when to do things (particularly not when the dns-sd server's source of truth is the fabric table anyway).

It would probably make more sense for the dns-sd server to register for fabric table add / update / remove callbacks directly so that the dns-sd can just 'do the right thing' based upon the state of the fabric table. And without the app in the middle, unit testing dns-sd server + fabric table seems plausible.

But absent such a refactor, perhaps we could add an integration test to make sure from the commissioner side, advertisements disappear after a fail-safe timeout. ttl will complicate things, but it still may be doable.

Can somebody point me to the existing commissioning integration tests?

@msandstedt
Copy link
Contributor Author

Is there a test that could be added to make sure this never regresses again?

It's not obvious to me how we would unit test. It is difficult because some of the communication between the fabric table and dns-sd server runs through the app server. That actually is probably the source of this bug in a way: the app shouldn't need to know how to tell the dns-sd server what to do / when to do things (particularly not when the dns-sd server's source of truth is the fabric table anyway).

It would probably make more sense for the dns-sd server to register for fabric table add / update / remove callbacks directly so that the dns-sd can just 'do the right thing' based upon the state of the fabric table. And without the app in the middle, unit testing dns-sd server + fabric table seems plausible.

But absent such a refactor, perhaps we could add an integration test to make sure from the commissioner side, advertisements disappear after a fail-safe timeout. ttl will complicate things, but it still may be doable.

Can somebody point me to the existing commissioning integration tests?

Discussed offline. Adding something to our existing Python testing could work, but would have some inherent variability across platforms, and could also be unreliable.

And per my assessment above, DnssdServer + FabricTable are not easily unit tested for this particular interaction because the app cluster server is sitting in the middle.

I therefore think it is not feasible for me to add a regression test immediately and we should probably merge this obvious fix as is.

@github-actions
Copy link

github-actions bot commented Oct 14, 2022

PR #23199: Size comparison from 9f08fc1 to 309693d

Increases (10 builds for bl702, cc13x2_26x2, esp32, psoc6)
platform target config section 9f08fc1 309693d change % change
bl702 lighting-app bl702 (read/write) 1188675 1188691 16 0.0
.text 957056 957058 2 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 174368 174384 16 0.0
lock-ftd LP_CC2652R7 (read/write) 172828 172844 16 0.0
lock-mtd LP_CC2652R7 (read/write) 184760 184776 16 0.0
pump-app LP_CC2652R7 (read/write) 161500 161516 16 0.0
esp32 all-clusters-app m5stack (read only) 1233415 1233419 4 0.0
(read/write) 564204 564212 8 0.0
.flash.rodata 314928 314936 8 0.0
.flash.text 1228031 1228035 4 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_frame 373516 373520 4 0.0
.debug_info 26832044 26832045 1 0.0
.debug_line 3672175 3672178 3 0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_frame 376596 376600 4 0.0
.debug_line 3692892 3692895 3 0.0
light cy8ckit_062s2_43012 .debug_frame 346928 346932 4 0.0
.debug_line 3262816 3262819 3 0.0
lock cy8ckit_062s2_43012 .debug_frame 348820 348824 4 0.0
.debug_info 22271244 22271245 1 0.0
.debug_line 3260677 3260680 3 0.0
Decreases (23 builds for bl602, bl702, cc13x2_26x2, cyw30739, efr32, esp32, k32w, nrfconnect, psoc6, qpg, telink)
platform target config section 9f08fc1 309693d change % change
bl602 lighting-app bl602 .text 1069118 1069116 -2 -0.0
bl602+rpc (read/write) 1434934 1434926 -8 -0.0
.text 1100468 1100464 -4 -0.0
bl702 lighting-app bl702 .debug_info 37905412 37905411 -1 -0.0
.debug_line 5256822 5256794 -28 -0.0
.debug_loc 3367145 3367104 -41 -0.0
bl702+rpc .debug_info 41812028 41812025 -3 -0.0
.debug_line 5631353 5631325 -28 -0.0
.debug_loc 3559792 3559751 -41 -0.0
.text 1030506 1030504 -2 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677175 677159 -16 -0.0
.text 587072 587056 -16 -0.0
lock-ftd LP_CC2652R7 (read only) 675867 675851 -16 -0.0
.text 598072 598056 -16 -0.0
lock-mtd LP_CC2652R7 (read only) 659623 659607 -16 -0.0
.text 556008 555992 -16 -0.0
pump-app LP_CC2652R7 (read only) 687915 687899 -16 -0.0
.text 596700 596684 -16 -0.0
cyw30739 light cyw930739m2evb_01 (read/write) 587914 587906 -8 -0.0
.app_xip_area 464524 464516 -8 -0.0
lock cyw930739m2evb_01 (read/write) 592162 592154 -8 -0.0
.app_xip_area 463452 463444 -8 -0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 543958 543950 -8 -0.0
.app_xip_area 425624 425616 -8 -0.0
efr32 lighting-app BRD4161A+rpc (read/write) 973860 973844 -16 -0.0
.text 819340 819324 -16 -0.0
lock-app BRD4161A+wf200 (read/write) 1157024 1157008 -16 -0.0
.text 996696 996680 -16 -0.0
esp32 all-clusters-app c3devkit (read only) 1223340 1223334 -6 -0.0
(read/write) 1788302 1788294 -8 -0.0
.flash.rodata 257872 257864 -8 -0.0
.flash.text 1223340 1223334 -6 -0.0
k32w contact k32w0+release (read/write) 661284 661268 -16 -0.0
.text 563028 563012 -16 -0.0
lock k32w0+release (read/write) 633092 633076 -16 -0.0
.text 552684 552668 -16 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 text 815708 815700 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 text 803600 803592 -8 -0.0
psoc6 all-clusters-minimal cy8ckit_062s2_43012 .debug_info 26568826 26568825 -1 -0.0
light cy8ckit_062s2_43012 (read/write) 1606356 1606340 -16 -0.0
.text 1415520 1415504 -16 -0.0
lock cy8ckit_062s2_43012 (read/write) 1640276 1640260 -16 -0.0
.text 1444424 1444408 -16 -0.0
qpg lock-app qpg6105+debug (read/write) 1113712 1113696 -16 -0.0
.text 560808 560792 -16 -0.0
telink ota-requestor-app tlsr9518adk80d text 577544 577540 -4 -0.0
Full report (38 builds for bl602, bl702, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section 9f08fc1 309693d change % change
bl602 lighting-app bl602 (read/write) 1389710 1389710 0 0.0
.bss 90729 90729 0 0.0
.data 9928 9928 0 0.0
.text 1069118 1069116 -2 -0.0
bl602+rpc (read/write) 1434934 1434926 -8 -0.0
.bss 98161 98161 0 0.0
.data 10312 10312 0 0.0
.text 1100468 1100464 -4 -0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1188675 1188691 16 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 67102 67102 0 0.0
.bss_psram 29696 29696 0 0.0
.comment 48 48 0 0.0
.data 4272 4272 0 0.0
.debug_abbrev 1506865 1506865 0 0.0
.debug_aranges 133136 133136 0 0.0
.debug_frame 486600 486600 0 0.0
.debug_info 37905412 37905411 -1 -0.0
.debug_line 5256822 5256794 -28 -0.0
.debug_loc 3367145 3367104 -41 -0.0
.debug_ranges 359376 359376 0 0.0
.debug_str 3457811 3457811 0 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 144 144 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 116744 116744 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 565071 565071 0 0.0
.symtab 171664 171664 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
957056 957058 2 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1284355 1284355 0 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75150 75150 0 0.0
.bss_psram 29936 29936 0 0.0
.comment 48 48 0 0.0
.data 4800 4800 0 0.0
.debug_abbrev 1644410 1644410 0 0.0
.debug_aranges 140640 140640 0 0.0
.debug_frame 511972 511972 0 0.0
.debug_info 41812028 41812025 -3 -0.0
.debug_line 5631353 5631325 -28 -0.0
.debug_loc 3559792 3559751 -41 -0.0
.debug_ranges 381832 381832 0 0.0
.debug_str 3853711 3853711 0 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 160 160 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 130136 130136 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 624244 624244 0 0.0
.symtab 189472 189472 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1030506 1030504 -2 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677175 677159 -16 -0.0
(read/write) 174368 174384 16 0.0
.bss 81236 81236 0 0.0
.data 3380 3380 0 0.0
.rodata 89791 89791 0 0.0
.text 587072 587056 -16 -0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 641423 641423 0 0.0
(read/write) 158004 158004 0 0.0
.bss 80508 80508 0 0.0
.data 3380 3380 0 0.0
.rodata 78927 78927 0 0.0
.text 562176 562176 0 0.0
lock-ftd LP_CC2652R7 (read only) 675867 675851 -16 -0.0
(read/write) 172828 172844 16 0.0
.bss 78476 78476 0 0.0
.data 3304 3304 0 0.0
.rodata 77315 77315 0 0.0
.text 598072 598056 -16 -0.0
lock-mtd LP_CC2652R7 (read only) 659623 659607 -16 -0.0
(read/write) 184760 184776 16 0.0
.bss 74164 74164 0 0.0
.data 3304 3304 0 0.0
.rodata 103135 103135 0 0.0
.text 556008 555992 -16 -0.0
pump-app LP_CC2652R7 (read only) 687915 687899 -16 -0.0
(read/write) 161500 161516 16 0.0
.bss 78428 78428 0 0.0
.data 3296 3296 0 0.0
.rodata 90731 90731 0 0.0
.text 596700 596684 -16 -0.0
pump-controller-app LP_CC2652R7 (read only) 672423 672423 0 0.0
(read/write) 177104 177104 0 0.0
.bss 78540 78540 0 0.0
.data 3292 3292 0 0.0
.rodata 86287 86287 0 0.0
.text 585656 585656 0 0.0
shell LP_CC2652R7 (read only) 668198 668198 0 0.0
(read/write) 185664 185664 0 0.0
.bss 83556 83556 0 0.0
.data 3376 3376 0 0.0
.rodata 86502 86502 0 0.0
.text 581380 581380 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 587914 587906 -8 -0.0
.app_xip_area 464524 464516 -8 -0.0
.bss 65808 65808 0 0.0
.data 760 760 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592162 592154 -8 -0.0
.app_xip_area 463452 463444 -8 -0.0
.bss 71120 71120 0 0.0
.data 768 768 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 543958 543950 -8 -0.0
.app_xip_area 425624 425616 -8 -0.0
.bss 60800 60800 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rpc (read/write) 973860 973844 -16 -0.0
.bss 152252 152252 0 0.0
.data 2248 2248 0 0.0
.text 819340 819324 -16 -0.0
BRD4161A+rs911x (read/write) 1030992 1030992 0 0.0
.bss 186656 186656 0 0.0
.data 2092 2092 0 0.0
.text 842224 842224 0 0.0
BRD4187C (read/write) 1145900 1145900 0 0.0
.bss 138640 138640 0 0.0
.data 2596 2596 0 0.0
.text 980068 980068 0 0.0
lock-app BRD4161A+wf200 (read/write) 1157024 1157008 -16 -0.0
.bss 158208 158208 0 0.0
.data 2100 2100 0 0.0
.text 996696 996680 -16 -0.0
window-app BRD4187C (read/write) 1139336 1139336 0 0.0
.bss 140080 140080 0 0.0
.data 2620 2620 0 0.0
.text 972040 972040 0 0.0
esp32 all-clusters-app c3devkit (read only) 1223340 1223334 -6 -0.0
(read/write) 1788302 1788294 -8 -0.0
.dram0.bss 76944 76944 0 0.0
.dram0.data 13840 13840 0 0.0
.flash.rodata 257872 257864 -8 -0.0
.flash.text 1223340 1223334 -6 -0.0
.iram0.text 65204 65204 0 0.0
m5stack (read only) 1233415 1233419 4 0.0
(read/write) 564204 564212 8 0.0
.dram0.bss 82312 82312 0 0.0
.dram0.data 34296 34296 0 0.0
.flash.rodata 314928 314936 8 0.0
.flash.text 1228031 1228035 4 0.0
.iram0.text 123939 123939 0 0.0
k32w contact k32w0+release (read/write) 661284 661268 -16 -0.0
.bss 77040 77040 0 0.0
.data 2104 2104 0 0.0
.text 563028 563012 -16 -0.0
light k32w0+release (read/write) 671280 671280 0 0.0
.bss 74816 74816 0 0.0
.data 2060 2060 0 0.0
.text 591676 591676 0 0.0
lock k32w0+release (read/write) 633092 633076 -16 -0.0
.bss 75600 75600 0 0.0
.data 2080 2080 0 0.0
.text 552684 552668 -16 -0.0
linux chip-tool-ipv6only arm64 (read only) 10429476 10429476 0 0.0
(read/write) 706353 706353 0 0.0
.bss 33953 33953 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 650632 650632 0 0.0
.dynamic 560 560 0 0.0
.got 13896 13896 0 0.0
.init 24 24 0 0.0
.init_array 208 208 0 0.0
.rodata 518132 518132 0 0.0
.text 8255780 8255780 0 0.0
thermostat-no-ble arm64 (read only) 2390524 2390524 0 0.0
(read/write) 143633 143633 0 0.0
.bss 55377 55377 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 77256 77256 0 0.0
.dynamic 560 560 0 0.0
.got 5176 5176 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 144436 144436 0 0.0
.text 2003184 2003184 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2452168 2452168 0 0.0
.bss 215028 215028 0 0.0
.data 5872 5872 0 0.0
.text 1414812 1414812 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1183451 1183451 0 0.0
bss 144441 144441 0 0.0
rodata 144396 144396 0 0.0
text 815708 815700 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1162119 1162119 0 0.0
bss 143668 143668 0 0.0
rodata 135968 135968 0 0.0
text 803600 803592 -8 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 0 0 0 0.0
(read only) 841968 841968 0 0.0
(read/write) 1745212 1745212 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188712 188712 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1229384 1229384 0 0.0
.debug_aranges 111872 111872 0 0.0
.debug_frame 373516 373520 4 0.0
.debug_info 26832044 26832045 1 0.0
.debug_line 3672175 3672178 3 0.0
.debug_loc 3589235 3589235 0 0.0
.debug_ranges 339728 339728 0 0.0
.debug_str 3441214 3441214 0 0.0
.heap 841968 841968 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 569639 569639 0 0.0
.symtab 421184 421184 0 0.0
.text 1545448 1545448 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 0 0 0 0.0
(read only) 842704 842704 0 0.0
(read/write) 1687796 1687796 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187976 187976 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1221183 1221183 0 0.0
.debug_aranges 111344 111344 0 0.0
.debug_frame 376596 376600 4 0.0
.debug_info 26568826 26568825 -1 -0.0
.debug_line 3692892 3692895 3 0.0
.debug_loc 3576872 3576872 0 0.0
.debug_ranges 338344 338344 0 0.0
.debug_str 3430227 3430227 0 0.0
.heap 842704 842704 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 533728 533728 0 0.0
.symtab 407616 407616 0 0.0
.text 1488768 1488768 0 0.0
.zero.table 8 8 0 0.0
light cy8ckit_062s2_43012 0 0 0 0.0
(read only) 850896 850896 0 0.0
(read/write) 1606356 1606340 -16 -0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179992 179992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1055294 1055294 0 0.0
.debug_aranges 103552 103552 0 0.0
.debug_frame 346928 346932 4 0.0
.debug_info 22032548 22032548 0 0.0
.debug_line 3262816 3262819 3 0.0
.debug_loc 3274834 3274834 0 0.0
.debug_ranges 303648 303648 0 0.0
.debug_str 3235759 3235759 0 0.0
.heap 850896 850896 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 470105 470105 0 0.0
.symtab 376064 376064 0 0.0
.text 1415520 1415504 -16 -0.0
.zero.table 8 8 0 0.0
lock cy8ckit_062s2_43012 0 0 0 0.0
(read only) 845880 845880 0 0.0
(read/write) 1640276 1640260 -16 -0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184992 184992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1057420 1057420 0 0.0
.debug_aranges 103952 103952 0 0.0
.debug_frame 348820 348824 4 0.0
.debug_info 22271244 22271245 1 0.0
.debug_line 3260677 3260680 3 0.0
.debug_loc 3303427 3303427 0 0.0
.debug_ranges 305592 305592 0 0.0
.debug_str 3255273 3255273 0 0.0
.heap 845880 845880 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 472512 472512 0 0.0
.symtab 377728 377728 0 0.0
.text 1444424 1444408 -16 -0.0
.zero.table 8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1148632 1148632 0 0.0
.bss 110556 110556 0 0.0
.data 832 832 0 0.0
.text 595732 595732 0 0.0
lock-app qpg6105+debug (read/write) 1113712 1113696 -16 -0.0
.bss 106372 106372 0 0.0
.data 836 836 0 0.0
.text 560808 560792 -16 -0.0
telink light-switch-app tlsr9518adk80d (read/write) 789364 789364 0 0.0
bss 72480 72480 0 0.0
noinit 43520 43520 0 0.0
text 553136 553136 0 0.0
lighting-app tlsr9518adk80d (read/write) 811468 811468 0 0.0
bss 73328 73328 0 0.0
noinit 43520 43520 0 0.0
text 571354 571354 0 0.0
ota-requestor-app tlsr9518adk80d (read/write) 819412 819412 0 0.0
bss 74236 74236 0 0.0
noinit 43520 43520 0 0.0
text 577544 577540 -4 -0.0

@github-actions
Copy link

github-actions bot commented Oct 17, 2022

PR #23199: Size comparison from b96f795 to fe4062e

Increases (8 builds for cc13x2_26x2, psoc6)
platform target config section b96f795 fe4062e change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 174376 174384 8 0.0
lock-ftd LP_CC2652R7 (read/write) 172828 172844 16 0.0
lock-mtd LP_CC2652R7 (read/write) 184760 184776 16 0.0
pump-app LP_CC2652R7 (read/write) 161500 161516 16 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_frame 373516 373520 4 0.0
.debug_line 3672175 3672178 3 0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_frame 376596 376600 4 0.0
.debug_line 3692892 3692895 3 0.0
light cy8ckit_062s2_43012 .debug_frame 346928 346932 4 0.0
.debug_line 3262816 3262819 3 0.0
lock cy8ckit_062s2_43012 .debug_frame 348820 348824 4 0.0
.debug_info 22271243 22271244 1 0.0
.debug_line 3260677 3260680 3 0.0
Decreases (22 builds for bl602, bl702, cc13x2_26x2, cyw30739, k32w, nrfconnect, psoc6, qpg, telink)
platform target config section b96f795 fe4062e change % change
bl602 lighting-app bl602 (read/write) 1389710 1389702 -8 -0.0
.text 1069120 1069112 -8 -0.0
bl602+rpc (read/write) 1434934 1434926 -8 -0.0
.text 1100468 1100460 -8 -0.0
bl702 lighting-app bl702 .debug_info 37905413 37905411 -2 -0.0
.debug_line 5256822 5256794 -28 -0.0
.debug_loc 3367145 3367104 -41 -0.0
bl702+rpc .debug_info 41812027 41812024 -3 -0.0
.debug_line 5631353 5631325 -28 -0.0
.debug_loc 3559792 3559751 -41 -0.0
.text 1030504 1030502 -2 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677167 677159 -8 -0.0
.text 587064 587056 -8 -0.0
lock-ftd LP_CC2652R7 (read only) 675867 675851 -16 -0.0
.text 598072 598056 -16 -0.0
lock-mtd LP_CC2652R7 (read only) 659623 659607 -16 -0.0
.text 556008 555992 -16 -0.0
pump-app LP_CC2652R7 (read only) 687915 687899 -16 -0.0
.text 596700 596684 -16 -0.0
cyw30739 light cyw930739m2evb_01 (read/write) 587914 587906 -8 -0.0
.app_xip_area 464524 464516 -8 -0.0
lock cyw930739m2evb_01 (read/write) 592162 592154 -8 -0.0
.app_xip_area 463452 463444 -8 -0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 543958 543950 -8 -0.0
.app_xip_area 425624 425616 -8 -0.0
k32w contact k32w0+release (read/write) 661284 661268 -16 -0.0
.text 563028 563012 -16 -0.0
lock k32w0+release (read/write) 633092 633076 -16 -0.0
.text 552684 552668 -16 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 text 815708 815700 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 text 803600 803592 -8 -0.0
psoc6 all-clusters-minimal cy8ckit_062s2_43012 .debug_info 26568826 26568825 -1 -0.0
light cy8ckit_062s2_43012 (read/write) 1606356 1606340 -16 -0.0
.text 1415520 1415504 -16 -0.0
lock cy8ckit_062s2_43012 (read/write) 1640276 1640260 -16 -0.0
.text 1444424 1444408 -16 -0.0
qpg lock-app qpg6105+debug (read/write) 1113712 1113696 -16 -0.0
.text 560808 560792 -16 -0.0
telink light-switch-app tlsr9518adk80d (read/write) 789364 789356 -8 -0.0
text 553140 553132 -8 -0.0
lighting-app tlsr9518adk80d (read/write) 811476 811468 -8 -0.0
text 571358 571352 -6 -0.0
ota-requestor-app tlsr9518adk80d text 577540 577538 -2 -0.0
Full report (30 builds for bl602, bl702, cc13x2_26x2, cyw30739, k32w, linux, nrfconnect, psoc6, qpg, telink)
platform target config section b96f795 fe4062e change % change
bl602 lighting-app bl602 (read/write) 1389710 1389702 -8 -0.0
.bss 90729 90729 0 0.0
.data 9928 9928 0 0.0
.text 1069120 1069112 -8 -0.0
bl602+rpc (read/write) 1434934 1434926 -8 -0.0
.bss 98161 98161 0 0.0
.data 10312 10312 0 0.0
.text 1100468 1100460 -8 -0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1188691 1188691 0 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 67102 67102 0 0.0
.bss_psram 29696 29696 0 0.0
.comment 48 48 0 0.0
.data 4272 4272 0 0.0
.debug_abbrev 1506865 1506865 0 0.0
.debug_aranges 133136 133136 0 0.0
.debug_frame 486600 486600 0 0.0
.debug_info 37905413 37905411 -2 -0.0
.debug_line 5256822 5256794 -28 -0.0
.debug_loc 3367145 3367104 -41 -0.0
.debug_ranges 359376 359376 0 0.0
.debug_str 3457811 3457811 0 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 144 144 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 116744 116744 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 565071 565071 0 0.0
.symtab 171664 171664 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
957058 957058 0 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1284355 1284355 0 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75150 75150 0 0.0
.bss_psram 29936 29936 0 0.0
.comment 48 48 0 0.0
.data 4800 4800 0 0.0
.debug_abbrev 1644410 1644410 0 0.0
.debug_aranges 140640 140640 0 0.0
.debug_frame 511972 511972 0 0.0
.debug_info 41812027 41812024 -3 -0.0
.debug_line 5631353 5631325 -28 -0.0
.debug_loc 3559792 3559751 -41 -0.0
.debug_ranges 381832 381832 0 0.0
.debug_str 3853711 3853711 0 0.0
.hbn 509 509 0 0.0
.hbn_noinit 260 260 0 0.0
.init 342 342 0 0.0
.init_array 160 160 0 0.0
.psram 0 0 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 130136 130136 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 624244 624244 0 0.0
.symtab 189472 189472 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1030504 1030502 -2 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 677167 677159 -8 -0.0
(read/write) 174376 174384 8 0.0
.bss 81236 81236 0 0.0
.data 3380 3380 0 0.0
.rodata 89791 89791 0 0.0
.text 587064 587056 -8 -0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 641423 641423 0 0.0
(read/write) 158004 158004 0 0.0
.bss 80508 80508 0 0.0
.data 3380 3380 0 0.0
.rodata 78927 78927 0 0.0
.text 562176 562176 0 0.0
lock-ftd LP_CC2652R7 (read only) 675867 675851 -16 -0.0
(read/write) 172828 172844 16 0.0
.bss 78476 78476 0 0.0
.data 3304 3304 0 0.0
.rodata 77315 77315 0 0.0
.text 598072 598056 -16 -0.0
lock-mtd LP_CC2652R7 (read only) 659623 659607 -16 -0.0
(read/write) 184760 184776 16 0.0
.bss 74164 74164 0 0.0
.data 3304 3304 0 0.0
.rodata 103135 103135 0 0.0
.text 556008 555992 -16 -0.0
pump-app LP_CC2652R7 (read only) 687915 687899 -16 -0.0
(read/write) 161500 161516 16 0.0
.bss 78428 78428 0 0.0
.data 3296 3296 0 0.0
.rodata 90731 90731 0 0.0
.text 596700 596684 -16 -0.0
pump-controller-app LP_CC2652R7 (read only) 672423 672423 0 0.0
(read/write) 177104 177104 0 0.0
.bss 78540 78540 0 0.0
.data 3292 3292 0 0.0
.rodata 86287 86287 0 0.0
.text 585656 585656 0 0.0
shell LP_CC2652R7 (read only) 668198 668198 0 0.0
(read/write) 185664 185664 0 0.0
.bss 83556 83556 0 0.0
.data 3376 3376 0 0.0
.rodata 86502 86502 0 0.0
.text 581380 581380 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 587914 587906 -8 -0.0
.app_xip_area 464524 464516 -8 -0.0
.bss 65808 65808 0 0.0
.data 760 760 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592162 592154 -8 -0.0
.app_xip_area 463452 463444 -8 -0.0
.bss 71120 71120 0 0.0
.data 768 768 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 543958 543950 -8 -0.0
.app_xip_area 425624 425616 -8 -0.0
.bss 60800 60800 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w contact k32w0+release (read/write) 661284 661268 -16 -0.0
.bss 77040 77040 0 0.0
.data 2104 2104 0 0.0
.text 563028 563012 -16 -0.0
light k32w0+release (read/write) 671280 671280 0 0.0
.bss 74816 74816 0 0.0
.data 2060 2060 0 0.0
.text 591676 591676 0 0.0
lock k32w0+release (read/write) 633092 633076 -16 -0.0
.bss 75600 75600 0 0.0
.data 2080 2080 0 0.0
.text 552684 552668 -16 -0.0
linux chip-tool-ipv6only arm64 (read only) 10429476 10429476 0 0.0
(read/write) 706353 706353 0 0.0
.bss 33953 33953 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 650632 650632 0 0.0
.dynamic 560 560 0 0.0
.got 13896 13896 0 0.0
.init 24 24 0 0.0
.init_array 208 208 0 0.0
.rodata 518132 518132 0 0.0
.text 8255780 8255780 0 0.0
thermostat-no-ble arm64 (read only) 2390524 2390524 0 0.0
(read/write) 143633 143633 0 0.0
.bss 55377 55377 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 77256 77256 0 0.0
.dynamic 560 560 0 0.0
.got 5176 5176 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 144436 144436 0 0.0
.text 2003184 2003184 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1183451 1183451 0 0.0
bss 144441 144441 0 0.0
rodata 144396 144396 0 0.0
text 815708 815700 -8 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1162119 1162119 0 0.0
bss 143668 143668 0 0.0
rodata 135968 135968 0 0.0
text 803600 803592 -8 -0.0
psoc6 all-clusters cy8ckit_062s2_43012 0 0 0 0.0
(read only) 841968 841968 0 0.0
(read/write) 1745212 1745212 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188712 188712 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1229384 1229384 0 0.0
.debug_aranges 111872 111872 0 0.0
.debug_frame 373516 373520 4 0.0
.debug_info 26832043 26832043 0 0.0
.debug_line 3672175 3672178 3 0.0
.debug_loc 3589235 3589235 0 0.0
.debug_ranges 339728 339728 0 0.0
.debug_str 3441214 3441214 0 0.0
.heap 841968 841968 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 569639 569639 0 0.0
.symtab 421184 421184 0 0.0
.text 1545448 1545448 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 0 0 0 0.0
(read only) 842704 842704 0 0.0
(read/write) 1687796 1687796 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187976 187976 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1221183 1221183 0 0.0
.debug_aranges 111344 111344 0 0.0
.debug_frame 376596 376600 4 0.0
.debug_info 26568826 26568825 -1 -0.0
.debug_line 3692892 3692895 3 0.0
.debug_loc 3576872 3576872 0 0.0
.debug_ranges 338344 338344 0 0.0
.debug_str 3430227 3430227 0 0.0
.heap 842704 842704 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 533728 533728 0 0.0
.symtab 407616 407616 0 0.0
.text 1488768 1488768 0 0.0
.zero.table 8 8 0 0.0
light cy8ckit_062s2_43012 0 0 0 0.0
(read only) 850896 850896 0 0.0
(read/write) 1606356 1606340 -16 -0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179992 179992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1055294 1055294 0 0.0
.debug_aranges 103552 103552 0 0.0
.debug_frame 346928 346932 4 0.0
.debug_info 22032548 22032548 0 0.0
.debug_line 3262816 3262819 3 0.0
.debug_loc 3274834 3274834 0 0.0
.debug_ranges 303648 303648 0 0.0
.debug_str 3235759 3235759 0 0.0
.heap 850896 850896 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 470105 470105 0 0.0
.symtab 376064 376064 0 0.0
.text 1415520 1415504 -16 -0.0
.zero.table 8 8 0 0.0
lock cy8ckit_062s2_43012 0 0 0 0.0
(read only) 845880 845880 0 0.0
(read/write) 1640276 1640260 -16 -0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184992 184992 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1057420 1057420 0 0.0
.debug_aranges 103952 103952 0 0.0
.debug_frame 348820 348824 4 0.0
.debug_info 22271243 22271244 1 0.0
.debug_line 3260677 3260680 3 0.0
.debug_loc 3303427 3303427 0 0.0
.debug_ranges 305592 305592 0 0.0
.debug_str 3255273 3255273 0 0.0
.heap 845880 845880 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 472512 472512 0 0.0
.symtab 377728 377728 0 0.0
.text 1444424 1444408 -16 -0.0
.zero.table 8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1148632 1148632 0 0.0
.bss 110556 110556 0 0.0
.data 832 832 0 0.0
.text 595732 595732 0 0.0
lock-app qpg6105+debug (read/write) 1113712 1113696 -16 -0.0
.bss 106372 106372 0 0.0
.data 836 836 0 0.0
.text 560808 560792 -16 -0.0
telink light-switch-app tlsr9518adk80d (read/write) 789364 789356 -8 -0.0
bss 72480 72480 0 0.0
noinit 43520 43520 0 0.0
text 553140 553132 -8 -0.0
lighting-app tlsr9518adk80d (read/write) 811476 811468 -8 -0.0
bss 73328 73328 0 0.0
noinit 43520 43520 0 0.0
text 571358 571352 -6 -0.0
ota-requestor-app tlsr9518adk80d (read/write) 819412 819412 0 0.0
bss 74236 74236 0 0.0
noinit 43520 43520 0 0.0
text 577540 577538 -2 -0.0

@bzbarsky-apple bzbarsky-apple merged commit 0a08651 into project-chip:master Oct 18, 2022
adbridge pushed a commit to ARM-software/connectedhomeip that referenced this pull request Nov 18, 2022
When we remove a fabric during a pending add with fail-safe timeout, we
aren't updating DNS-SD adevertisements.  In addition to the obvious
consequence of continuing to advertise a now-stale identity, this can
also leave the advertisement slots full if the failed fabric addition
was to the Nth slot in an N-fabric device.

This then breaks advertisement when recommissioning to the Nth slot
thereafter for builds that do not set this:

CHIP_CONFIG_MINMDNS_DYNAMIC_OPERATIONAL_RESPONDER_LIST

For those builds, this condition persists until reboot or some other
action triggers DnssdServer::StartServer.

This commit fixes the problem by moving the DnssdServer::StartServer
call from the RemoveFabric invoke handler to the server's
OnFabricRemoved callback.  That will result in server restart both
for RemoveFabric invocations and fail-safe expiry.

Fixes project-chip#23169
adbridge pushed a commit to ARM-software/connectedhomeip that referenced this pull request Nov 18, 2022
When we remove a fabric during a pending add with fail-safe timeout, we
aren't updating DNS-SD adevertisements.  In addition to the obvious
consequence of continuing to advertise a now-stale identity, this can
also leave the advertisement slots full if the failed fabric addition
was to the Nth slot in an N-fabric device.

This then breaks advertisement when recommissioning to the Nth slot
thereafter for builds that do not set this:

CHIP_CONFIG_MINMDNS_DYNAMIC_OPERATIONAL_RESPONDER_LIST

For those builds, this condition persists until reboot or some other
action triggers DnssdServer::StartServer.

This commit fixes the problem by moving the DnssdServer::StartServer
call from the RemoveFabric invoke handler to the server's
OnFabricRemoved callback.  That will result in server restart both
for RemoveFabric invocations and fail-safe expiry.

Fixes project-chip#23169
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Fail-safe expiry continues to advertise operational instance name for reverted fabric
6 participants