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

Fix management of the mNumReportsInFlight count in reporting engine. #24093

Conversation

bzbarsky-apple
Copy link
Contributor

@bzbarsky-apple bzbarsky-apple commented Dec 15, 2022

If a ReadHandler failed out of SendReportData (e.g. because the session it's on had been marked as defunct), we would increment mNumReportsInFlight and never decrement it. After this happened CHIP_IM_MAX_REPORTS_IN_FLIGHT times (4 by default), we would stop being able to send out any more data reports.

This situation is pretty easy to trigger as follows:

  1. Use chip-tool to commission a device with node id 17.
  2. Start chip-tool interactive mode.
  3. Run the following commands in interactive mode:
    onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
    onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
    onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
    onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
    onoff subscribe on-off 0 2 17 1 --keepSubscriptions true
    
  4. quit interactive mode (Ctrl-C or quit() command).
  5. Wait 60 seconds for all the subscriptions to error out.

After this the device will no longer respond with data reports to any read or subscribe requests.

@github-actions
Copy link

github-actions bot commented Dec 15, 2022

PR #24093: Size comparison from 7fbf6da to 9541715

Increases (32 builds for bl602, bl702, cc13x2_26x2, cyw30739, k32w, linux, nrfconnect, psoc6, qpg, telink)
platform target config section 7fbf6da 9541715 change % change
bl602 lighting-app bl602 (read/write) 1356250 1356274 24 0.0
.text 1039048 1039068 20 0.0
bl602+rpc (read/write) 1402034 1402058 24 0.0
.text 1070470 1070492 22 0.0
bl702 lighting-app bl702 (read/write) 1196143 1196175 32 0.0
.debug_abbrev 1529020 1529044 24 0.0
.debug_frame 486468 486472 4 0.0
.debug_info 39187066 39187302 236 0.0
.debug_line 5149996 5150090 94 0.0
.debug_str 3480446 3480463 17 0.0
.text 956734 956756 22 0.0
bl702+rpc (read/write) 1284651 1284667 16 0.0
.debug_abbrev 1676352 1676376 24 0.0
.debug_frame 513888 513892 4 0.0
.debug_info 43479486 43479720 234 0.0
.debug_line 5539445 5539539 94 0.0
.debug_str 3882844 3882861 17 0.0
.text 1030716 1030734 18 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 679811 679819 8 0.0
.text 589496 589504 8 0.0
lock-ftd LP_CC2652R7 (read only) 677343 677359 16 0.0
.text 599440 599456 16 0.0
lock-mtd LP_CC2652R7 (read only) 662139 662147 8 0.0
.text 558152 558160 8 0.0
pump-controller-app LP_CC2652R7 (read only) 674179 674187 8 0.0
.text 587200 587208 8 0.0
shell LP_CC2652R7 (read only) 671026 671042 16 0.0
.text 583972 583988 16 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 588426 588434 8 0.0
.app_xip_area 464772 464780 8 0.0
lock cyw930739m2evb_01 (read/write) 592238 592246 8 0.0
.app_xip_area 463288 463296 8 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 551670 551686 16 0.0
.app_xip_area 433512 433528 16 0.0
k32w contact k32w0+release (read/write) 662652 662668 16 0.0
.text 564404 564420 16 0.0
light k32w0+release (read/write) 673216 673232 16 0.0
.text 593604 593620 16 0.0
lock k32w0+release (read/write) 634188 634204 16 0.0
.text 553796 553812 16 0.0
linux chip-tool-ipv6only arm64 (read only) 10582156 10582268 112 0.0
.rodata 535068 535084 16 0.0
.text 8412356 8412452 96 0.0
thermostat-no-ble arm64 (read only) 2477308 2477436 128 0.0
.rodata 149416 149448 32 0.0
.text 2067456 2067552 96 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1190807 1190823 16 0.0
text 820026 820038 12 0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1361070 1361086 16 0.0
text 759866 759878 12 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 text 790194 790206 12 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_abbrev 1238100 1238142 42 0.0
.debug_frame 371948 371952 4 0.0
.debug_info 27059201 27059505 304 0.0
.debug_line 3709401 3709486 85 0.0
.debug_loc 3624482 3624525 43 0.0
.debug_str 3450873 3450890 17 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1691932 1691948 16 0.0
.debug_abbrev 1229991 1230033 42 0.0
.debug_frame 375004 375008 4 0.0
.debug_info 26795999 26796304 305 0.0
.debug_line 3728306 3728391 85 0.0
.debug_loc 3612088 3612131 43 0.0
.debug_str 3439885 3439902 17 0.0
.text 1492984 1493000 16 0.0
light cy8ckit_062s2_43012 .debug_abbrev 1064790 1064832 42 0.0
.debug_frame 345340 345344 4 0.0
.debug_info 22258615 22258917 302 0.0
.debug_line 3295415 3295500 85 0.0
.debug_loc 3310011 3310054 43 0.0
.debug_str 3245471 3245488 17 0.0
lock cy8ckit_062s2_43012 .debug_abbrev 1066700 1066742 42 0.0
.debug_frame 347136 347140 4 0.0
.debug_info 22476999 22477305 306 0.0
.debug_line 3295309 3295394 85 0.0
.debug_loc 3331442 3331485 43 0.0
.debug_str 3261309 3261326 17 0.0
qpg lighting-app qpg6105+debug (read/write) 1151172 1151196 24 0.0
.text 598272 598296 24 0.0
lock-app qpg6105+debug (read/write) 1117476 1117492 16 0.0
.text 564572 564588 16 0.0
telink all-clusters-app tlsr9518adk80d (read/write) 1071328 1071344 16 0.0
text 726142 726160 18 0.0
all-clusters-minimal-app tlsr9518adk80d (read/write) 1010636 1010652 16 0.0
text 691306 691322 16 0.0
light-switch-app tlsr9518adk80d (read/write) 932092 932116 24 0.0
text 637928 637946 18 0.0
lighting-app tlsr9518adk80d (read/write) 1010060 1010084 24 0.0
text 703704 703722 18 0.0
ota-requestor-app tlsr9518adk80d (read/write) 945688 945704 16 0.0
text 649188 649200 12 0.0
thermostat tlsr9518adk80d (read/write) 935232 935248 16 0.0
text 638614 638630 16 0.0
Decreases (7 builds for bl702, cc13x2_26x2)
platform target config section 7fbf6da 9541715 change % change
bl702 lighting-app bl702 .debug_loc 3381237 3381165 -72 -0.0
bl702+rpc .debug_loc 3575958 3575886 -72 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 171636 171628 -8 -0.0
lock-ftd LP_CC2652R7 (read/write) 171664 171648 -16 -0.0
lock-mtd LP_CC2652R7 (read/write) 182132 182124 -8 -0.0
pump-controller-app LP_CC2652R7 (read/write) 175668 175660 -8 -0.0
shell LP_CC2652R7 (read/write) 182748 182732 -16 -0.0
Full report (35 builds for bl602, bl702, cc13x2_26x2, cyw30739, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section 7fbf6da 9541715 change % change
bl602 lighting-app bl602 (read/write) 1356250 1356274 24 0.0
.bss 86977 86977 0 0.0
.data 9984 9984 0 0.0
.text 1039048 1039068 20 0.0
bl602+rpc (read/write) 1402034 1402058 24 0.0
.bss 95017 95017 0 0.0
.data 10384 10384 0 0.0
.text 1070470 1070492 22 0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1196143 1196175 32 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 30048 30048 0 0.0
.comment 48 48 0 0.0
.data 4048 4048 0 0.0
.debug_abbrev 1529020 1529044 24 0.0
.debug_aranges 132568 132568 0 0.0
.debug_frame 486468 486472 4 0.0
.debug_info 39187066 39187302 236 0.0
.debug_line 5149996 5150090 94 0.0
.debug_loc 3381237 3381165 -72 -0.0
.debug_ranges 363808 363808 0 0.0
.debug_str 3480446 3480463 17 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 116352 116352 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 569095 569095 0 0.0
.symtab 172176 172176 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
956734 956756 22 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1284651 1284667 16 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75118 75118 0 0.0
.bss_psram 30304 30304 0 0.0
.comment 48 48 0 0.0
.data 4576 4576 0 0.0
.debug_abbrev 1676352 1676376 24 0.0
.debug_aranges 140688 140688 0 0.0
.debug_frame 513888 513892 4 0.0
.debug_info 43479486 43479720 234 0.0
.debug_line 5539445 5539539 94 0.0
.debug_loc 3575958 3575886 -72 -0.0
.debug_ranges 387344 387344 0 0.0
.debug_str 3882844 3882861 17 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 130112 130112 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 629379 629379 0 0.0
.symtab 190352 190352 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1030716 1030734 18 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 679811 679819 8 0.0
(read/write) 171636 171628 -8 -0.0
.bss 81140 81140 0 0.0
.data 3380 3380 0 0.0
.rodata 90003 90003 0 0.0
.text 589496 589504 8 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 644075 644075 0 0.0
(read/write) 157916 157916 0 0.0
.bss 80420 80420 0 0.0
.data 3380 3380 0 0.0
.rodata 79139 79139 0 0.0
.text 564616 564616 0 0.0
lock-ftd LP_CC2652R7 (read only) 677343 677359 16 0.0
(read/write) 171664 171648 -16 -0.0
.bss 78788 78788 0 0.0
.data 3304 3304 0 0.0
.rodata 77423 77423 0 0.0
.text 599440 599456 16 0.0
lock-mtd LP_CC2652R7 (read only) 662139 662147 8 0.0
(read/write) 182132 182124 -8 -0.0
.bss 74052 74052 0 0.0
.data 3304 3304 0 0.0
.rodata 103507 103507 0 0.0
.text 558152 558160 8 0.0
pump-app LP_CC2652R7 (read only) 690271 690271 0 0.0
(read/write) 159472 159472 0 0.0
.bss 78756 78756 0 0.0
.data 3296 3296 0 0.0
.rodata 90943 90943 0 0.0
.text 598844 598844 0 0.0
pump-controller-app LP_CC2652R7 (read only) 674179 674187 8 0.0
(read/write) 175668 175660 -8 -0.0
.bss 78860 78860 0 0.0
.data 3292 3292 0 0.0
.rodata 86499 86499 0 0.0
.text 587200 587208 8 0.0
shell LP_CC2652R7 (read only) 671026 671042 16 0.0
(read/write) 182748 182732 -16 -0.0
.bss 83468 83468 0 0.0
.data 3376 3376 0 0.0
.rodata 86738 86738 0 0.0
.text 583972 583988 16 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 588426 588434 8 0.0
.app_xip_area 464772 464780 8 0.0
.bss 66112 66112 0 0.0
.data 728 728 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592238 592246 8 0.0
.app_xip_area 463288 463296 8 0.0
.bss 71400 71400 0 0.0
.data 736 736 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 551670 551686 16 0.0
.app_xip_area 433512 433528 16 0.0
.bss 60656 60656 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w contact k32w0+release (read/write) 662652 662668 16 0.0
.bss 77032 77032 0 0.0
.data 2104 2104 0 0.0
.text 564404 564420 16 0.0
light k32w0+release (read/write) 673216 673232 16 0.0
.bss 74824 74824 0 0.0
.data 2060 2060 0 0.0
.text 593604 593620 16 0.0
lock k32w0+release (read/write) 634188 634204 16 0.0
.bss 75584 75584 0 0.0
.data 2080 2080 0 0.0
.text 553796 553812 16 0.0
linux chip-tool-ipv6only arm64 (read only) 10582156 10582268 112 0.0
(read/write) 691560 691560 0 0.0
.bss 33912 33912 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 636008 636008 0 0.0
.dynamic 560 560 0 0.0
.got 13824 13824 0 0.0
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 535068 535084 16 0.0
.text 8412356 8412452 96 0.0
thermostat-no-ble arm64 (read only) 2477308 2477436 128 0.0
(read/write) 144936 144936 0 0.0
.bss 55336 55336 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 78568 78568 0 0.0
.dynamic 560 560 0 0.0
.got 5184 5184 0 0.0
.init 24 24 0 0.0
.init_array 432 432 0 0.0
.rodata 149416 149448 32 0.0
.text 2067456 2067552 96 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2463616 2463616 0 0.0
.bss 214932 214932 0 0.0
.data 5872 5872 0 0.0
.text 1426260 1426260 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1190807 1190823 16 0.0
bss 145205 145205 0 0.0
rodata 144460 144460 0 0.0
text 820026 820038 12 0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1361070 1361086 16 0.0
bss 105144 105144 0 0.0
rodata 211556 211556 0 0.0
text 759866 759878 12 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1136467 1136467 0 0.0
bss 144440 144440 0 0.0
rodata 120776 120776 0 0.0
text 790194 790206 12 0.0
psoc6 all-clusters cy8ckit_062s2_43012 0 0 0 0.0
(read only) 842056 842056 0 0.0
(read/write) 1749412 1749412 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188624 188624 0 0.0
.comment 200 200 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 1238100 1238142 42 0.0
.debug_aranges 110768 110768 0 0.0
.debug_frame 371948 371952 4 0.0
.debug_info 27059201 27059505 304 0.0
.debug_line 3709401 3709486 85 0.0
.debug_loc 3624482 3624525 43 0.0
.debug_ranges 346528 346528 0 0.0
.debug_str 3450873 3450890 17 0.0
.heap 842056 842056 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 571935 571935 0 0.0
.symtab 422128 422128 0 0.0
.text 1549736 1549736 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 0 0 0 0.0
(read only) 842784 842784 0 0.0
(read/write) 1691932 1691948 16 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187896 187896 0 0.0
.comment 200 200 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 1229991 1230033 42 0.0
.debug_aranges 110240 110240 0 0.0
.debug_frame 375004 375008 4 0.0
.debug_info 26795999 26796304 305 0.0
.debug_line 3728306 3728391 85 0.0
.debug_loc 3612088 3612131 43 0.0
.debug_ranges 345144 345144 0 0.0
.debug_str 3439885 3439902 17 0.0
.heap 842784 842784 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 536024 536024 0 0.0
.symtab 408560 408560 0 0.0
.text 1492984 1493000 16 0.0
.zero.table 8 8 0 0.0
light cy8ckit_062s2_43012 0 0 0 0.0
(read only) 850976 850976 0 0.0
(read/write) 1610140 1610140 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179912 179912 0 0.0
.comment 200 200 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 1064790 1064832 42 0.0
.debug_aranges 102440 102440 0 0.0
.debug_frame 345340 345344 4 0.0
.debug_info 22258615 22258917 302 0.0
.debug_line 3295415 3295500 85 0.0
.debug_loc 3310011 3310054 43 0.0
.debug_ranges 309280 309280 0 0.0
.debug_str 3245471 3245488 17 0.0
.heap 850976 850976 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 472349 472349 0 0.0
.symtab 376928 376928 0 0.0
.text 1419384 1419384 0 0.0
.zero.table 8 8 0 0.0
lock cy8ckit_062s2_43012 0 0 0 0.0
(read only) 845984 845984 0 0.0
(read/write) 1644084 1644084 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184888 184888 0 0.0
.comment 200 200 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 1066700 1066742 42 0.0
.debug_aranges 102824 102824 0 0.0
.debug_frame 347136 347140 4 0.0
.debug_info 22476999 22477305 306 0.0
.debug_line 3295309 3295394 85 0.0
.debug_loc 3331442 3331485 43 0.0
.debug_ranges 311136 311136 0 0.0
.debug_str 3261309 3261326 17 0.0
.heap 845984 845984 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 475066 475066 0 0.0
.symtab 378928 378928 0 0.0
.text 1448336 1448336 0 0.0
.zero.table 8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1151172 1151196 24 0.0
.bss 100348 100348 0 0.0
.data 840 840 0 0.0
.text 598272 598296 24 0.0
lock-app qpg6105+debug (read/write) 1117476 1117492 16 0.0
.bss 95828 95828 0 0.0
.data 836 836 0 0.0
.text 564572 564588 16 0.0
telink all-clusters-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1071328 1071344 16 0.0
bss 98856 98856 0 0.0
text 726142 726160 18 0.0
all-clusters-minimal-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1010636 1010652 16 0.0
bss 98080 98080 0 0.0
text 691306 691322 16 0.0
light-switch-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 932092 932116 24 0.0
bss 90320 90320 0 0.0
text 637928 637946 18 0.0
lighting-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1010060 1010084 24 0.0
bss 98380 98380 0 0.0
text 703704 703722 18 0.0
ota-requestor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 945688 945704 16 0.0
bss 91276 91276 0 0.0
text 649188 649200 12 0.0
thermostat tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 935232 935248 16 0.0
bss 91712 91712 0 0.0
text 638614 638630 16 0.0

If a ReadHandler failed out of SendReportData (e.g. because the session it's on
had been marked as defunct), we would increment mNumReportsInFlight and never
decrement it.  After this happened CHIP_IM_MAX_REPORTS_IN_FLIGHT times (4 by
default), we would stop being able to send out any more data reports.

This situation is pretty easy to trigger as follows:

1. Use chip-tool to commission a device with node id 17.
2. Start chip-tool interactive mode.
3. Run the following commands in interactive mode:

   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 2 17 1 --keepSubscriptions true

4. quit interactive mode (Ctrl-C or quit() command).
5. Wait 60 seconds for all the subscriptions to error out.

After this the device will no longer respond with data reports to any
read or subscribe requests.
@bzbarsky-apple bzbarsky-apple force-pushed the fix-readhandler-count-management branch from 9541715 to 549b840 Compare December 15, 2022 15:35
@github-actions
Copy link

github-actions bot commented Dec 15, 2022

PR #24093: Size comparison from 1c87f62 to 549b840

Increases (47 builds for bl602, bl702, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, nrfconnect, psoc6, qpg, telink)
platform target config section 1c87f62 549b840 change % change
bl602 lighting-app bl602 (read/write) 1356258 1356274 16 0.0
.text 1039050 1039066 16 0.0
bl602+rpc (read/write) 1402034 1402058 24 0.0
.text 1070472 1070492 20 0.0
bl702 lighting-app bl702 (read/write) 1196159 1196175 16 0.0
.debug_abbrev 1529020 1529044 24 0.0
.debug_frame 486468 486472 4 0.0
.debug_info 39187068 39187302 234 0.0
.debug_line 5149996 5150090 94 0.0
.debug_str 3480446 3480463 17 0.0
.text 956738 956756 18 0.0
bl702+rpc (read/write) 1284651 1284667 16 0.0
.debug_abbrev 1676352 1676376 24 0.0
.debug_frame 513888 513892 4 0.0
.debug_info 43479487 43479721 234 0.0
.debug_line 5539445 5539539 94 0.0
.debug_str 3882844 3882861 17 0.0
.text 1030718 1030736 18 0.0
cc13x2_26x2 all-clusters-minimal-app LP_CC2652R7 (read only) 644075 644083 8 0.0
.text 564616 564624 8 0.0
lock-ftd LP_CC2652R7 (read only) 677343 677359 16 0.0
.text 599440 599456 16 0.0
lock-mtd LP_CC2652R7 (read only) 662139 662147 8 0.0
.text 558152 558160 8 0.0
pump-app LP_CC2652R7 (read only) 690271 690279 8 0.0
.text 598844 598852 8 0.0
pump-controller-app LP_CC2652R7 (read only) 674179 674187 8 0.0
.text 587200 587208 8 0.0
shell LP_CC2652R7 (read only) 671026 671042 16 0.0
.text 583972 583988 16 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 588426 588434 8 0.0
.app_xip_area 464772 464780 8 0.0
lock cyw930739m2evb_01 (read/write) 592238 592246 8 0.0
.app_xip_area 463288 463296 8 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 551670 551686 16 0.0
.app_xip_area 433512 433528 16 0.0
efr32 lighting-app BRD4161A+rpc (read/write) 976292 976308 16 0.0
.text 821932 821948 16 0.0
BRD4161A+rs911x (read/write) 1038648 1038664 16 0.0
.text 849968 849984 16 0.0
esp32 all-clusters-app c3devkit (read only) 1219358 1219372 14 0.0
.flash.text 1219358 1219372 14 0.0
k32w contact k32w0+release (read/write) 662652 662668 16 0.0
.text 564404 564420 16 0.0
light k32w0+release (read/write) 673216 673232 16 0.0
.text 593604 593620 16 0.0
lock k32w0+release (read/write) 634188 634204 16 0.0
.text 553796 553812 16 0.0
linux all-clusters-app debug (read only) 3113817 3113897 80 0.0
.rodata 281419 281451 32 0.0
.text 2647810 2647858 48 0.0
all-clusters-minimal-app debug (read only) 2937497 2937577 80 0.0
.rodata 280875 280907 32 0.0
.text 2475074 2475122 48 0.0
bridge-app debug (read only) 2475337 2475417 80 0.0
.rodata 211648 211680 32 0.0
.text 2093906 2093954 48 0.0
chip-tool debug (read only) 11169081 11169129 48 0.0
.text 9078292 9078340 48 0.0
chip-tool-ipv6only arm64 (read only) 10582156 10582268 112 0.0
.rodata 535068 535084 16 0.0
.text 8412356 8412452 96 0.0
lighting-app debug+rpc (read only) 2663697 2663793 96 0.0
.rodata 228064 228096 32 0.0
.text 2258978 2259042 64 0.0
lock-app debug (read only) 2622745 2622825 80 0.0
.rodata 244296 244328 32 0.0
.text 2206642 2206690 48 0.0
ota-provider-app debug (read only) 2189433 2189513 80 0.0
.rodata 195176 195208 32 0.0
.text 1854642 1854690 48 0.0
ota-requestor-app debug (read only) 2358185 2358265 80 0.0
.rodata 202320 202352 32 0.0
.text 2007058 2007106 48 0.0
shell debug (read only) 2646273 2646369 96 0.0
.rodata 239666 239698 32 0.0
.text 2246994 2247058 64 0.0
thermostat-no-ble arm64 (read only) 2477308 2477436 128 0.0
.rodata 149416 149448 32 0.0
.text 2067456 2067552 96 0.0
tv-app debug (read only) 3285777 3285857 80 0.0
.rodata 268664 268696 32 0.0
.text 2823026 2823074 48 0.0
tv-casting-app debug (read only) 5644873 5644953 80 0.0
.rodata 359129 359161 32 0.0
.text 5008562 5008610 48 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1190807 1190823 16 0.0
text 820022 820038 16 0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1361070 1361086 16 0.0
text 759866 759874 8 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1136451 1136467 16 0.0
text 790190 790206 16 0.0
psoc6 all-clusters cy8ckit_062s2_43012 .debug_abbrev 1238100 1238142 42 0.0
.debug_frame 371948 371952 4 0.0
.debug_info 27059202 27059506 304 0.0
.debug_line 3709401 3709486 85 0.0
.debug_loc 3624482 3624525 43 0.0
.debug_str 3450873 3450890 17 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1691932 1691948 16 0.0
.debug_abbrev 1229991 1230033 42 0.0
.debug_frame 375004 375008 4 0.0
.debug_info 26796000 26796304 304 0.0
.debug_line 3728306 3728391 85 0.0
.debug_loc 3612088 3612131 43 0.0
.debug_str 3439885 3439902 17 0.0
.text 1492984 1493000 16 0.0
light cy8ckit_062s2_43012 .debug_abbrev 1064790 1064832 42 0.0
.debug_frame 345340 345344 4 0.0
.debug_info 22258613 22258918 305 0.0
.debug_line 3295415 3295500 85 0.0
.debug_loc 3310011 3310054 43 0.0
.debug_str 3245471 3245488 17 0.0
lock cy8ckit_062s2_43012 .debug_abbrev 1066700 1066742 42 0.0
.debug_frame 347136 347140 4 0.0
.debug_info 22477000 22477304 304 0.0
.debug_line 3295309 3295394 85 0.0
.debug_loc 3331442 3331485 43 0.0
.debug_str 3261309 3261326 17 0.0
qpg lighting-app qpg6105+debug (read/write) 1151180 1151196 16 0.0
.text 598280 598296 16 0.0
lock-app qpg6105+debug (read/write) 1117476 1117492 16 0.0
.text 564572 564588 16 0.0
telink all-clusters-app tlsr9518adk80d (read/write) 1071328 1071352 24 0.0
text 726144 726162 18 0.0
all-clusters-minimal-app tlsr9518adk80d (read/write) 1010636 1010652 16 0.0
text 691306 691322 16 0.0
light-switch-app tlsr9518adk80d (read/write) 932100 932108 8 0.0
text 637932 637944 12 0.0
lighting-app tlsr9518adk80d (read/write) 1010068 1010076 8 0.0
text 703708 703720 12 0.0
ota-requestor-app tlsr9518adk80d (read/write) 945688 945704 16 0.0
text 649188 649200 12 0.0
thermostat tlsr9518adk80d (read/write) 935232 935248 16 0.0
text 638614 638632 18 0.0
Decreases (7 builds for bl702, cc13x2_26x2)
platform target config section 1c87f62 549b840 change % change
bl702 lighting-app bl702 .debug_loc 3381237 3381165 -72 -0.0
bl702+rpc .debug_loc 3575958 3575886 -72 -0.0
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 171664 171648 -16 -0.0
lock-mtd LP_CC2652R7 (read/write) 182132 182124 -8 -0.0
pump-app LP_CC2652R7 (read/write) 159472 159464 -8 -0.0
pump-controller-app LP_CC2652R7 (read/write) 175668 175660 -8 -0.0
shell LP_CC2652R7 (read/write) 182748 182732 -16 -0.0
Full report (53 builds for bl602, bl702, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section 1c87f62 549b840 change % change
bl602 lighting-app bl602 (read/write) 1356258 1356274 16 0.0
.bss 86977 86977 0 0.0
.data 9984 9984 0 0.0
.text 1039050 1039066 16 0.0
bl602+rpc (read/write) 1402034 1402058 24 0.0
.bss 95017 95017 0 0.0
.data 10384 10384 0 0.0
.text 1070472 1070492 20 0.0
bl702 lighting-app bl702 (read only) 3262 3262 0 0.0
(read/write) 1196159 1196175 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 30048 30048 0 0.0
.comment 48 48 0 0.0
.data 4048 4048 0 0.0
.debug_abbrev 1529020 1529044 24 0.0
.debug_aranges 132568 132568 0 0.0
.debug_frame 486468 486472 4 0.0
.debug_info 39187068 39187302 234 0.0
.debug_line 5149996 5150090 94 0.0
.debug_loc 3381237 3381165 -72 -0.0
.debug_ranges 363808 363808 0 0.0
.debug_str 3480446 3480463 17 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 116352 116352 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 569095 569095 0 0.0
.symtab 172176 172176 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
956738 956756 18 0.0
bl702+rpc (read only) 3262 3262 0 0.0
(read/write) 1284651 1284667 16 0.0
.bleromro 6296 6296 0 0.0
.bleromrw 124 124 0 0.0
.boot2 688 688 0 0.0
.bss 75118 75118 0 0.0
.bss_psram 30304 30304 0 0.0
.comment 48 48 0 0.0
.data 4576 4576 0 0.0
.debug_abbrev 1676352 1676376 24 0.0
.debug_aranges 140688 140688 0 0.0
.debug_frame 513888 513892 4 0.0
.debug_info 43479487 43479721 234 0.0
.debug_line 5539445 5539539 94 0.0
.debug_loc 3575958 3575886 -72 -0.0
.debug_ranges 387344 387344 0 0.0
.debug_str 3882844 3882861 17 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 130112 130112 0 0.0
.rsvd 3188 3188 0 0.0
.shstrtab 293 293 0 0.0
.stack 2048 2048 0 0.0
.strtab 629379 629379 0 0.0
.symtab 190352 190352 0 0.0
.tcm_data 36 36 0 0.0
.tcmcode 3262 3262 0 0.0
.text 0 0 0 0.0
1030718 1030736 18 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 679811 679811 0 0.0
(read/write) 171636 171636 0 0.0
.bss 81140 81140 0 0.0
.data 3380 3380 0 0.0
.rodata 90003 90003 0 0.0
.text 589496 589496 0 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 644075 644083 8 0.0
(read/write) 157916 157916 0 0.0
.bss 80420 80420 0 0.0
.data 3380 3380 0 0.0
.rodata 79139 79139 0 0.0
.text 564616 564624 8 0.0
lock-ftd LP_CC2652R7 (read only) 677343 677359 16 0.0
(read/write) 171664 171648 -16 -0.0
.bss 78788 78788 0 0.0
.data 3304 3304 0 0.0
.rodata 77423 77423 0 0.0
.text 599440 599456 16 0.0
lock-mtd LP_CC2652R7 (read only) 662139 662147 8 0.0
(read/write) 182132 182124 -8 -0.0
.bss 74052 74052 0 0.0
.data 3304 3304 0 0.0
.rodata 103507 103507 0 0.0
.text 558152 558160 8 0.0
pump-app LP_CC2652R7 (read only) 690271 690279 8 0.0
(read/write) 159472 159464 -8 -0.0
.bss 78756 78756 0 0.0
.data 3296 3296 0 0.0
.rodata 90943 90943 0 0.0
.text 598844 598852 8 0.0
pump-controller-app LP_CC2652R7 (read only) 674179 674187 8 0.0
(read/write) 175668 175660 -8 -0.0
.bss 78860 78860 0 0.0
.data 3292 3292 0 0.0
.rodata 86499 86499 0 0.0
.text 587200 587208 8 0.0
shell LP_CC2652R7 (read only) 671026 671042 16 0.0
(read/write) 182748 182732 -16 -0.0
.bss 83468 83468 0 0.0
.data 3376 3376 0 0.0
.rodata 86738 86738 0 0.0
.text 583972 583988 16 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 588426 588434 8 0.0
.app_xip_area 464772 464780 8 0.0
.bss 66112 66112 0 0.0
.data 728 728 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592238 592246 8 0.0
.app_xip_area 463288 463296 8 0.0
.bss 71400 71400 0 0.0
.data 736 736 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 551670 551686 16 0.0
.app_xip_area 433512 433528 16 0.0
.bss 60656 60656 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rpc (read/write) 976292 976308 16 0.0
.bss 152172 152172 0 0.0
.data 2168 2168 0 0.0
.text 821932 821948 16 0.0
BRD4161A+rs911x (read/write) 1038648 1038664 16 0.0
.bss 186648 186648 0 0.0
.data 2012 2012 0 0.0
.text 849968 849984 16 0.0
BRD4187C (read/write) 1149676 1149676 0 0.0
.bss 138568 138568 0 0.0
.data 2516 2516 0 0.0
.text 983996 983996 0 0.0
lock-app BRD4161A+wf200 (read/write) 1069088 1069088 0 0.0
.bss 158184 158184 0 0.0
.data 2020 2020 0 0.0
.text 908860 908860 0 0.0
window-app BRD4187C (read/write) 1142312 1142312 0 0.0
.bss 139984 139984 0 0.0
.data 2540 2540 0 0.0
.text 975192 975192 0 0.0
esp32 all-clusters-app c3devkit (read only) 1219358 1219372 14 0.0
(read/write) 1790858 1790858 0 0.0
.dram0.bss 76912 76912 0 0.0
.dram0.data 13928 13928 0 0.0
.flash.rodata 248296 248296 0 0.0
.flash.text 1219358 1219372 14 0.0
.iram0.text 71188 71188 0 0.0
m5stack (read only) 1233347 1233347 0 0.0
(read/write) 564103 564103 0 0.0
.dram0.bss 82064 82064 0 0.0
.dram0.data 34224 34224 0 0.0
.flash.rodata 314096 314096 0 0.0
.flash.text 1227963 1227963 0 0.0
.iram0.text 124803 124803 0 0.0
k32w contact k32w0+release (read/write) 662652 662668 16 0.0
.bss 77032 77032 0 0.0
.data 2104 2104 0 0.0
.text 564404 564420 16 0.0
light k32w0+release (read/write) 673216 673232 16 0.0
.bss 74824 74824 0 0.0
.data 2060 2060 0 0.0
.text 593604 593620 16 0.0
lock k32w0+release (read/write) 634188 634204 16 0.0
.bss 75584 75584 0 0.0
.data 2080 2080 0 0.0
.text 553796 553812 16 0.0
linux all-clusters-app debug (read only) 3113817 3113897 80 0.0
(read/write) 158504 158504 0 0.0
.bss 62464 62464 0 0.0
.data 2304 2304 0 0.0
.data.rel.ro 87160 87160 0 0.0
.dynamic 608 608 0 0.0
.got 4768 4768 0 0.0
.init 27 27 0 0.0
.init_array 1184 1184 0 0.0
.rodata 281419 281451 32 0.0
.text 2647810 2647858 48 0.0
all-clusters-minimal-app debug (read only) 2937497 2937577 80 0.0
(read/write) 149936 149936 0 0.0
.bss 61664 61664 0 0.0
.data 2272 2272 0 0.0
.data.rel.ro 79528 79528 0 0.0
.dynamic 608 608 0 0.0
.got 4680 4680 0 0.0
.init 27 27 0 0.0
.init_array 1160 1160 0 0.0
.rodata 280875 280907 32 0.0
.text 2475074 2475122 48 0.0
bridge-app debug (read only) 2475337 2475417 80 0.0
(read/write) 131280 131280 0 0.0
.bss 51488 51488 0 0.0
.data 3792 3792 0 0.0
.data.rel.ro 69928 69928 0 0.0
.dynamic 608 608 0 0.0
.got 4576 4576 0 0.0
.init 27 27 0 0.0
.init_array 840 840 0 0.0
.rodata 211648 211680 32 0.0
.text 2093906 2093954 48 0.0
chip-tool debug (read only) 11169081 11169129 48 0.0
(read/write) 642424 642424 0 0.0
.bss 25912 25912 0 0.0
.data 2754 2754 0 0.0
.data.rel.ro 607200 607200 0 0.0
.dynamic 608 608 0 0.0
.got 5184 5184 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 604933 604933 0 0.0
.text 9078292 9078340 48 0.0
chip-tool-ipv6only arm64 (read only) 10582156 10582268 112 0.0
(read/write) 691560 691560 0 0.0
.bss 33912 33912 0 0.0
.data 2768 2768 0 0.0
.data.rel.ro 636008 636008 0 0.0
.dynamic 560 560 0 0.0
.got 13824 13824 0 0.0
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 535068 535084 16 0.0
.text 8412356 8412452 96 0.0
lighting-app debug+rpc (read only) 2663697 2663793 96 0.0
(read/write) 132424 132424 0 0.0
.bss 49984 49984 0 0.0
.data 2288 2288 0 0.0
.data.rel.ro 73944 73944 0 0.0
.dynamic 608 608 0 0.0
.got 4632 4632 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 228064 228096 32 0.0
.text 2258978 2259042 64 0.0
lock-app debug (read only) 2622745 2622825 80 0.0
(read/write) 127408 127408 0 0.0
.bss 48416 48416 0 0.0
.data 1904 1904 0 0.0
.data.rel.ro 70872 70872 0 0.0
.dynamic 608 608 0 0.0
.got 4664 4664 0 0.0
.init 27 27 0 0.0
.init_array 904 904 0 0.0
.rodata 244296 244328 32 0.0
.text 2206642 2206690 48 0.0
ota-provider-app debug (read only) 2189433 2189513 80 0.0
(read/write) 105544 105544 0 0.0
.bss 46560 46560 0 0.0
.data 2080 2080 0 0.0
.data.rel.ro 51800 51800 0 0.0
.dynamic 608 608 0 0.0
.got 3728 3728 0 0.0
.init 27 27 0 0.0
.init_array 736 736 0 0.0
.rodata 195176 195208 32 0.0
.text 1854642 1854690 48 0.0
ota-requestor-app debug (read only) 2358185 2358265 80 0.0
(read/write) 113888 113888 0 0.0
.bss 49088 49088 0 0.0
.data 2448 2448 0 0.0
.data.rel.ro 57144 57144 0 0.0
.dynamic 608 608 0 0.0
.got 3728 3728 0 0.0
.init 27 27 0 0.0
.init_array 824 824 0 0.0
.rodata 202320 202352 32 0.0
.text 2007058 2007106 48 0.0
shell debug (read only) 2646273 2646369 96 0.0
(read/write) 143000 143000 0 0.0
.bss 57864 57864 0 0.0
.data 1264 1264 0 0.0
.data.rel.ro 78056 78056 0 0.0
.dynamic 608 608 0 0.0
.got 4128 4128 0 0.0
.init 27 27 0 0.0
.init_array 1032 1032 0 0.0
.rodata 239666 239698 32 0.0
.text 2246994 2247058 64 0.0
thermostat-no-ble arm64 (read only) 2477308 2477436 128 0.0
(read/write) 144936 144936 0 0.0
.bss 55336 55336 0 0.0
.data 1816 1816 0 0.0
.data.rel.ro 78568 78568 0 0.0
.dynamic 560 560 0 0.0
.got 5184 5184 0 0.0
.init 24 24 0 0.0
.init_array 432 432 0 0.0
.rodata 149416 149448 32 0.0
.text 2067456 2067552 96 0.0
tv-app debug (read only) 3285777 3285857 80 0.0
(read/write) 262152 262152 0 0.0
.bss 170808 170808 0 0.0
.data 4256 4256 0 0.0
.data.rel.ro 80408 80408 0 0.0
.dynamic 608 608 0 0.0
.got 5000 5000 0 0.0
.init 27 27 0 0.0
.init_array 1064 1064 0 0.0
.rodata 268664 268696 32 0.0
.text 2823026 2823074 48 0.0
tv-casting-app debug (read only) 5644873 5644953 80 0.0
(read/write) 162512 162512 0 0.0
.bss 52184 52184 0 0.0
.data 1936 1936 0 0.0
.data.rel.ro 101784 101784 0 0.0
.dynamic 608 608 0 0.0
.got 4920 4920 0 0.0
.init 27 27 0 0.0
.init_array 1040 1040 0 0.0
.rodata 359129 359161 32 0.0
.text 5008562 5008610 48 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2463616 2463616 0 0.0
.bss 214932 214932 0 0.0
.data 5872 5872 0 0.0
.text 1426260 1426260 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1190807 1190823 16 0.0
bss 145205 145205 0 0.0
rodata 144460 144460 0 0.0
text 820022 820038 16 0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1361070 1361086 16 0.0
bss 105144 105144 0 0.0
rodata 211556 211556 0 0.0
text 759866 759874 8 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1136451 1136467 16 0.0
bss 144440 144440 0 0.0
rodata 120776 120776 0 0.0
text 790190 790206 16 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 842056 842056 0 0.0
(read/write) 1749412 1749412 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188624 188624 0 0.0
.comment 200 200 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 1238100 1238142 42 0.0
.debug_aranges 110768 110768 0 0.0
.debug_frame 371948 371952 4 0.0
.debug_info 27059202 27059506 304 0.0
.debug_line 3709401 3709486 85 0.0
.debug_loc 3624482 3624525 43 0.0
.debug_ranges 346528 346528 0 0.0
.debug_str 3450873 3450890 17 0.0
.heap 842056 842056 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 571935 571935 0 0.0
.symtab 422128 422128 0 0.0
.text 0 0 0 0.0
1549736 1549736 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 842784 842784 0 0.0
(read/write) 1691932 1691948 16 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187896 187896 0 0.0
.comment 200 200 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 1229991 1230033 42 0.0
.debug_aranges 110240 110240 0 0.0
.debug_frame 375004 375008 4 0.0
.debug_info 26796000 26796304 304 0.0
.debug_line 3728306 3728391 85 0.0
.debug_loc 3612088 3612131 43 0.0
.debug_ranges 345144 345144 0 0.0
.debug_str 3439885 3439902 17 0.0
.heap 842784 842784 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 536024 536024 0 0.0
.symtab 408560 408560 0 0.0
.text 1492984 1493000 16 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 850976 850976 0 0.0
(read/write) 1610140 1610140 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179912 179912 0 0.0
.comment 200 200 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 1064790 1064832 42 0.0
.debug_aranges 102440 102440 0 0.0
.debug_frame 345340 345344 4 0.0
.debug_info 22258613 22258918 305 0.0
.debug_line 3295415 3295500 85 0.0
.debug_loc 3310011 3310054 43 0.0
.debug_ranges 309280 309280 0 0.0
.debug_str 3245471 3245488 17 0.0
.heap 850976 850976 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 472349 472349 0 0.0
.symtab 376928 376928 0 0.0
.text 1419384 1419384 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 845984 845984 0 0.0
(read/write) 1644084 1644084 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184888 184888 0 0.0
.comment 200 200 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 1066700 1066742 42 0.0
.debug_aranges 102824 102824 0 0.0
.debug_frame 347136 347140 4 0.0
.debug_info 22477000 22477304 304 0.0
.debug_line 3295309 3295394 85 0.0
.debug_loc 3331442 3331485 43 0.0
.debug_ranges 311136 311136 0 0.0
.debug_str 3261309 3261326 17 0.0
.heap 845984 845984 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 475066 475066 0 0.0
.symtab 378928 378928 0 0.0
.text 1448336 1448336 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1151180 1151196 16 0.0
.bss 100348 100348 0 0.0
.data 840 840 0 0.0
.text 598280 598296 16 0.0
lock-app qpg6105+debug (read/write) 1117476 1117492 16 0.0
.bss 95828 95828 0 0.0
.data 836 836 0 0.0
.text 564572 564588 16 0.0
telink all-clusters-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1071328 1071352 24 0.0
bss 98856 98856 0 0.0
text 726144 726162 18 0.0
all-clusters-minimal-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1010636 1010652 16 0.0
bss 98080 98080 0 0.0
text 691306 691322 16 0.0
light-switch-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 932100 932108 8 0.0
bss 90320 90320 0 0.0
text 637932 637944 12 0.0
lighting-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1010068 1010076 8 0.0
bss 98380 98380 0 0.0
text 703708 703720 12 0.0
ota-requestor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 945688 945704 16 0.0
bss 91276 91276 0 0.0
text 649188 649200 12 0.0
thermostat tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 935232 935248 16 0.0
bss 91712 91712 0 0.0
text 638614 638632 18 0.0

@bzbarsky-apple bzbarsky-apple merged commit 23f0824 into project-chip:master Dec 16, 2022
@bzbarsky-apple bzbarsky-apple deleted the fix-readhandler-count-management branch December 16, 2022 12:58
bzbarsky-apple added a commit to bzbarsky-apple/connectedhomeip that referenced this pull request Dec 16, 2022
bzbarsky-apple added a commit to bzbarsky-apple/connectedhomeip that referenced this pull request Dec 16, 2022
…roject-chip#24093)

If a ReadHandler failed out of SendReportData (e.g. because the session it's on
had been marked as defunct), we would increment mNumReportsInFlight and never
decrement it.  After this happened CHIP_IM_MAX_REPORTS_IN_FLIGHT times (4 by
default), we would stop being able to send out any more data reports.

This situation is pretty easy to trigger as follows:

1. Use chip-tool to commission a device with node id 17.
2. Start chip-tool interactive mode.
3. Run the following commands in interactive mode:

   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 2 17 1 --keepSubscriptions true

4. quit interactive mode (Ctrl-C or quit() command).
5. Wait 60 seconds for all the subscriptions to error out.

After this the device will no longer respond with data reports to any
read or subscribe requests.
bzbarsky-apple added a commit to bzbarsky-apple/connectedhomeip that referenced this pull request Dec 16, 2022
woody-apple pushed a commit that referenced this pull request Dec 16, 2022
…24093) (#24114)

* Fix management of the mNumReportsInFlight count in reporting engine. (#24093)

If a ReadHandler failed out of SendReportData (e.g. because the session it's on
had been marked as defunct), we would increment mNumReportsInFlight and never
decrement it.  After this happened CHIP_IM_MAX_REPORTS_IN_FLIGHT times (4 by
default), we would stop being able to send out any more data reports.

This situation is pretty easy to trigger as follows:

1. Use chip-tool to commission a device with node id 17.
2. Start chip-tool interactive mode.
3. Run the following commands in interactive mode:

   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 60 17 1 --keepSubscriptions true
   onoff subscribe on-off 0 2 17 1 --keepSubscriptions true

4. quit interactive mode (Ctrl-C or quit() command).
5. Wait 60 seconds for all the subscriptions to error out.

After this the device will no longer respond with data reports to any
read or subscribe requests.

* Add a test for a subscription trying to send reports on a defunct session.

This is testing the situation described in
#24093

* add mNumReportsInFlight check test when failing to send report

Co-authored-by: yunhanw <[email protected]>
bzbarsky-apple added a commit to bzbarsky-apple/connectedhomeip that referenced this pull request Dec 16, 2022
woody-apple pushed a commit that referenced this pull request Dec 16, 2022
…sion. (#24113)

This is testing the situation described in
#24093
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.

3 participants