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

inet: ScopedLwIPLock for better safety and added locks at necessary places #28655

Merged
merged 4 commits into from
Aug 21, 2023

Conversation

shubhamdp
Copy link
Contributor

Related: #28590

Almost every platform other than ESP32 enables the config LWIP_TCPIP_CORE_LOCKING which ensures that the thread safety in the LwIP.

I enabled the same option on ESP32 platform along with one more, CONFIG_LWIP_CHECK_THREAD_SAFETY=y which asserts when LwIP code runs from non-LwIP task and added the lock/unlock which were missing in following APIs:

  • GetBoundInterface()
  • IPv4JoinLeaveMulticastGroupImpl()
  • IPv6JoinLeaveMulticastGroupImpl()

Added the RAII locking for LwIP core.

How was this tested

  • Enabled the configs LWIP_TCPIP_CORE_LOCKING and CONFIG_LWIP_CHECK_THREAD_SAFETY for ESP32C3.
  • Server side: lighting-app/esp32 and verified commissioning/cluster-control, read/write/wildcard-subscribe works.
  • Client side: light-switch-app/esp32 and verified commissioning, read/write/wildcard-subscribe works.
  • Installed the access control on server and bindings on client and verified those bits works as expected.

NOTE: I had to add lock in esp_route_hook_init() which consumes LwIP APIs.

Follow up PR: Default the LWIP_TCPIP_CORE_LOCKING and CONFIG_LWIP_CHECK_THREAD_SAFETY on ESP32.

@github-actions
Copy link

github-actions bot commented Aug 11, 2023

PR #28655: Size comparison from bf0b45a to fdd9753

Increases (5 builds for cc32xx, psoc6)
platform target config section bf0b45a fdd9753 change % change
cc32xx lock CC3235SF_LAUNCHXL (read only) 615466 615506 40 0.0
.debug_abbrev 962043 962084 41 0.0
.debug_info 19420028 19420986 958 0.0
.debug_line 2813100 2813289 189 0.0
.debug_loclists 1596372 1596637 265 0.0
.debug_str 3427157 3427182 25 0.0
.symtab 293168 293184 16 0.0
.text 507008 507048 40 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1768228 1768276 48 0.0
.debug_abbrev 1382789 1382830 41 0.0
.debug_frame 479472 479476 4 0.0
.debug_info 30256912 30257868 956 0.0
.debug_line 4148308 4148496 188 0.0
.debug_loclists 2248106 2248367 261 0.0
.debug_str 4124958 4124983 25 0.0
.symtab 500944 500960 16 0.0
.text 1564188 1564236 48 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1673876 1673924 48 0.0
.debug_abbrev 1285506 1285547 41 0.0
.debug_frame 462420 462424 4 0.0
.debug_info 27225595 27226551 956 0.0
.debug_line 3959672 3959860 188 0.0
.debug_loclists 2148578 2148839 261 0.0
.debug_str 3979379 3979404 25 0.0
.symtab 465264 465280 16 0.0
.text 1471796 1471844 48 0.0
light cy8ckit_062s2_43012 (read/write) 1605564 1605596 32 0.0
.debug_abbrev 1125466 1125507 41 0.0
.debug_frame 425564 425568 4 0.0
.debug_info 22369207 22370163 956 0.0
.debug_line 3525605 3525793 188 0.0
.debug_loclists 1986021 1986282 261 0.0
.debug_str 3787451 3787476 25 0.0
.symtab 430064 430080 16 0.0
.text 1409748 1409780 32 0.0
lock cy8ckit_062s2_43012 (read/write) 1639292 1639324 32 0.0
.debug_abbrev 1116856 1116897 41 0.0
.debug_frame 421588 421592 4 0.0
.debug_info 22283725 22284683 958 0.0
.debug_line 3481350 3481538 188 0.0
.debug_loclists 1966688 1966949 261 0.0
.debug_str 3751989 3752014 25 0.0
.symtab 422352 422368 16 0.0
.text 1415956 1415988 32 0.0
Decreases (1 build for nrfconnect)
platform target config section bf0b45a fdd9753 change % change
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1220544 1220528 -16 -0.0
text 845412 845408 -4 -0.0
Full report (20 builds for cc32xx, cyw30739, k32w, linux, mbed, nrfconnect, psoc6, qpg)
platform target config section bf0b45a fdd9753 change % change
cc32xx lock CC3235SF_LAUNCHXL (blank) 0 0 0 0.0
(read only) 615466 615506 40 0.0
(read/write) 207744 207744 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 201184 201184 0 0.0
.comment 206 206 0 0.0
.data 1440 1440 0 0.0
.debug_abbrev 962043 962084 41 0.0
.debug_aranges 109056 109056 0 0.0
.debug_frame 369852 369852 0 0.0
.debug_info 19420028 19420986 958 0.0
.debug_line 2813100 2813289 189 0.0
.debug_line_str 513 513 0 0.0
.debug_loc 33340 33340 0 0.0
.debug_loclists 1596372 1596637 265 0.0
.debug_ranges 4984 4984 0 0.0
.debug_rnglists 100544 100544 0 0.0
.debug_str 3427157 3427182 25 0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 106338 106338 0 0.0
.shstrtab 265 265 0 0.0
.stack 2048 2048 0 0.0
.strtab 496472 496472 0 0.0
.symtab 293168 293184 16 0.0
.text 507008 507048 40 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 551335 551335 0 0.0
.app_xip_area 442625 442625 0 0.0
.bss 63728 63728 0 0.0
.data 664 664 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 538383 538383 0 0.0
.app_xip_area 424625 424625 0 0.0
.bss 68752 68752 0 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 573991 573991 0 0.0
.app_xip_area 466361 466361 0 0.0
.bss 62720 62720 0 0.0
.data 592 592 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
switch cyw930739m2evb_01 (read/write) 549999 549999 0 0.0
.app_xip_area 439361 439361 0 0.0
.bss 65632 65632 0 0.0
.data 688 688 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w contact k32w0+release (read only) 590876 590876 0 0.0
(read/write) 88096 88096 0 0.0
.bss 71344 71344 0 0.0
.data 2128 2128 0 0.0
.text 590340 590340 0 0.0
light k32w0+release (read only) 589660 589660 0 0.0
(read/write) 87748 87748 0 0.0
.bss 71008 71008 0 0.0
.data 2116 2116 0 0.0
.text 589124 589124 0 0.0
lock k32w0+release (read only) 562076 562076 0 0.0
(read/write) 85548 85548 0 0.0
.bss 68864 68864 0 0.0
.data 2060 2060 0 0.0
.text 561540 561540 0 0.0
linux chip-tool-ipv6only arm64 (read only) 16771300 16771300 0 0.0
(read/write) 1110520 1110520 0 0.0
.bss 103064 103064 0 0.0
.data 4392 4392 0 0.0
.data.rel.ro 974328 974328 0 0.0
.dynamic 512 512 0 0.0
.got 23248 23248 0 0.0
.init 24 24 0 0.0
.init_array 248 248 0 0.0
.rodata 804576 804576 0 0.0
.text 13756024 13756024 0 0.0
thermostat-no-ble arm64 (read only) 4447828 4447828 0 0.0
(read/write) 243848 243848 0 0.0
.bss 122280 122280 0 0.0
.data 2880 2880 0 0.0
.data.rel.ro 102232 102232 0 0.0
.dynamic 512 512 0 0.0
.got 11984 11984 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 162172 162172 0 0.0
.text 3947576 3947576 0 0.0
mbed lock-app-release cy8cproto_062_4343w (read only) 6224 6224 0 0.0
(read/write) 2522328 2522328 0 0.0
.bss 219904 219904 0 0.0
.data 5128 5128 0 0.0
.text 1485012 1485012 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1220544 1220528 -16 -0.0
bss 154612 154612 0 0.0
rodata 141556 141556 0 0.0
text 845412 845408 -4 -0.0
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1339616 1339616 0 0.0
bss 140070 140070 0 0.0
rodata 136024 136024 0 0.0
text 772836 772836 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1157216 1157216 0 0.0
bss 154791 154791 0 0.0
rodata 112924 112924 0 0.0
text 810512 810512 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 837688 837688 0 0.0
(read/write) 1768228 1768276 48 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 193116 193116 0 0.0
.comment 212 212 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 2536 2536 0 0.0
.debug_abbrev 1382789 1382830 41 0.0
.debug_aranges 143944 143944 0 0.0
.debug_frame 479472 479476 4 0.0
.debug_info 30256912 30257868 956 0.0
.debug_line 4148308 4148496 188 0.0
.debug_line_str 957 957 0 0.0
.debug_loclists 2248106 2248367 261 0.0
.debug_rnglists 142355 142355 0 0.0
.debug_str 4124958 4124983 25 0.0
.heap 837688 837688 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 806030 806030 0 0.0
.symtab 500944 500960 16 0.0
.text 0 0 0 0.0
1564188 1564236 48 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 839648 839648 0 0.0
(read/write) 1673876 1673924 48 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 191228 191228 0 0.0
.comment 212 212 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 2464 2464 0 0.0
.debug_abbrev 1285506 1285547 41 0.0
.debug_aranges 137208 137208 0 0.0
.debug_frame 462420 462424 4 0.0
.debug_info 27225595 27226551 956 0.0
.debug_line 3959672 3959860 188 0.0
.debug_line_str 981 981 0 0.0
.debug_loclists 2148578 2148839 261 0.0
.debug_rnglists 135453 135453 0 0.0
.debug_str 3979379 3979404 25 0.0
.heap 839648 839648 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 713481 713481 0 0.0
.symtab 465264 465280 16 0.0
.text 1471796 1471844 48 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 845912 845912 0 0.0
(read/write) 1605564 1605596 32 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 185076 185076 0 0.0
.comment 212 212 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 2352 2352 0 0.0
.debug_abbrev 1125466 1125507 41 0.0
.debug_aranges 127336 127336 0 0.0
.debug_frame 425564 425568 4 0.0
.debug_info 22369207 22370163 956 0.0
.debug_line 3525605 3525793 188 0.0
.debug_line_str 942 942 0 0.0
.debug_loclists 1986021 1986282 261 0.0
.debug_rnglists 125220 125220 0 0.0
.debug_str 3787451 3787476 25 0.0
.heap 845912 845912 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 634473 634473 0 0.0
.symtab 430064 430080 16 0.0
.text 1409748 1409780 32 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 818392 818392 0 0.0
(read/write) 1639292 1639324 32 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 212580 212580 0 0.0
.comment 212 212 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 2368 2368 0 0.0
.debug_abbrev 1116856 1116897 41 0.0
.debug_aranges 126248 126248 0 0.0
.debug_frame 421588 421592 4 0.0
.debug_info 22283725 22284683 958 0.0
.debug_line 3481350 3481538 188 0.0
.debug_line_str 933 933 0 0.0
.debug_loclists 1966688 1966949 261 0.0
.debug_rnglists 123395 123395 0 0.0
.debug_str 3751989 3752014 25 0.0
.heap 818392 818392 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 608373 608373 0 0.0
.symtab 422352 422368 16 0.0
.text 1415956 1415988 32 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1178340 1178340 0 0.0
.bss 101176 101176 0 0.0
.data 744 744 0 0.0
.text 625184 625184 0 0.0
lock-app qpg6105+debug (read/write) 1135348 1135348 0 0.0
.bss 95896 95896 0 0.0
.data 748 748 0 0.0
.text 582188 582188 0 0.0

@github-actions
Copy link

github-actions bot commented Aug 11, 2023

PR #28655: Size comparison from bf0b45a to af549d8

Increases (15 builds for bl702, bl702l, cc32xx, efr32, psoc6, telink)
platform target config section bf0b45a af549d8 change % change
bl702 lighting-app bl702 (read/write) 1167803 1167823 20 0.0
.debug_abbrev 1567375 1567411 36 0.0
.debug_frame 516644 516652 8 0.0
.debug_info 41506938 41507571 633 0.0
.debug_line 5483305 5483382 77 0.0
.debug_loc 3565979 3566065 86 0.0
.debug_str 4012542 4012567 25 0.0
.text 954796 954814 18 0.0
bl702+rpc (read/write) 1266739 1266759 20 0.0
.debug_abbrev 1744505 1744541 36 0.0
.debug_frame 545548 545556 8 0.0
.debug_info 46401637 46402270 633 0.0
.debug_line 5895827 5895904 77 0.0
.debug_loc 3772135 3772221 86 0.0
.debug_str 4432407 4432432 25 0.0
.text 1029480 1029498 18 0.0
bl702l lighting-app bl702l (read/write) 1153416 1153432 16 0.0
.debug_abbrev 1569594 1569630 36 0.0
.debug_frame 496332 496340 8 0.0
.debug_info 41508049 41508680 631 0.0
.debug_line 5398999 5399076 77 0.0
.debug_loc 3502118 3502204 86 0.0
.debug_str 4025011 4025036 25 0.0
.text 943552 943566 14 0.0
cc32xx lock CC3235SF_LAUNCHXL (read only) 615466 615506 40 0.0
.debug_abbrev 962043 962084 41 0.0
.debug_info 19420028 19420986 958 0.0
.debug_line 2813100 2813288 188 0.0
.debug_loclists 1596372 1596637 265 0.0
.debug_str 3427157 3427182 25 0.0
.symtab 293168 293184 16 0.0
.text 507008 507048 40 0.0
efr32 lighting-app BRD4161A+rs9116 (read/write) 1011844 1011876 32 0.0
.text 824648 824680 32 0.0
lock-app BRD4161A+wf200 (read/write) 1089824 1089856 32 0.0
.text 908552 908584 32 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1768228 1768276 48 0.0
.debug_abbrev 1382789 1382830 41 0.0
.debug_frame 479472 479476 4 0.0
.debug_info 30256912 30257869 957 0.0
.debug_line 4148308 4148495 187 0.0
.debug_loclists 2248106 2248367 261 0.0
.debug_str 4124958 4124983 25 0.0
.symtab 500944 500960 16 0.0
.text 1564188 1564236 48 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1673876 1673924 48 0.0
.debug_abbrev 1285506 1285547 41 0.0
.debug_frame 462420 462424 4 0.0
.debug_info 27225595 27226551 956 0.0
.debug_line 3959672 3959859 187 0.0
.debug_loclists 2148578 2148839 261 0.0
.debug_str 3979379 3979404 25 0.0
.symtab 465264 465280 16 0.0
.text 1471796 1471844 48 0.0
light cy8ckit_062s2_43012 (read/write) 1605564 1605596 32 0.0
.debug_abbrev 1125466 1125507 41 0.0
.debug_frame 425564 425568 4 0.0
.debug_info 22369207 22370163 956 0.0
.debug_line 3525605 3525792 187 0.0
.debug_loclists 1986021 1986282 261 0.0
.debug_str 3787451 3787476 25 0.0
.symtab 430064 430080 16 0.0
.text 1409748 1409780 32 0.0
lock cy8ckit_062s2_43012 (read/write) 1639292 1639324 32 0.0
.debug_abbrev 1116856 1116897 41 0.0
.debug_frame 421588 421592 4 0.0
.debug_info 22283725 22284684 959 0.0
.debug_line 3481350 3481537 187 0.0
.debug_loclists 1966688 1966949 261 0.0
.debug_str 3751989 3752014 25 0.0
.symtab 422352 422368 16 0.0
.text 1415956 1415988 32 0.0
telink all-clusters-app tlsr9518adk80d text 731074 731076 2 0.0
light-switch-app tlsr9518adk80d text 618478 618480 2 0.0
lock-app tlsr9518adk80d text 621488 621490 2 0.0
ota-requestor-app tlsr9518adk80d (read/write) 899220 899228 8 0.0
text 612580 612582 2 0.0
window-covering tlsr9518adk80d text 617086 617088 2 0.0
Decreases (12 builds for bl602, nrfconnect, telink)
platform target config section bf0b45a af549d8 change % change
bl602 lighting-app bl602 .text 1057648 1057646 -2 -0.0
nrfconnect all-clusters-app nrf7002dk_nrf5340_cpuapp text 772836 772832 -4 -0.0
telink all-clusters-minimal-app tlsr9518adk80d (read/write) 977412 977404 -8 -0.0
text 670222 670220 -2 -0.0
bridge-app tlsr9518adk80d text 647376 647374 -2 -0.0
contact-sensor-app tlsr9518adk80d text 590734 590732 -2 -0.0
lighting-app tlsr9518adk80d (read/write) 983124 983116 -8 -0.0
text 686288 686284 -4 -0.0
lighting-app-rpc tlsr9518adk80d text 731218 731216 -2 -0.0
lighting-app-shell tlsr9518adk80d (read/write) 1083976 1083968 -8 -0.0
text 751322 751320 -2 -0.0
pump-app tlsr9518adk80d text 596358 596356 -2 -0.0
shell tlsr9518adk80d text 478660 478658 -2 -0.0
smoke_co_alarm-app tlsr9518adk80d text 594202 594198 -4 -0.0
temperature-measurement-app tlsr9518adk80d text 582422 582420 -2 -0.0
Full report (60 builds for bl602, bl702, bl702l, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section bf0b45a af549d8 change % change
bl602 lighting-app bl602 (read/write) 1364774 1364774 0 0.0
.bss 73622 73622 0 0.0
.data 9560 9560 0 0.0
.text 1057648 1057646 -2 -0.0
bl602+rpc (read/write) 1412242 1412242 0 0.0
.bss 81662 81662 0 0.0
.data 9952 9952 0 0.0
.text 1089582 1089582 0 0.0
bl702 lighting-app bl702 (read only) 3358 3358 0 0.0
(read/write) 1167803 1167823 20 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 41285 41285 0 0.0
.bss_psram 43424 43424 0 0.0
.comment 48 48 0 0.0
.data 3544 3544 0 0.0
.debug_abbrev 1567375 1567411 36 0.0
.debug_aranges 140400 140400 0 0.0
.debug_frame 516644 516652 8 0.0
.debug_info 41506938 41507571 633 0.0
.debug_line 5483305 5483382 77 0.0
.debug_loc 3565979 3566065 86 0.0
.debug_ranges 383512 383512 0 0.0
.debug_str 4012542 4012567 25 0.0
.hbn 544 544 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 107080 107080 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 589685 589685 0 0.0
.symtab 175808 175808 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
954796 954814 18 0.0
bl702+rpc (read only) 3358 3358 0 0.0
(read/write) 1266739 1266759 20 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 49749 49749 0 0.0
.bss_psram 43424 43424 0 0.0
.comment 48 48 0 0.0
.data 4104 4104 0 0.0
.debug_abbrev 1744505 1744541 36 0.0
.debug_aranges 148944 148944 0 0.0
.debug_frame 545548 545556 8 0.0
.debug_info 46401637 46402270 633 0.0
.debug_line 5895827 5895904 77 0.0
.debug_loc 3772135 3772221 86 0.0
.debug_ranges 409264 409264 0 0.0
.debug_str 4432407 4432432 25 0.0
.hbn 544 544 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 121732 121732 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 652648 652648 0 0.0
.symtab 194736 194736 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
1029480 1029498 18 0.0
bl702l lighting-app bl702l (read only) 278 278 0 0.0
(read/write) 1153416 1153432 16 0.0
.boot2 292 292 0 0.0
.bss 15988 15988 0 0.0
.bss_psram 77840 77840 0 0.0
.comment 48 48 0 0.0
.data 4528 4528 0 0.0
.debug_abbrev 1569594 1569630 36 0.0
.debug_aranges 134904 134904 0 0.0
.debug_frame 496332 496340 8 0.0
.debug_info 41508049 41508680 631 0.0
.debug_line 5398999 5399076 77 0.0
.debug_loc 3502118 3502204 86 0.0
.debug_ranges 388720 388720 0 0.0
.debug_str 4025011 4025036 25 0.0
.hbn 3244 3244 0 0.0
.hbn_noinit 308 308 0 0.0
.init 408 408 0 0.0
.init_array 144 144 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 100964 100964 0 0.0
.romdata 3224 3224 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 286 286 0 0.0
.stack 2048 2048 0 0.0
.strtab 589900 589900 0 0.0
.symtab 175360 175360 0 0.0
.tcm_data 692 692 0 0.0
.tcmcode 278 278 0 0.0
.text 0 0 0 0.0
943552 943566 14 0.0
cc32xx lock CC3235SF_LAUNCHXL (blank) 0 0 0 0.0
(read only) 615466 615506 40 0.0
(read/write) 207744 207744 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 201184 201184 0 0.0
.comment 206 206 0 0.0
.data 1440 1440 0 0.0
.debug_abbrev 962043 962084 41 0.0
.debug_aranges 109056 109056 0 0.0
.debug_frame 369852 369852 0 0.0
.debug_info 19420028 19420986 958 0.0
.debug_line 2813100 2813288 188 0.0
.debug_line_str 513 513 0 0.0
.debug_loc 33340 33340 0 0.0
.debug_loclists 1596372 1596637 265 0.0
.debug_ranges 4984 4984 0 0.0
.debug_rnglists 100544 100544 0 0.0
.debug_str 3427157 3427182 25 0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 106338 106338 0 0.0
.shstrtab 265 265 0 0.0
.stack 2048 2048 0 0.0
.strtab 496472 496472 0 0.0
.symtab 293168 293184 16 0.0
.text 507008 507048 40 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 551335 551335 0 0.0
.app_xip_area 442625 442625 0 0.0
.bss 63728 63728 0 0.0
.data 664 664 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 538383 538383 0 0.0
.app_xip_area 424625 424625 0 0.0
.bss 68752 68752 0 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 573991 573991 0 0.0
.app_xip_area 466361 466361 0 0.0
.bss 62720 62720 0 0.0
.data 592 592 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
switch cyw930739m2evb_01 (read/write) 549999 549999 0 0.0
.app_xip_area 439361 439361 0 0.0
.bss 65632 65632 0 0.0
.data 688 688 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rs9116 (read/write) 1011844 1011876 32 0.0
.bss 184524 184524 0 0.0
.data 2652 2652 0 0.0
.text 824648 824680 32 0.0
BRD4187C (read/write) 1036836 1036836 0 0.0
.bss 164108 164108 0 0.0
.data 3248 3248 0 0.0
.text 869460 869460 0 0.0
lock-app BRD4161A+wf200 (read/write) 1089824 1089856 32 0.0
.bss 178580 178580 0 0.0
.data 2672 2672 0 0.0
.text 908552 908584 32 0.0
window-app BRD4187C (read/write) 1107776 1107776 0 0.0
.bss 147148 147148 0 0.0
.data 3132 3132 0 0.0
.text 957476 957476 0 0.0
esp32 all-clusters-app c3devkit (read only) 1151674 1151674 0 0.0
(read/write) 1702268 1702268 0 0.0
.dram0.bss 79048 79048 0 0.0
.dram0.data 13084 13084 0 0.0
.flash.rodata 266392 266392 0 0.0
.flash.text 1151674 1151674 0 0.0
.iram0.text 75262 75262 0 0.0
m5stack (read only) 1193383 1193383 0 0.0
(read/write) 550462 550462 0 0.0
.dram0.bss 85416 85416 0 0.0
.dram0.data 34036 34036 0 0.0
.flash.rodata 297368 297368 0 0.0
.flash.text 1187999 1187999 0 0.0
.iram0.text 123311 123311 0 0.0
k32w contact k32w0+release (read only) 590876 590876 0 0.0
(read/write) 88096 88096 0 0.0
.bss 71344 71344 0 0.0
.data 2128 2128 0 0.0
.text 590340 590340 0 0.0
light k32w0+release (read only) 589660 589660 0 0.0
(read/write) 87748 87748 0 0.0
.bss 71008 71008 0 0.0
.data 2116 2116 0 0.0
.text 589124 589124 0 0.0
lock k32w0+release (read only) 562076 562076 0 0.0
(read/write) 85548 85548 0 0.0
.bss 68864 68864 0 0.0
.data 2060 2060 0 0.0
.text 561540 561540 0 0.0
linux all-clusters-app debug (read only) 5511073 5511073 0 0.0
(read/write) 418176 418176 0 0.0
.bss 130464 130464 0 0.0
.data 4016 4016 0 0.0
.data.rel.ro 276360 276360 0 0.0
.dynamic 624 624 0 0.0
.got 5384 5384 0 0.0
.init 27 27 0 0.0
.init_array 1304 1304 0 0.0
.rodata 335728 335728 0 0.0
.text 4797427 4797427 0 0.0
all-clusters-minimal-app debug (read only) 4897809 4897809 0 0.0
(read/write) 231392 231392 0 0.0
.bss 126016 126016 0 0.0
.data 3856 3856 0 0.0
.data.rel.ro 94384 94384 0 0.0
.dynamic 624 624 0 0.0
.got 5344 5344 0 0.0
.init 27 27 0 0.0
.init_array 1144 1144 0 0.0
.rodata 271942 271942 0 0.0
.text 4395667 4395667 0 0.0
bridge-app debug (read only) 2768161 2768161 0 0.0
(read/write) 132848 132848 0 0.0
.bss 51512 51512 0 0.0
.data 3824 3824 0 0.0
.data.rel.ro 71408 71408 0 0.0
.dynamic 624 624 0 0.0
.got 4640 4640 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 214504 214504 0 0.0
.text 2376131 2376131 0 0.0
chip-tool debug (read only) 17528897 17528897 0 0.0
(read/write) 1043136 1043136 0 0.0
.bss 93752 93752 0 0.0
.data 5090 5090 0 0.0
.data.rel.ro 936936 936936 0 0.0
.dynamic 624 624 0 0.0
.got 5880 5880 0 0.0
.init 27 27 0 0.0
.init_array 800 800 0 0.0
.rodata 892049 892049 0 0.0
.text 14610595 14610595 0 0.0
chip-tool-ipv6only arm64 (read only) 16771300 16771300 0 0.0
(read/write) 1110520 1110520 0 0.0
.bss 103064 103064 0 0.0
.data 4392 4392 0 0.0
.data.rel.ro 974328 974328 0 0.0
.dynamic 512 512 0 0.0
.got 23248 23248 0 0.0
.init 24 24 0 0.0
.init_array 248 248 0 0.0
.rodata 804576 804576 0 0.0
.text 13756024 13756024 0 0.0
lighting-app debug+rpc+ui (read only) 5237713 5237713 0 0.0
(read/write) 222088 222088 0 0.0
.bss 117744 117744 0 0.0
.data 4528 4528 0 0.0
.data.rel.ro 92248 92248 0 0.0
.dynamic 672 672 0 0.0
.got 5928 5928 0 0.0
.init 27 27 0 0.0
.init_array 944 944 0 0.0
.rodata 336852 336852 0 0.0
.text 4658787 4658787 0 0.0
lock-app debug (read only) 4469537 4469537 0 0.0
(read/write) 202840 202840 0 0.0
.bss 113360 113360 0 0.0
.data 3728 3728 0 0.0
.data.rel.ro 78952 78952 0 0.0
.dynamic 624 624 0 0.0
.got 5264 5264 0 0.0
.init 27 27 0 0.0
.init_array 864 864 0 0.0
.rodata 247942 247942 0 0.0
.text 4012243 4012243 0 0.0
ota-provider-app debug (read only) 4125753 4125753 0 0.0
(read/write) 191872 191872 0 0.0
.bss 113504 113504 0 0.0
.data 4000 4000 0 0.0
.data.rel.ro 68448 68448 0 0.0
.dynamic 624 624 0 0.0
.got 4544 4544 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 201094 201094 0 0.0
.text 3734339 3734339 0 0.0
ota-requestor-app debug (read only) 4219265 4219265 0 0.0
(read/write) 196184 196184 0 0.0
.bss 114560 114560 0 0.0
.data 4240 4240 0 0.0
.data.rel.ro 71448 71448 0 0.0
.dynamic 624 624 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 784 784 0 0.0
.rodata 204454 204454 0 0.0
.text 3820163 3820163 0 0.0
shell debug (read only) 2932409 2932409 0 0.0
(read/write) 150720 150720 0 0.0
.bss 60008 60008 0 0.0
.data 784 784 0 0.0
.data.rel.ro 84056 84056 0 0.0
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 1136 1136 0 0.0
.rodata 212050 212050 0 0.0
.text 2549394 2549394 0 0.0
thermostat-no-ble arm64 (read only) 4447828 4447828 0 0.0
(read/write) 243848 243848 0 0.0
.bss 122280 122280 0 0.0
.data 2880 2880 0 0.0
.data.rel.ro 102232 102232 0 0.0
.dynamic 512 512 0 0.0
.got 11984 11984 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 162172 162172 0 0.0
.text 3947576 3947576 0 0.0
tv-app debug (read only) 5313873 5313873 0 0.0
(read/write) 349856 349856 0 0.0
.bss 241280 241280 0 0.0
.data 5104 5104 0 0.0
.data.rel.ro 96048 96048 0 0.0
.dynamic 624 624 0 0.0
.got 5616 5616 0 0.0
.init 27 27 0 0.0
.init_array 1144 1144 0 0.0
.rodata 272246 272246 0 0.0
.text 4797987 4797987 0 0.0
tv-casting-app debug (read only) 8293889 8293889 0 0.0
(read/write) 210568 210568 0 0.0
.bss 54208 54208 0 0.0
.data 2544 2544 0 0.0
.data.rel.ro 147016 147016 0 0.0
.dynamic 624 624 0 0.0
.got 5096 5096 0 0.0
.init 27 27 0 0.0
.init_array 1056 1056 0 0.0
.rodata 367644 367644 0 0.0
.text 7526083 7526083 0 0.0
mbed lock-app-release cy8cproto_062_4343w (read only) 6224 6224 0 0.0
(read/write) 2522328 2522328 0 0.0
.bss 219904 219904 0 0.0
.data 5128 5128 0 0.0
.text 1485012 1485012 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1220544 1220544 0 0.0
bss 154612 154612 0 0.0
rodata 141556 141556 0 0.0
text 845412 845412 0 0.0
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1339616 1339616 0 0.0
bss 140070 140070 0 0.0
rodata 136024 136024 0 0.0
text 772836 772832 -4 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1157216 1157216 0 0.0
bss 154791 154791 0 0.0
rodata 112924 112924 0 0.0
text 810512 810512 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 837688 837688 0 0.0
(read/write) 1768228 1768276 48 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 193116 193116 0 0.0
.comment 212 212 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 2536 2536 0 0.0
.debug_abbrev 1382789 1382830 41 0.0
.debug_aranges 143944 143944 0 0.0
.debug_frame 479472 479476 4 0.0
.debug_info 30256912 30257869 957 0.0
.debug_line 4148308 4148495 187 0.0
.debug_line_str 957 957 0 0.0
.debug_loclists 2248106 2248367 261 0.0
.debug_rnglists 142355 142355 0 0.0
.debug_str 4124958 4124983 25 0.0
.heap 837688 837688 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 806030 806030 0 0.0
.symtab 500944 500960 16 0.0
.text 1564188 1564236 48 0.0
.zero.table 8 8 0 0.0
text 0 0 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 839648 839648 0 0.0
(read/write) 1673876 1673924 48 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 191228 191228 0 0.0
.comment 212 212 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 2464 2464 0 0.0
.debug_abbrev 1285506 1285547 41 0.0
.debug_aranges 137208 137208 0 0.0
.debug_frame 462420 462424 4 0.0
.debug_info 27225595 27226551 956 0.0
.debug_line 3959672 3959859 187 0.0
.debug_line_str 981 981 0 0.0
.debug_loclists 2148578 2148839 261 0.0
.debug_rnglists 135453 135453 0 0.0
.debug_str 3979379 3979404 25 0.0
.heap 839648 839648 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 713481 713481 0 0.0
.symtab 465264 465280 16 0.0
.text 1471796 1471844 48 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 845912 845912 0 0.0
(read/write) 1605564 1605596 32 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 185076 185076 0 0.0
.comment 212 212 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 2352 2352 0 0.0
.debug_abbrev 1125466 1125507 41 0.0
.debug_aranges 127336 127336 0 0.0
.debug_frame 425564 425568 4 0.0
.debug_info 22369207 22370163 956 0.0
.debug_line 3525605 3525792 187 0.0
.debug_line_str 942 942 0 0.0
.debug_loclists 1986021 1986282 261 0.0
.debug_rnglists 125220 125220 0 0.0
.debug_str 3787451 3787476 25 0.0
.heap 845912 845912 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 634473 634473 0 0.0
.symtab 430064 430080 16 0.0
.text 1409748 1409780 32 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 818392 818392 0 0.0
(read/write) 1639292 1639324 32 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 212580 212580 0 0.0
.comment 212 212 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 2368 2368 0 0.0
.debug_abbrev 1116856 1116897 41 0.0
.debug_aranges 126248 126248 0 0.0
.debug_frame 421588 421592 4 0.0
.debug_info 22283725 22284684 959 0.0
.debug_line 3481350 3481537 187 0.0
.debug_line_str 933 933 0 0.0
.debug_loclists 1966688 1966949 261 0.0
.debug_rnglists 123395 123395 0 0.0
.debug_str 3751989 3752014 25 0.0
.heap 818392 818392 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 608373 608373 0 0.0
.symtab 422352 422368 16 0.0
.text 1415956 1415988 32 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1178340 1178340 0 0.0
.bss 101176 101176 0 0.0
.data 744 744 0 0.0
.text 625184 625184 0 0.0
lock-app qpg6105+debug (read/write) 1135348 1135348 0 0.0
.bss 95896 95896 0 0.0
.data 748 748 0 0.0
.text 582188 582188 0 0.0
telink all-clusters-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1072488 1072488 0 0.0
bss 107308 107308 0 0.0
text 731074 731076 2 0.0
all-clusters-minimal-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 977412 977404 -8 -0.0
bss 105284 105284 0 0.0
text 670222 670220 -2 -0.0
bridge-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 944708 944708 0 0.0
bss 109660 109660 0 0.0
text 647376 647374 -2 -0.0
contact-sensor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 876640 876640 0 0.0
bss 98840 98840 0 0.0
text 590734 590732 -2 -0.0
light-switch-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 907960 907960 0 0.0
bss 99464 99464 0 0.0
text 618478 618480 2 0.0
lighting-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 983124 983116 -8 -0.0
bss 107516 107516 0 0.0
text 686288 686284 -4 -0.0
lighting-app-factory-data tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 994488 994488 0 0.0
bss 111764 111764 0 0.0
text 693802 693802 0 0.0
lighting-app-rpc tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1052648 1052648 0 0.0
bss 109088 109088 0 0.0
text 731218 731216 -2 -0.0
lighting-app-shell tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1083976 1083968 -8 -0.0
bss 120164 120164 0 0.0
text 751322 751320 -2 -0.0
lock-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 934172 934172 0 0.0
bss 99560 99560 0 0.0
text 621488 621490 2 0.0
ota-requestor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 899220 899228 8 0.0
bss 100148 100148 0 0.0
text 612580 612582 2 0.0
pump-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 882056 882056 0 0.0
bss 98972 98972 0 0.0
text 596358 596356 -2 -0.0
pump-controller-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 869196 869196 0 0.0
bss 98772 98772 0 0.0
text 586784 586784 0 0.0
shell tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 744196 744196 0 0.0
bss 97208 97208 0 0.0
text 478660 478658 -2 -0.0
smoke_co_alarm-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 879116 879116 0 0.0
bss 98952 98952 0 0.0
text 594202 594198 -4 -0.0
temperature-measurement-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 865368 865368 0 0.0
bss 98680 98680 0 0.0
text 582422 582420 -2 -0.0
thermostat tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 911200 911200 0 0.0
bss 99224 99224 0 0.0
text 621746 621746 0 0.0
window-covering tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 907020 907020 0 0.0
bss 99560 99560 0 0.0
text 617086 617088 2 0.0

@github-actions
Copy link

PR #28655: Size comparison from bf0b45a to 09c60e5

Increases (5 builds for mbed, nrfconnect, qpg)
platform target config section bf0b45a 09c60e5 change % change
mbed lock-app-release cy8cproto_062_4343w (read/write) 2522328 2522504 176 0.0
.text 1485012 1485188 176 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 rodata 141556 141696 140 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1157216 1157328 112 0.0
rodata 112924 113036 112 0.1
qpg lighting-app qpg6105+debug (read/write) 1178340 1178444 104 0.0
.text 625184 625288 104 0.0
lock-app qpg6105+debug (read/write) 1135348 1135500 152 0.0
.text 582188 582340 152 0.0
Decreases (2 builds for nrfconnect)
platform target config section bf0b45a 09c60e5 change % change
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1220544 1220412 -132 -0.0
text 845412 845148 -264 -0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1339616 1338624 -992 -0.1
rodata 136024 135688 -336 -0.2
text 772836 772180 -656 -0.1
Full report (6 builds for mbed, nrfconnect, qpg)
platform target config section bf0b45a 09c60e5 change % change
mbed lock-app-release cy8cproto_062_4343w (read only) 6224 6224 0 0.0
(read/write) 2522328 2522504 176 0.0
.bss 219904 219904 0 0.0
.data 5128 5128 0 0.0
.text 1485012 1485188 176 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1220544 1220412 -132 -0.0
bss 154612 154612 0 0.0
rodata 141556 141696 140 0.1
text 845412 845148 -264 -0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1157216 1157328 112 0.0
bss 154791 154791 0 0.0
rodata 112924 113036 112 0.1
text 810512 810512 0 0.0
all-clusters-app nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1339616 1338624 -992 -0.1
bss 140070 140070 0 0.0
rodata 136024 135688 -336 -0.2
text 772836 772180 -656 -0.1
qpg lighting-app qpg6105+debug (read/write) 1178340 1178444 104 0.0
.bss 101176 101176 0 0.0
.data 744 744 0 0.0
.text 625184 625288 104 0.0
lock-app qpg6105+debug (read/write) 1135348 1135500 152 0.0
.bss 95896 95896 0 0.0
.data 748 748 0 0.0
.text 582188 582340 152 0.0

@github-actions
Copy link

github-actions bot commented Aug 14, 2023

PR #28655: Size comparison from bf0b45a to 0a90a51

Increases above 0.2%:

platform target config section bf0b45a 0a90a51 change % change
bl702 lighting-app bl702 .debug_ranges 383512 384768 1256 0.3
bl702+rpc .debug_ranges 409264 410520 1256 0.3
bl702l lighting-app bl702l .debug_ranges 388720 389976 1256 0.3
Increases (51 builds for bl602, bl702, bl702l, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section bf0b45a 0a90a51 change % change
bl602 lighting-app bl602 (read/write) 1364774 1365170 396 0.0
.text 1057648 1057924 276 0.0
bl602+rpc (read/write) 1412242 1412638 396 0.0
.text 1089582 1089862 280 0.0
bl702 lighting-app bl702 (read/write) 1167803 1168223 420 0.0
.debug_abbrev 1567375 1567531 156 0.0
.debug_frame 516644 516648 4 0.0
.debug_info 41506938 41509893 2955 0.0
.debug_line 5483305 5485502 2197 0.0
.debug_loc 3565979 3566161 182 0.0
.debug_ranges 383512 384768 1256 0.3
.debug_str 4012542 4012598 56 0.0
.rodata 107080 107196 116 0.1
.strtab 589685 589689 4 0.0
.text 954796 955098 302 0.0
bl702+rpc (read/write) 1266739 1267159 420 0.0
.debug_abbrev 1744505 1744661 156 0.0
.debug_frame 545548 545552 4 0.0
.debug_info 46401637 46404592 2955 0.0
.debug_line 5895827 5898024 2197 0.0
.debug_loc 3772135 3772317 182 0.0
.debug_ranges 409264 410520 1256 0.3
.debug_str 4432407 4432463 56 0.0
.rodata 121732 121848 116 0.1
.strtab 652648 652652 4 0.0
.text 1029480 1029782 302 0.0
bl702l lighting-app bl702l (read/write) 1153416 1153836 420 0.0
.debug_abbrev 1569594 1569750 156 0.0
.debug_frame 496332 496336 4 0.0
.debug_info 41508049 41511003 2954 0.0
.debug_line 5398999 5401196 2197 0.0
.debug_loc 3502118 3502300 182 0.0
.debug_ranges 388720 389976 1256 0.3
.debug_str 4025011 4025067 56 0.0
.rodata 100964 101080 116 0.1
.strtab 589900 589904 4 0.0
.text 943552 943856 304 0.0
cc32xx lock CC3235SF_LAUNCHXL (read only) 615466 616050 584 0.1
.debug_abbrev 962043 962106 63 0.0
.debug_info 19420028 19424435 4407 0.0
.debug_line 2813100 2814717 1617 0.1
.debug_loclists 1596372 1598089 1717 0.1
.debug_rnglists 100544 100659 115 0.1
.debug_str 3427157 3427213 56 0.0
.rodata 106338 106458 120 0.1
.strtab 496472 496476 4 0.0
.symtab 293168 293456 288 0.1
.text 507008 507472 464 0.1
cyw30739 ota-requestor cyw930739m2evb_01 (read/write) 573991 574407 416 0.1
.app_xip_area 466361 466777 416 0.1
efr32 lighting-app BRD4161A+rs9116 (read/write) 1011844 1013052 1208 0.1
.text 824648 825856 1208 0.1
BRD4187C (read/write) 1036836 1037236 400 0.0
.text 869460 869860 400 0.0
window-app BRD4187C (read/write) 1107776 1109024 1248 0.1
.text 957476 958724 1248 0.1
esp32 all-clusters-app c3devkit (read/write) 1702268 1702412 144 0.0
.flash.rodata 266392 266536 144 0.1
m5stack (read/write) 550462 550606 144 0.0
.flash.rodata 297368 297512 144 0.0
k32w contact k32w0+release (read only) 590876 591012 136 0.0
.text 590340 590476 136 0.0
light k32w0+release (read only) 589660 589812 152 0.0
.text 589124 589276 152 0.0
lock k32w0+release (read only) 562076 562148 72 0.0
.text 561540 561612 72 0.0
linux all-clusters-app debug (read only) 5511073 5518193 7120 0.1
.rodata 335728 336016 288 0.1
.text 4797427 4804259 6832 0.1
all-clusters-minimal-app debug (read only) 4897809 4902913 5104 0.1
.rodata 271942 272102 160 0.1
.text 4395667 4400611 4944 0.1
bridge-app debug (read only) 2768161 2770593 2432 0.1
.rodata 214504 214664 160 0.1
.text 2376131 2378403 2272 0.1
lighting-app debug+rpc+ui (read only) 5237713 5242001 4288 0.1
.rodata 336852 337108 256 0.1
.text 4658787 4662819 4032 0.1
lock-app debug (read only) 4469537 4473057 3520 0.1
.rodata 247942 248038 96 0.0
.text 4012243 4015667 3424 0.1
ota-provider-app debug (read only) 4125753 4128329 2576 0.1
.rodata 201094 201254 160 0.1
.text 3734339 3736755 2416 0.1
ota-requestor-app debug (read only) 4219265 4222225 2960 0.1
.rodata 204454 204646 192 0.1
.text 3820163 3822931 2768 0.1
shell debug (read only) 2932409 2939049 6640 0.2
.rodata 212050 212370 320 0.2
.text 2549394 2555714 6320 0.2
thermostat-no-ble arm64 (read only) 4447828 4451476 3648 0.1
.rodata 162172 162252 80 0.0
.text 3947576 3951144 3568 0.1
tv-app debug (read only) 5313873 5317361 3488 0.1
.rodata 272246 272598 352 0.1
.text 4797987 4801123 3136 0.1
tv-casting-app debug (read only) 8293889 8296737 2848 0.0
.rodata 367644 367836 192 0.1
.text 7526083 7528739 2656 0.0
mbed lock-app-release cy8cproto_062_4343w (read/write) 2522328 2522504 176 0.0
.text 1485012 1485188 176 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 rodata 141556 141696 140 0.1
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1157216 1157328 112 0.0
rodata 112924 113036 112 0.1
text 810512 810516 4 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read/write) 1768228 1768900 672 0.0
.debug_frame 479472 479476 4 0.0
.debug_info 30256912 30263708 6796 0.0
.debug_line 4148308 4150859 2551 0.1
.debug_loclists 2248106 2249836 1730 0.1
.debug_rnglists 142355 142466 111 0.1
.debug_str 4124958 4125014 56 0.0
.strtab 806030 806034 4 0.0
.symtab 500944 501824 880 0.2
.text 1564188 1564860 672 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read/write) 1673876 1674668 792 0.0
.debug_frame 462420 462424 4 0.0
.debug_info 27225595 27231731 6136 0.0
.debug_line 3959672 3961999 2327 0.1
.debug_loclists 2148578 2150198 1620 0.1
.debug_rnglists 135453 135566 113 0.1
.debug_str 3979379 3979435 56 0.0
.strtab 713481 713485 4 0.0
.symtab 465264 465952 688 0.1
.text 1471796 1472588 792 0.1
light cy8ckit_062s2_43012 (read/write) 1605564 1606156 592 0.0
.debug_frame 425564 425568 4 0.0
.debug_info 22369207 22374063 4856 0.0
.debug_line 3525605 3527304 1699 0.0
.debug_loclists 1986021 1987313 1292 0.1
.debug_rnglists 125220 125336 116 0.1
.debug_str 3787451 3787507 56 0.0
.strtab 634473 634477 4 0.0
.symtab 430064 430592 528 0.1
.text 1409748 1410340 592 0.0
lock cy8ckit_062s2_43012 (read/write) 1639292 1639660 368 0.0
.debug_abbrev 1116856 1116897 41 0.0
.debug_frame 421588 421596 8 0.0
.debug_info 22283725 22287598 3873 0.0
.debug_line 3481350 3482755 1405 0.0
.debug_loclists 1966688 1967722 1034 0.1
.debug_rnglists 123395 123512 117 0.1
.debug_str 3751989 3752045 56 0.0
.strtab 608373 608377 4 0.0
.symtab 422352 422720 368 0.1
.text 1415956 1416324 368 0.0
qpg lighting-app qpg6105+debug (read/write) 1178340 1178444 104 0.0
.text 625184 625288 104 0.0
lock-app qpg6105+debug (read/write) 1135348 1135500 152 0.0
.text 582188 582340 152 0.0
telink all-clusters-minimal-app tlsr9518adk80d (read/write) 977412 977504 92 0.0
bridge-app tlsr9518adk80d (read/write) 944708 944904 196 0.0
text 647376 647458 82 0.0
contact-sensor-app tlsr9518adk80d (read/write) 876640 876860 220 0.0
text 590734 590848 114 0.0
light-switch-app tlsr9518adk80d (read/write) 907960 908164 204 0.0
text 618478 618578 100 0.0
lighting-app tlsr9518adk80d (read/write) 983124 983160 36 0.0
lighting-app-factory-data tlsr9518adk80d (read/write) 994488 994524 36 0.0
lighting-app-rpc tlsr9518adk80d (read/write) 1052648 1052684 36 0.0
lighting-app-shell tlsr9518adk80d (read/write) 1083976 1084012 36 0.0
lock-app tlsr9518adk80d (read/write) 934172 934312 140 0.0
text 621488 621520 32 0.0
ota-requestor-app tlsr9518adk80d (read/write) 899220 899440 220 0.0
text 612580 612690 110 0.0
pump-app tlsr9518adk80d (read/write) 882056 882260 204 0.0
text 596358 596452 94 0.0
pump-controller-app tlsr9518adk80d (read/write) 869196 869440 244 0.0
text 586784 586916 132 0.0
smoke_co_alarm-app tlsr9518adk80d (read/write) 879116 879344 228 0.0
text 594202 594324 122 0.0
temperature-measurement-app tlsr9518adk80d (read/write) 865368 865620 252 0.0
text 582422 582564 142 0.0
thermostat tlsr9518adk80d (read/write) 911200 911452 252 0.0
text 621746 621890 144 0.0
window-covering tlsr9518adk80d (read/write) 907020 907240 220 0.0
text 617086 617198 112 0.0
Decreases (19 builds for cyw30739, efr32, esp32, linux, nrfconnect, psoc6, telink)
platform target config section bf0b45a 0a90a51 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 551335 550647 -688 -0.1
.app_xip_area 442625 441937 -688 -0.2
lock cyw930739m2evb_01 (read/write) 538383 537743 -640 -0.1
.app_xip_area 424625 423985 -640 -0.2
switch cyw930739m2evb_01 (read/write) 549999 549399 -600 -0.1
.app_xip_area 439361 438761 -600 -0.1
efr32 lock-app BRD4161A+wf200 (read/write) 1089824 1089696 -128 -0.0
.text 908552 908424 -128 -0.0
esp32 all-clusters-app c3devkit (read only) 1151674 1151430 -244 -0.0
.flash.text 1151674 1151430 -244 -0.0
m5stack (read only) 1193383 1193055 -328 -0.0
.flash.text 1187999 1187671 -328 -0.0
linux chip-tool debug (read only) 17528897 17528481 -416 -0.0
.text 14610595 14610179 -416 -0.0
chip-tool-ipv6only arm64 (read only) 16771300 16770644 -656 -0.0
.rodata 804576 804416 -160 -0.0
.text 13756024 13755528 -496 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1220544 1220412 -132 -0.0
text 845412 845152 -260 -0.0
nrf7002dk_nrf5340_cpuapp (read/write) 1339616 1338624 -992 -0.1
rodata 136024 135688 -336 -0.2
text 772836 772180 -656 -0.1
psoc6 all-clusters cy8ckit_062s2_43012 .debug_abbrev 1382789 1382503 -286 -0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_abbrev 1285506 1285210 -296 -0.0
light cy8ckit_062s2_43012 .debug_abbrev 1125466 1125433 -33 -0.0
telink all-clusters-app tlsr9518adk80d (read/write) 1072488 1072380 -108 -0.0
text 731074 730832 -242 -0.0
all-clusters-minimal-app tlsr9518adk80d text 670222 670206 -16 -0.0
lighting-app tlsr9518adk80d text 686288 686216 -72 -0.0
lighting-app-factory-data tlsr9518adk80d text 693802 693730 -72 -0.0
lighting-app-rpc tlsr9518adk80d text 731218 731146 -72 -0.0
lighting-app-shell tlsr9518adk80d text 751322 751250 -72 -0.0
Full report (60 builds for bl602, bl702, bl702l, cc32xx, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section bf0b45a 0a90a51 change % change
bl602 lighting-app bl602 (read/write) 1364774 1365170 396 0.0
.bss 73622 73622 0 0.0
.data 9560 9560 0 0.0
.text 1057648 1057924 276 0.0
bl602+rpc (read/write) 1412242 1412638 396 0.0
.bss 81662 81662 0 0.0
.data 9952 9952 0 0.0
.text 1089582 1089862 280 0.0
bl702 lighting-app bl702 (read only) 3358 3358 0 0.0
(read/write) 1167803 1168223 420 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 41285 41285 0 0.0
.bss_psram 43424 43424 0 0.0
.comment 48 48 0 0.0
.data 3544 3544 0 0.0
.debug_abbrev 1567375 1567531 156 0.0
.debug_aranges 140400 140400 0 0.0
.debug_frame 516644 516648 4 0.0
.debug_info 41506938 41509893 2955 0.0
.debug_line 5483305 5485502 2197 0.0
.debug_loc 3565979 3566161 182 0.0
.debug_ranges 383512 384768 1256 0.3
.debug_str 4012542 4012598 56 0.0
.hbn 544 544 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 107080 107196 116 0.1
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 589685 589689 4 0.0
.symtab 175808 175808 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
954796 955098 302 0.0
bl702+rpc (read only) 3358 3358 0 0.0
(read/write) 1266739 1267159 420 0.0
.bleromro 6342 6342 0 0.0
.bleromrw 124 124 0 0.0
.boot2 328 328 0 0.0
.bss 49749 49749 0 0.0
.bss_psram 43424 43424 0 0.0
.comment 48 48 0 0.0
.data 4104 4104 0 0.0
.debug_abbrev 1744505 1744661 156 0.0
.debug_aranges 148944 148944 0 0.0
.debug_frame 545548 545552 4 0.0
.debug_info 46401637 46404592 2955 0.0
.debug_line 5895827 5898024 2197 0.0
.debug_loc 3772135 3772317 182 0.0
.debug_ranges 409264 410520 1256 0.3
.debug_str 4432407 4432463 56 0.0
.hbn 544 544 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 121732 121848 116 0.1
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 304 304 0 0.0
.stack 2048 2048 0 0.0
.strtab 652648 652652 4 0.0
.symtab 194736 194736 0 0.0
.tcm_data 28 28 0 0.0
.tcmcode 3358 3358 0 0.0
.text 0 0 0 0.0
1029480 1029782 302 0.0
bl702l lighting-app bl702l (read only) 278 278 0 0.0
(read/write) 1153416 1153836 420 0.0
.boot2 292 292 0 0.0
.bss 15988 15988 0 0.0
.bss_psram 77840 77840 0 0.0
.comment 48 48 0 0.0
.data 4528 4528 0 0.0
.debug_abbrev 1569594 1569750 156 0.0
.debug_aranges 134904 134904 0 0.0
.debug_frame 496332 496336 4 0.0
.debug_info 41508049 41511003 2954 0.0
.debug_line 5398999 5401196 2197 0.0
.debug_loc 3502118 3502300 182 0.0
.debug_ranges 388720 389976 1256 0.3
.debug_str 4025011 4025067 56 0.0
.hbn 3244 3244 0 0.0
.hbn_noinit 308 308 0 0.0
.init 408 408 0 0.0
.init_array 144 144 0 0.0
.riscv.attributes 47 47 0 0.0
.rodata 100964 101080 116 0.1
.romdata 3224 3224 0 0.0
.rsvd 4 4 0 0.0
.sha_ocram 72 72 0 0.0
.shstrtab 286 286 0 0.0
.stack 2048 2048 0 0.0
.strtab 589900 589904 4 0.0
.symtab 175360 175360 0 0.0
.tcm_data 692 692 0 0.0
.tcmcode 278 278 0 0.0
.text 0 0 0 0.0
943552 943856 304 0.0
cc32xx lock CC3235SF_LAUNCHXL (blank) 0 0 0 0.0
(read only) 615466 616050 584 0.1
(read/write) 207744 207744 0 0.0
.ARM.attributes 44 44 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 201184 201184 0 0.0
.comment 206 206 0 0.0
.data 1440 1440 0 0.0
.debug_abbrev 962043 962106 63 0.0
.debug_aranges 109056 109056 0 0.0
.debug_frame 369852 369852 0 0.0
.debug_info 19420028 19424435 4407 0.0
.debug_line 2813100 2814717 1617 0.1
.debug_line_str 513 513 0 0.0
.debug_loc 33340 33340 0 0.0
.debug_loclists 1596372 1598089 1717 0.1
.debug_ranges 4984 4984 0 0.0
.debug_rnglists 100544 100659 115 0.1
.debug_str 3427157 3427213 56 0.0
.ramVecs 780 780 0 0.0
.resetVecs 64 64 0 0.0
.rodata 106338 106458 120 0.1
.shstrtab 265 265 0 0.0
.stack 2048 2048 0 0.0
.strtab 496472 496476 4 0.0
.symtab 293168 293456 288 0.1
.text 507008 507472 464 0.1
cyw30739 light cyw930739m2evb_01 (read/write) 551335 550647 -688 -0.1
.app_xip_area 442625 441937 -688 -0.2
.bss 63728 63728 0 0.0
.data 664 664 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 538383 537743 -640 -0.1
.app_xip_area 424625 423985 -640 -0.2
.bss 68752 68752 0 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 573991 574407 416 0.1
.app_xip_area 466361 466777 416 0.1
.bss 62720 62720 0 0.0
.data 592 592 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
switch cyw930739m2evb_01 (read/write) 549999 549399 -600 -0.1
.app_xip_area 439361 438761 -600 -0.1
.bss 65632 65632 0 0.0
.data 688 688 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A+rs9116 (read/write) 1011844 1013052 1208 0.1
.bss 184524 184524 0 0.0
.data 2652 2652 0 0.0
.text 824648 825856 1208 0.1
BRD4187C (read/write) 1036836 1037236 400 0.0
.bss 164108 164108 0 0.0
.data 3248 3248 0 0.0
.text 869460 869860 400 0.0
lock-app BRD4161A+wf200 (read/write) 1089824 1089696 -128 -0.0
.bss 178580 178580 0 0.0
.data 2672 2672 0 0.0
.text 908552 908424 -128 -0.0
window-app BRD4187C (read/write) 1107776 1109024 1248 0.1
.bss 147148 147148 0 0.0
.data 3132 3132 0 0.0
.text 957476 958724 1248 0.1
esp32 all-clusters-app c3devkit (read only) 1151674 1151430 -244 -0.0
(read/write) 1702268 1702412 144 0.0
.dram0.bss 79048 79048 0 0.0
.dram0.data 13084 13084 0 0.0
.flash.rodata 266392 266536 144 0.1
.flash.text 1151674 1151430 -244 -0.0
.iram0.text 75262 75262 0 0.0
m5stack (read only) 1193383 1193055 -328 -0.0
(read/write) 550462 550606 144 0.0
.dram0.bss 85416 85416 0 0.0
.dram0.data 34036 34036 0 0.0
.flash.rodata 297368 297512 144 0.0
.flash.text 1187999 1187671 -328 -0.0
.iram0.text 123311 123311 0 0.0
k32w contact k32w0+release (read only) 590876 591012 136 0.0
(read/write) 88096 88096 0 0.0
.bss 71344 71344 0 0.0
.data 2128 2128 0 0.0
.text 590340 590476 136 0.0
light k32w0+release (read only) 589660 589812 152 0.0
(read/write) 87748 87748 0 0.0
.bss 71008 71008 0 0.0
.data 2116 2116 0 0.0
.text 589124 589276 152 0.0
lock k32w0+release (read only) 562076 562148 72 0.0
(read/write) 85548 85548 0 0.0
.bss 68864 68864 0 0.0
.data 2060 2060 0 0.0
.text 561540 561612 72 0.0
linux all-clusters-app debug (read only) 5511073 5518193 7120 0.1
(read/write) 418176 418176 0 0.0
.bss 130464 130464 0 0.0
.data 4016 4016 0 0.0
.data.rel.ro 276360 276360 0 0.0
.dynamic 624 624 0 0.0
.got 5384 5384 0 0.0
.init 27 27 0 0.0
.init_array 1304 1304 0 0.0
.rodata 335728 336016 288 0.1
.text 4797427 4804259 6832 0.1
all-clusters-minimal-app debug (read only) 4897809 4902913 5104 0.1
(read/write) 231392 231392 0 0.0
.bss 126016 126016 0 0.0
.data 3856 3856 0 0.0
.data.rel.ro 94384 94384 0 0.0
.dynamic 624 624 0 0.0
.got 5344 5344 0 0.0
.init 27 27 0 0.0
.init_array 1144 1144 0 0.0
.rodata 271942 272102 160 0.1
.text 4395667 4400611 4944 0.1
bridge-app debug (read only) 2768161 2770593 2432 0.1
(read/write) 132848 132848 0 0.0
.bss 51512 51512 0 0.0
.data 3824 3824 0 0.0
.data.rel.ro 71408 71408 0 0.0
.dynamic 624 624 0 0.0
.got 4640 4640 0 0.0
.init 27 27 0 0.0
.init_array 816 816 0 0.0
.rodata 214504 214664 160 0.1
.text 2376131 2378403 2272 0.1
chip-tool debug (read only) 17528897 17528481 -416 -0.0
(read/write) 1043136 1043136 0 0.0
.bss 93752 93752 0 0.0
.data 5090 5090 0 0.0
.data.rel.ro 936936 936936 0 0.0
.dynamic 624 624 0 0.0
.got 5880 5880 0 0.0
.init 27 27 0 0.0
.init_array 800 800 0 0.0
.rodata 892049 892049 0 0.0
.text 14610595 14610179 -416 -0.0
chip-tool-ipv6only arm64 (read only) 16771300 16770644 -656 -0.0
(read/write) 1110520 1110520 0 0.0
.bss 103064 103064 0 0.0
.data 4392 4392 0 0.0
.data.rel.ro 974328 974328 0 0.0
.dynamic 512 512 0 0.0
.got 23248 23248 0 0.0
.init 24 24 0 0.0
.init_array 248 248 0 0.0
.rodata 804576 804416 -160 -0.0
.text 13756024 13755528 -496 -0.0
lighting-app debug+rpc+ui (read only) 5237713 5242001 4288 0.1
(read/write) 222088 222088 0 0.0
.bss 117744 117744 0 0.0
.data 4528 4528 0 0.0
.data.rel.ro 92248 92248 0 0.0
.dynamic 672 672 0 0.0
.got 5928 5928 0 0.0
.init 27 27 0 0.0
.init_array 944 944 0 0.0
.rodata 336852 337108 256 0.1
.text 4658787 4662819 4032 0.1
lock-app debug (read only) 4469537 4473057 3520 0.1
(read/write) 202840 202840 0 0.0
.bss 113360 113360 0 0.0
.data 3728 3728 0 0.0
.data.rel.ro 78952 78952 0 0.0
.dynamic 624 624 0 0.0
.got 5264 5264 0 0.0
.init 27 27 0 0.0
.init_array 864 864 0 0.0
.rodata 247942 248038 96 0.0
.text 4012243 4015667 3424 0.1
ota-provider-app debug (read only) 4125753 4128329 2576 0.1
(read/write) 191872 191872 0 0.0
.bss 113504 113504 0 0.0
.data 4000 4000 0 0.0
.data.rel.ro 68448 68448 0 0.0
.dynamic 624 624 0 0.0
.got 4544 4544 0 0.0
.init 27 27 0 0.0
.init_array 728 728 0 0.0
.rodata 201094 201254 160 0.1
.text 3734339 3736755 2416 0.1
ota-requestor-app debug (read only) 4219265 4222225 2960 0.1
(read/write) 196184 196184 0 0.0
.bss 114560 114560 0 0.0
.data 4240 4240 0 0.0
.data.rel.ro 71448 71448 0 0.0
.dynamic 624 624 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 784 784 0 0.0
.rodata 204454 204646 192 0.1
.text 3820163 3822931 2768 0.1
shell debug (read only) 2932409 2939049 6640 0.2
(read/write) 150720 150720 0 0.0
.bss 60008 60008 0 0.0
.data 784 784 0 0.0
.data.rel.ro 84056 84056 0 0.0
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 1136 1136 0 0.0
.rodata 212050 212370 320 0.2
.text 2549394 2555714 6320 0.2
thermostat-no-ble arm64 (read only) 4447828 4451476 3648 0.1
(read/write) 243848 243848 0 0.0
.bss 122280 122280 0 0.0
.data 2880 2880 0 0.0
.data.rel.ro 102232 102232 0 0.0
.dynamic 512 512 0 0.0
.got 11984 11984 0 0.0
.init 24 24 0 0.0
.init_array 440 440 0 0.0
.rodata 162172 162252 80 0.0
.text 3947576 3951144 3568 0.1
tv-app debug (read only) 5313873 5317361 3488 0.1
(read/write) 349856 349856 0 0.0
.bss 241280 241280 0 0.0
.data 5104 5104 0 0.0
.data.rel.ro 96048 96048 0 0.0
.dynamic 624 624 0 0.0
.got 5616 5616 0 0.0
.init 27 27 0 0.0
.init_array 1144 1144 0 0.0
.rodata 272246 272598 352 0.1
.text 4797987 4801123 3136 0.1
tv-casting-app debug (read only) 8293889 8296737 2848 0.0
(read/write) 210568 210568 0 0.0
.bss 54208 54208 0 0.0
.data 2544 2544 0 0.0
.data.rel.ro 147016 147016 0 0.0
.dynamic 624 624 0 0.0
.got 5096 5096 0 0.0
.init 27 27 0 0.0
.init_array 1056 1056 0 0.0
.rodata 367644 367836 192 0.1
.text 7526083 7528739 2656 0.0
mbed lock-app-release cy8cproto_062_4343w (read only) 6224 6224 0 0.0
(read/write) 2522328 2522504 176 0.0
.bss 219904 219904 0 0.0
.data 5128 5128 0 0.0
.text 1485012 1485188 176 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1220544 1220412 -132 -0.0
bss 154612 154612 0 0.0
rodata 141556 141696 140 0.1
text 845412 845152 -260 -0.0
nrf7002dk_nrf5340_cpuapp (read only) 4 4 0 0.0
(read/write) 1339616 1338624 -992 -0.1
bss 140070 140070 0 0.0
rodata 136024 135688 -336 -0.2
text 772836 772180 -656 -0.1
all-clusters-minimal-app nrf52840dk_nrf52840 (read only) 4 4 0 0.0
(read/write) 1157216 1157328 112 0.0
bss 154791 154791 0 0.0
rodata 112924 113036 112 0.1
text 810512 810516 4 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 837688 837688 0 0.0
(read/write) 1768228 1768900 672 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 193116 193116 0 0.0
.comment 212 212 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 2536 2536 0 0.0
.debug_abbrev 1382789 1382503 -286 -0.0
.debug_aranges 143944 143944 0 0.0
.debug_frame 479472 479476 4 0.0
.debug_info 30256912 30263708 6796 0.0
.debug_line 4148308 4150859 2551 0.1
.debug_line_str 957 957 0 0.0
.debug_loclists 2248106 2249836 1730 0.1
.debug_rnglists 142355 142466 111 0.1
.debug_str 4124958 4125014 56 0.0
.heap 837688 837688 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 806030 806034 4 0.0
.symtab 500944 501824 880 0.2
.text 1564188 1564860 672 0.0
.zero.table 8 8 0 0.0
text 0 0 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 839648 839648 0 0.0
(read/write) 1673876 1674668 792 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 191228 191228 0 0.0
.comment 212 212 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 2464 2464 0 0.0
.debug_abbrev 1285506 1285210 -296 -0.0
.debug_aranges 137208 137208 0 0.0
.debug_frame 462420 462424 4 0.0
.debug_info 27225595 27231731 6136 0.0
.debug_line 3959672 3961999 2327 0.1
.debug_line_str 981 981 0 0.0
.debug_loclists 2148578 2150198 1620 0.1
.debug_rnglists 135453 135566 113 0.1
.debug_str 3979379 3979435 56 0.0
.heap 839648 839648 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 713481 713485 4 0.0
.symtab 465264 465952 688 0.1
.text 1471796 1472588 792 0.1
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 845912 845912 0 0.0
(read/write) 1605564 1606156 592 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 185076 185076 0 0.0
.comment 212 212 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 2352 2352 0 0.0
.debug_abbrev 1125466 1125433 -33 -0.0
.debug_aranges 127336 127336 0 0.0
.debug_frame 425564 425568 4 0.0
.debug_info 22369207 22374063 4856 0.0
.debug_line 3525605 3527304 1699 0.0
.debug_line_str 942 942 0 0.0
.debug_loclists 1986021 1987313 1292 0.1
.debug_rnglists 125220 125336 116 0.1
.debug_str 3787451 3787507 56 0.0
.heap 845912 845912 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 634473 634477 4 0.0
.symtab 430064 430592 528 0.1
.text 1409748 1410340 592 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 818392 818392 0 0.0
(read/write) 1639292 1639660 368 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 212580 212580 0 0.0
.comment 212 212 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 2368 2368 0 0.0
.debug_abbrev 1116856 1116897 41 0.0
.debug_aranges 126248 126248 0 0.0
.debug_frame 421588 421596 8 0.0
.debug_info 22283725 22287598 3873 0.0
.debug_line 3481350 3482755 1405 0.0
.debug_line_str 933 933 0 0.0
.debug_loclists 1966688 1967722 1034 0.1
.debug_rnglists 123395 123512 117 0.1
.debug_str 3751989 3752045 56 0.0
.heap 818392 818392 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 296 296 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 608373 608377 4 0.0
.symtab 422352 422720 368 0.1
.text 1415956 1416324 368 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1178340 1178444 104 0.0
.bss 101176 101176 0 0.0
.data 744 744 0 0.0
.text 625184 625288 104 0.0
lock-app qpg6105+debug (read/write) 1135348 1135500 152 0.0
.bss 95896 95896 0 0.0
.data 748 748 0 0.0
.text 582188 582340 152 0.0
telink all-clusters-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1072488 1072380 -108 -0.0
bss 107308 107308 0 0.0
text 731074 730832 -242 -0.0
all-clusters-minimal-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 977412 977504 92 0.0
bss 105284 105284 0 0.0
text 670222 670206 -16 -0.0
bridge-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 944708 944904 196 0.0
bss 109660 109660 0 0.0
text 647376 647458 82 0.0
contact-sensor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 876640 876860 220 0.0
bss 98840 98840 0 0.0
text 590734 590848 114 0.0
light-switch-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 907960 908164 204 0.0
bss 99464 99464 0 0.0
text 618478 618578 100 0.0
lighting-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 983124 983160 36 0.0
bss 107516 107516 0 0.0
text 686288 686216 -72 -0.0
lighting-app-factory-data tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 994488 994524 36 0.0
bss 111764 111764 0 0.0
text 693802 693730 -72 -0.0
lighting-app-rpc tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1052648 1052684 36 0.0
bss 109088 109088 0 0.0
text 731218 731146 -72 -0.0
lighting-app-shell tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 1083976 1084012 36 0.0
bss 120164 120164 0 0.0
text 751322 751250 -72 -0.0
lock-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 934172 934312 140 0.0
bss 99560 99560 0 0.0
text 621488 621520 32 0.0
ota-requestor-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 899220 899440 220 0.0
bss 100148 100148 0 0.0
text 612580 612690 110 0.0
pump-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 882056 882260 204 0.0
bss 98972 98972 0 0.0
text 596358 596452 94 0.0
pump-controller-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 869196 869440 244 0.0
bss 98772 98772 0 0.0
text 586784 586916 132 0.0
shell tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 744196 744196 0 0.0
bss 97208 97208 0 0.0
text 478660 478660 0 0.0
smoke_co_alarm-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 879116 879344 228 0.0
bss 98952 98952 0 0.0
text 594202 594324 122 0.0
temperature-measurement-app tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 865368 865620 252 0.0
bss 98680 98680 0 0.0
text 582422 582564 142 0.0
thermostat tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 911200 911452 252 0.0
bss 99224 99224 0 0.0
text 621746 621890 144 0.0
window-covering tlsr9518adk80d (read only) 4 4 0 0.0
(read/write) 907020 907240 220 0.0
bss 99560 99560 0 0.0
text 617086 617198 112 0.0

@rojer
Copy link
Contributor

rojer commented Aug 16, 2023

@shubhamdp ok, so LWIP_TCPIP_CORE_LOCKING is a requirement now. this is unfortunate, as there are legitimate reasons for keeping networking stack on its own task. it's not difficult to support both, maybe this can be reconsidered?
if not that, CHIP should static_assert that LWIP_TCPIP_CORE_LOCKING is set, for out-of-tree platforms.

ok, let me rephrase: actually, what is being done is good, because it fixes what is currently broken. but i think further changes hsould be made to accommodate LWIP_TCPIP_CORE_LOCKING=0.

@shubhamdp
Copy link
Contributor Author

@rojer I though of adding a static_assert, but ESP32/ASR/BouffaloLab do not have that enabled. I will fix that for ESP32 in follow up PR (please check the PR description), but I am not sure about ASR and BouffaloLab.

If not static_assert, are you suggesting that we dump the LWIP_TCPIP_CORE_LOCKING and start using tcp_api_call to delegate work on networking thread.

@rojer
Copy link
Contributor

rojer commented Aug 16, 2023

@shubhamdp well, as things stand, any platform that doesn't have LWIP_TCPIP_CORE_LOCKING set is currently subtly broken, your static_assert just highlights that. it can be ifdef'd out for those platforms with a TODO to fix, i think.

yes, i think the right thing to do is to use tcp_api_call. when LWIP_TCPIP_CORE_LOCKING is set, it simply wraps the call in LOCK/UNLOCK, and when it's not it does the messagebox-posting dance.
in addition, care needs to be taken to transfer control from callbacks to the right task: recv, sent and error callbacks are invoked on the TCP/IP task, if things need to happen on the main CHIP event loop, that needs to be arranged explicitly.

@rojer
Copy link
Contributor

rojer commented Aug 16, 2023

for context: on our platform we deliberately use LWIP with LWIP_TCPIP_CORE_LOCKING=0 and run the task at a priority lower than our main app task, this way network activity does not impact our app responsiveness (most notably TLS handshake, which can be very slow due to expensive crypto sometimes).

@mergify mergify bot merged commit e30a30b into project-chip:master Aug 21, 2023
@shubhamdp shubhamdp deleted the thread_safe_lwip branch August 22, 2023 06:28
HunsupJung pushed a commit to HunsupJung/connectedhomeip that referenced this pull request Oct 23, 2023
…laces (project-chip#28655)

* inet: scoped lwip locks for better safety and add at few more places

* Do not static assert if LWIP_TCPIP_CORE_LOCKING is disabled

* Add scope for locks

* move out the error variable definition to the top
shubhamdp added a commit to shubhamdp/connectedhomeip that referenced this pull request Feb 29, 2024
…laces (project-chip#28655)

* inet: scoped lwip locks for better safety and add at few more places

* Do not static assert if LWIP_TCPIP_CORE_LOCKING is disabled

* Add scope for locks

* move out the error variable definition to the top
chshu pushed a commit that referenced this pull request Mar 12, 2024
* inet: ScopedLwIPLock for better safety and added locks at necessary places (#28655)

* inet: scoped lwip locks for better safety and add at few more places

* Do not static assert if LWIP_TCPIP_CORE_LOCKING is disabled

* Add scope for locks

* move out the error variable definition to the top

* [ESP32] Enable LWIP_TCPIP_CORE_LOCKING by default and added static assert for the same (#28798)

* [ESP32] Enable LWIP_TCPIP_CORE_LOCKING by default and acquire lwip locks
when initializing route_hook

* inet: static assert if LWIP_TCPIP_CORE_LOCKING is disabled

Static assert is disabled for ASR and bouffalolab platforms

* typo

* UDPEndPointImplLwIP: Support LWIP_TCPIP_CORE_LOCKING=0 (#29057)

Wrap calls to LwIP APIs in `tcpip_api_call()`, as required.
When `LWIP_TCPIP_CORE_LOCKING` is enabled, this internally becomes `LOCK_TCPIP_CORE/UNLOCK_TCPIP_CORE`
and when it isn't, it posts a message to the TCPIP task to run the function.

Added CHIP stack locking to the UDP receive function.

---------

Co-authored-by: Deomid Ryabkov <rojer@rojer.me>
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.

5 participants