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

[IM] Write Chunking Support #13641

Merged
merged 40 commits into from
Feb 10, 2022
Merged

Conversation

erjiaqing
Copy link
Contributor

@erjiaqing erjiaqing commented Jan 18, 2022

Problem

Change overview

Testing

  • Python Tests -- write a large attribute
  • Test Suite -- writing a large attribute and verify it
  • Unit test with various attribute length

@github-actions
Copy link

github-actions bot commented Feb 8, 2022

PR #13641: Size comparison from bed61c3 to 31f5f44

Increases above 0.2%:

platform target config section bed61c3 31f5f44 change % change
linux all-clusters-app debug (read only) 2327673 2333033 5360 0.2
.data 1200 1232 32 2.7
.text 1960290 1965650 5360 0.3
chip-tool debug (read only) 7384309 7547509 163200 2.2
(read/write) 185424 198296 12872 6.9
.data.rel.ro 145920 158744 12824 8.8
.got 4760 4784 24 0.5
.init_array 608 616 8 1.3
.rodata 413109 417525 4416 1.1
.text 6599269 6727077 127808 1.9
chip-tool-ipv6only arm64 (read only) 7315604 7453476 137872 1.9
(read/write) 289713 302705 12992 4.5
.data.rel.ro 187576 200464 12888 6.9
.rodata 396428 400012 3584 0.9
.text 6309924 6412964 103040 1.6
shell debug (read only) 2301113 2306489 5376 0.2
.data 800 832 32 4.0
.text 1938786 1944098 5312 0.3
mbed all-clusters-app CY8CPROTO_062_4343W+release .data 5296 5312 16 0.3
p6 all-clusters-app default .data 2584 2600 16 0.6
Increases (39 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section bed61c3 31f5f44 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 594490 594810 320 0.1
.app_xip_area 500344 500664 320 0.1
lock cyw930739m2evb_01 (read/write) 552390 552714 324 0.1
.app_xip_area 459804 460128 324 0.1
ota-requestor cyw930739m2evb_01 (read/write) 576398 576722 324 0.1
.app_xip_area 474492 474816 324 0.1
efr32 lighting-app BRD4161A (read only) 865876 866236 360 0.0
.text 865868 866228 360 0.0
BRD4161A+rpc (read only) 853332 853684 352 0.0
.text 853324 853676 352 0.0
window-app BRD4161A (read only) 838080 838448 368 0.0
.text 838072 838440 368 0.0
esp32 all-clusters-app c3devkit (read only) 937984 938890 906 0.1
(read/write) 1401162 1401226 64 0.0
.dram0.data 14276 14292 16 0.1
.flash.rodata 198528 198576 48 0.0
.flash.text 937984 938890 906 0.1
m5stack (read only) 986303 987191 888 0.1
(read/write) 466200 466264 64 0.0
.dram0.data 34040 34056 16 0.0
.flash.rodata 225440 225488 48 0.0
.flash.text 980919 981807 888 0.1
k32w light k32w061+release (read/write) 678572 678912 340 0.1
.text 594320 594660 340 0.1
lock k32w061+release (read/write) 680488 680828 340 0.0
.text 595868 596208 340 0.1
linux all-clusters-app debug (read only) 2327673 2333033 5360 0.2
(read/write) 140096 140128 32 0.0
.data 1200 1232 32 2.7
.text 1960290 1965650 5360 0.3
bridge-app debug+rpc (read only) 1704373 1706325 1952 0.1
.text 1447621 1449573 1952 0.1
chip-tool debug (read only) 7384309 7547509 163200 2.2
(read/write) 185424 198296 12872 6.9
.data.rel.ro 145920 158744 12824 8.8
.got 4760 4784 24 0.5
.init_array 608 616 8 1.3
.rodata 413109 417525 4416 1.1
.text 6599269 6727077 127808 1.9
chip-tool-ipv6only arm64 (read only) 7315604 7453476 137872 1.9
(read/write) 289713 302705 12992 4.5
.data.rel.ro 187576 200464 12888 6.9
.got 46528 46632 104 0.2
.rodata 396428 400012 3584 0.9
.text 6309924 6412964 103040 1.6
door-lock-app debug (read only) 1908777 1910745 1968 0.1
.rodata 172818 172850 32 0.0
.text 1587442 1589378 1936 0.1
lighting-app debug+rpc (read only) 2003609 2005577 1968 0.1
.rodata 162897 162929 32 0.0
.text 1686066 1688002 1936 0.1
ota-provider-app debug (read only) 1712241 1714209 1968 0.1
.rodata 151238 151270 32 0.0
.text 1442322 1444258 1936 0.1
ota-requestor-app debug (read only) 1701673 1703609 1936 0.1
.rodata 144887 144919 32 0.0
.text 1439890 1441794 1904 0.1
shell debug (read only) 2301113 2306489 5376 0.2
(read/write) 141648 141680 32 0.0
.data 800 832 32 4.0
.rodata 205810 205874 64 0.0
.text 1938786 1944098 5312 0.3
thermostat-no-ble arm64 (read only) 2129932 2132268 2336 0.1
(read/write) 140673 140721 48 0.0
.data.rel.ro 74904 74952 48 0.1
.rodata 131964 131996 32 0.0
.text 1779904 1782160 2256 0.1
tv-app debug (read only) 2525897 2528681 2784 0.1
.text 2156626 2159410 2784 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2389752 2390672 920 0.0
.data 5296 5312 16 0.3
.text 1352352 1353272 920 0.1
lighting-app CY8CPROTO_062_4343W+release (read/write) 2348920 2349200 280 0.0
.text 1311520 1311800 280 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2312840 2313120 280 0.0
.text 1275440 1275720 280 0.0
shell CY8CPROTO_062_4343W+release (read/write) 2302812 2303092 280 0.0
.text 1265384 1265664 280 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 1004835 1005139 304 0.0
rodata 118128 118160 32 0.0
text 686484 686756 272 0.0
nrf52840dk_nrf52840+rpc (read/write) 976311 976631 320 0.0
rodata 109588 109620 32 0.0
text 671124 671412 288 0.0
nrf52840dongle_nrf52840 (read/write) 1021639 1021959 320 0.0
rodata 117016 117048 32 0.0
text 692052 692328 276 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 911494 911814 320 0.0
rodata 111384 111416 32 0.0
text 601508 601784 276 0.0
lock-app nrf52840dk_nrf52840 (read/write) 937091 937395 304 0.0
rodata 106528 106560 32 0.0
text 632404 632676 272 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 844586 844890 304 0.0
rodata 99700 99732 32 0.0
text 548204 548476 272 0.0
pump-app nrf52840dk_nrf52840 (read/write) 939323 939627 304 0.0
rodata 106712 106744 32 0.0
text 634648 634920 272 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 934663 934967 304 0.0
rodata 106004 106036 32 0.0
text 630680 630956 276 0.0
p6 all-clusters-app default (read/write) 2463848 2464968 1120 0.0
.data 2584 2600 16 0.6
.text 1422112 1423232 1120 0.1
light-app default (read/write) 2367296 2367648 352 0.0
.text 1325560 1325912 352 0.0
lock-app default (read/write) 2332480 2332832 352 0.0
.text 1290744 1291096 352 0.0
qpg lighting-app qpg6105+debug (read only) 585808 586192 384 0.1
.text 580488 580872 384 0.1
lock-app qpg6105+debug (read only) 531884 532268 384 0.1
.text 526564 526948 384 0.1
telink lighting-app tlsr9518adk80d (read/write) 865822 866318 496 0.1
text 607684 608146 462 0.1
Full report (43 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section bed61c3 31f5f44 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 594490 594810 320 0.1
.app_xip_area 500344 500664 320 0.1
.bss 76868 76868 0 0.0
.data 624 624 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 552390 552714 324 0.1
.app_xip_area 459804 460128 324 0.1
.bss 75340 75340 0 0.0
.data 588 588 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 576398 576722 324 0.1
.app_xip_area 474492 474816 324 0.1
.bss 84332 84332 0 0.0
.data 532 532 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 865876 866236 360 0.0
(read/write) 126620 126620 0 0.0
.bss 124696 124696 0 0.0
.data 1924 1924 0 0.0
.text 865868 866228 360 0.0
BRD4161A+rpc (read only) 853332 853684 352 0.0
(read/write) 143280 143280 0 0.0
.bss 141256 141256 0 0.0
.data 2024 2024 0 0.0
.text 853324 853676 352 0.0
window-app BRD4161A (read only) 838080 838448 368 0.0
(read/write) 125264 125264 0 0.0
.bss 123384 123384 0 0.0
.data 1880 1880 0 0.0
.text 838072 838440 368 0.0
esp32 all-clusters-app c3devkit (read only) 937984 938890 906 0.1
(read/write) 1401162 1401226 64 0.0
.dram0.bss 69448 69448 0 0.0
.dram0.data 14276 14292 16 0.1
.flash.rodata 198528 198576 48 0.0
.flash.text 937984 938890 906 0.1
.iram0.text 62056 62056 0 0.0
m5stack (read only) 986303 987191 888 0.1
(read/write) 466200 466264 64 0.0
.dram0.bss 74592 74592 0 0.0
.dram0.data 34040 34056 16 0.0
.flash.rodata 225440 225488 48 0.0
.flash.text 980919 981807 888 0.1
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 678572 678912 340 0.1
.bss 76568 76568 0 0.0
.data 1884 1884 0 0.0
.text 594320 594660 340 0.1
lock k32w061+release (read/write) 680488 680828 340 0.0
.bss 76896 76896 0 0.0
.data 1924 1924 0 0.0
.text 595868 596208 340 0.1
linux all-clusters-app debug (read only) 2327673 2333033 5360 0.2
(read/write) 140096 140128 32 0.0
.bss 54688 54688 0 0.0
.data 1200 1232 32 2.7
.data.rel.ro 78536 78536 0 0.0
.dynamic 592 592 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 205061 205061 0 0.0
.text 1960290 1965650 5360 0.3
bridge-app debug+rpc (read only) 1704373 1706325 1952 0.1
(read/write) 84328 84328 0 0.0
.bss 39088 39088 0 0.0
.data 1970 1970 0 0.0
.data.rel.ro 38120 38120 0 0.0
.dynamic 592 592 0 0.0
.got 3976 3976 0 0.0
.init 27 27 0 0.0
.init_array 560 560 0 0.0
.rodata 140204 140204 0 0.0
.text 1447621 1449573 1952 0.1
chip-tool debug (read only) 7384309 7547509 163200 2.2
(read/write) 185424 198296 12872 6.9
.bss 32360 32360 0 0.0
.data 1152 1152 0 0.0
.data.rel.ro 145920 158744 12824 8.8
.dynamic 608 608 0 0.0
.got 4760 4784 24 0.5
.init 27 27 0 0.0
.init_array 608 616 8 1.3
.rodata 413109 417525 4416 1.1
.text 6599269 6727077 127808 1.9
chip-tool-ipv6only arm64 (read only) 7315604 7453476 137872 1.9
(read/write) 289713 302705 12992 4.5
.bss 50641 50641 0 0.0
.data 1176 1176 0 0.0
.data.rel.ro 187576 200464 12888 6.9
.dynamic 560 560 0 0.0
.got 46528 46632 104 0.2
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 396428 400012 3584 0.9
.text 6309924 6412964 103040 1.6
door-lock-app debug (read only) 1908777 1910745 1968 0.1
(read/write) 110584 110584 0 0.0
.bss 42096 42096 0 0.0
.data 946 946 0 0.0
.data.rel.ro 62128 62128 0 0.0
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 172818 172850 32 0.0
.text 1587442 1589378 1936 0.1
lighting-app debug+rpc (read only) 2003609 2005577 1968 0.1
(read/write) 115632 115632 0 0.0
.bss 43104 43104 0 0.0
.data 1368 1368 0 0.0
.data.rel.ro 65672 65672 0 0.0
.dynamic 608 608 0 0.0
.got 4144 4144 0 0.0
.init 27 27 0 0.0
.init_array 712 712 0 0.0
.rodata 162897 162929 32 0.0
.text 1686066 1688002 1936 0.1
ota-provider-app debug (read only) 1712241 1714209 1968 0.1
(read/write) 81368 81368 0 0.0
.bss 41120 41120 0 0.0
.data 1160 1160 0 0.0
.data.rel.ro 33560 33560 0 0.0
.dynamic 608 608 0 0.0
.got 4240 4240 0 0.0
.init 27 27 0 0.0
.init_array 624 624 0 0.0
.rodata 151238 151270 32 0.0
.text 1442322 1444258 1936 0.1
ota-requestor-app debug (read only) 1701673 1703609 1936 0.1
(read/write) 83320 83320 0 0.0
.bss 42272 42272 0 0.0
.data 1128 1128 0 0.0
.data.rel.ro 34616 34616 0 0.0
.dynamic 592 592 0 0.0
.got 4040 4040 0 0.0
.init 27 27 0 0.0
.init_array 624 624 0 0.0
.rodata 144887 144919 32 0.0
.text 1439890 1441794 1904 0.1
shell debug (read only) 2301113 2306489 5376 0.2
(read/write) 141648 141680 32 0.0
.bss 62080 62080 0 0.0
.data 800 832 32 4.0
.data.rel.ro 73072 73072 0 0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 904 904 0 0.0
.rodata 205810 205874 64 0.0
.text 1938786 1944098 5312 0.3
thermostat-no-ble arm64 (read only) 2129932 2132268 2336 0.1
(read/write) 140673 140721 48 0.0
.bss 57665 57665 0 0.0
.data 984 984 0 0.0
.data.rel.ro 74904 74952 48 0.1
.dynamic 560 560 0 0.0
.got 4152 4152 0 0.0
.init 24 24 0 0.0
.init_array 328 328 0 0.0
.rodata 131964 131996 32 0.0
.text 1779904 1782160 2256 0.1
tv-app debug (read only) 2525897 2528681 2784 0.1
(read/write) 139832 139832 0 0.0
.bss 57280 57280 0 0.0
.data 3168 3168 0 0.0
.data.rel.ro 73368 73368 0 0.0
.dynamic 592 592 0 0.0
.got 4528 4528 0 0.0
.init 27 27 0 0.0
.init_array 880 880 0 0.0
.rodata 195564 195564 0 0.0
.text 2156626 2159410 2784 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2389752 2390672 920 0.0
.bss 188356 188356 0 0.0
.data 5296 5312 16 0.3
.text 1352352 1353272 920 0.1
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2348920 2349200 280 0.0
.bss 180936 180936 0 0.0
.data 5600 5600 0 0.0
.text 1311520 1311800 280 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2312840 2313120 280 0.0
.bss 180824 180824 0 0.0
.data 5584 5584 0 0.0
.text 1275440 1275720 280 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139648 1139648 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103032 103032 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2302812 2303092 280 0.0
.bss 178100 178100 0 0.0
.data 5400 5400 0 0.0
.text 1265384 1265664 280 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 1004835 1005139 304 0.0
bss 121280 121280 0 0.0
rodata 118128 118160 32 0.0
text 686484 686756 272 0.0
nrf52840dk_nrf52840+rpc (read/write) 976311 976631 320 0.0
bss 117136 117136 0 0.0
rodata 109588 109620 32 0.0
text 671124 671412 288 0.0
nrf52840dongle_nrf52840 (read/write) 1021639 1021959 320 0.0
bss 122644 122644 0 0.0
rodata 117016 117048 32 0.0
text 692052 692328 276 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 911494 911814 320 0.0
bss 117840 117840 0 0.0
rodata 111384 111416 32 0.0
text 601508 601784 276 0.0
lock-app nrf52840dk_nrf52840 (read/write) 937091 937395 304 0.0
bss 119616 119616 0 0.0
rodata 106528 106560 32 0.0
text 632404 632676 272 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 844586 844890 304 0.0
bss 116212 116212 0 0.0
rodata 99700 99732 32 0.0
text 548204 548476 272 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 541747 541747 0 0.0
bss 52588 52588 0 0.0
rodata 50048 50048 0 0.0
text 376920 376920 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 939323 939627 304 0.0
bss 119368 119368 0 0.0
rodata 106712 106744 32 0.0
text 634648 634920 272 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 934663 934967 304 0.0
bss 119372 119372 0 0.0
rodata 106004 106036 32 0.0
text 630680 630956 276 0.0
shell nrf52840dk_nrf52840 (read/write) 803151 803151 0 0.0
bss 111232 111232 0 0.0
rodata 78532 78532 0 0.0
text 535824 535824 0 0.0
p6 all-clusters-app default (read/write) 2463848 2464968 1120 0.0
.bss 117976 117976 0 0.0
.data 2584 2600 16 0.6
.text 1422112 1423232 1120 0.1
light-app default (read/write) 2367296 2367648 352 0.0
.bss 107600 107600 0 0.0
.data 2432 2432 0 0.0
.text 1325560 1325912 352 0.0
lock-app default (read/write) 2332480 2332832 352 0.0
.bss 107304 107304 0 0.0
.data 2392 2392 0 0.0
.text 1290744 1291096 352 0.0
qpg lighting-app qpg6105+debug (read only) 585808 586192 384 0.1
(read/write) 146936 146936 0 0.0
.bss 88856 88856 0 0.0
.data 1084 1084 0 0.0
.text 580488 580872 384 0.1
lock-app qpg6105+debug (read only) 531884 532268 384 0.1
(read/write) 146940 146940 0 0.0
.bss 88304 88304 0 0.0
.data 1024 1024 0 0.0
.text 526564 526948 384 0.1
persistent-storage-app qpg6105+debug (read only) 99520 99520 0 0.0
(read/write) 146940 146940 0 0.0
.bss 24004 24004 0 0.0
.data 176 176 0 0.0
.text 94200 94200 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 865822 866318 496 0.1
bss 88592 88592 0 0.0
noinit 37160 37160 0 0.0
text 607684 608146 462 0.1

@github-actions
Copy link

github-actions bot commented Feb 9, 2022

PR #13641: Size comparison from cab1ff9 to 5256016

Increases above 0.2%:

platform target config section cab1ff9 5256016 change % change
linux chip-tool-ipv6only arm64 (read only) 7394508 7434940 40432 0.5
.text 6360180 6399044 38864 0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release .data 5288 5304 16 0.3
p6 all-clusters-app default .data 2568 2584 16 0.6
Increases (22 builds for cyw30739, efr32, esp32, k32w, linux, mbed, p6, qpg, telink)
platform target config section cab1ff9 5256016 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 595382 595894 512 0.1
.app_xip_area 500916 501348 432 0.1
.bss 77188 77268 80 0.1
lock cyw930739m2evb_01 (read/write) 556334 556846 512 0.1
.app_xip_area 463404 463836 432 0.1
.bss 75684 75764 80 0.1
ota-requestor cyw930739m2evb_01 (read/write) 577314 577830 516 0.1
.app_xip_area 475088 475524 436 0.1
.bss 84652 84732 80 0.1
efr32 lighting-app BRD4161A (read only) 866340 866836 496 0.1
(read/write) 126684 126764 80 0.1
.bss 124760 124840 80 0.1
.text 866332 866828 496 0.1
BRD4161A+rpc (read only) 853788 854292 504 0.1
(read/write) 143344 143424 80 0.1
.bss 141320 141400 80 0.1
.text 853780 854284 504 0.1
window-app BRD4161A (read only) 838544 839040 496 0.1
(read/write) 125328 125408 80 0.1
.bss 123448 123528 80 0.1
.text 838536 839032 496 0.1
esp32 all-clusters-app c3devkit (read only) 939372 940388 1016 0.1
(read/write) 1401882 1402026 144 0.0
.dram0.bss 70024 70104 80 0.1
.dram0.data 14260 14276 16 0.1
.flash.rodata 198688 198736 48 0.0
.flash.text 939372 940388 1016 0.1
m5stack (read only) 987511 988511 1000 0.1
(read/write) 466892 467044 152 0.0
.dram0.bss 75160 75240 80 0.1
.dram0.data 34024 34040 16 0.0
.flash.rodata 225580 225636 56 0.0
.flash.text 982127 983127 1000 0.1
k32w light k32w061+release (read/write) 679212 679728 516 0.1
.bss 76632 76712 80 0.1
.text 594896 595332 436 0.1
lock k32w061+release (read/write) 684012 684528 516 0.1
.bss 76984 77064 80 0.1
.text 599300 599736 436 0.1
linux chip-tool-ipv6only arm64 (read only) 7394508 7434940 40432 0.5
(read/write) 301233 301649 416 0.1
.bss 50641 50737 96 0.2
.data.rel.ro 199216 199496 280 0.1
.got 46400 46448 48 0.1
.rodata 397316 398180 864 0.2
.text 6360180 6399044 38864 0.6
thermostat-no-ble arm64 (read only) 2134876 2138204 3328 0.2
(read/write) 141009 141185 176 0.1
.bss 57953 58049 96 0.2
.data.rel.ro 74952 75024 72 0.1
.rodata 132316 132348 32 0.0
.text 1784400 1787616 3216 0.2
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2390920 2391904 984 0.0
.bss 188932 189012 80 0.0
.data 5288 5304 16 0.3
.text 1353520 1354504 984 0.1
lighting-app CY8CPROTO_062_4343W+release (read/write) 2349448 2349856 408 0.0
.bss 181000 181080 80 0.0
.text 1312048 1312456 408 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2317408 2317816 408 0.0
.bss 180912 180992 80 0.0
.text 1280008 1280416 408 0.0
shell CY8CPROTO_062_4343W+release (read/write) 2303404 2303812 408 0.0
.bss 178164 178244 80 0.0
.text 1265976 1266384 408 0.0
p6 all-clusters-app default (read/write) 2465432 2466712 1280 0.1
.bss 118544 118624 80 0.1
.data 2568 2584 16 0.6
.text 1423696 1424976 1280 0.1
light-app default (read/write) 2367776 2368256 480 0.0
.bss 107664 107744 80 0.1
.text 1326040 1326520 480 0.0
lock-app default (read/write) 2336584 2337072 488 0.0
.bss 107400 107480 80 0.1
.text 1294848 1295336 488 0.0
qpg lighting-app qpg6105+debug (read only) 586368 586840 472 0.1
.bss 88920 88960 40 0.0
.text 581048 581520 472 0.1
lock-app qpg6105+debug (read only) 535332 535804 472 0.1
.bss 88392 88432 40 0.0
.text 530012 530484 472 0.1
telink lighting-app tlsr9518adk80d (read/write) 870166 870830 664 0.1
bss 88680 88760 80 0.1
text 611502 612060 558 0.1
Full report (24 builds for cyw30739, efr32, esp32, k32w, linux, mbed, p6, qpg, telink)
platform target config section cab1ff9 5256016 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 595382 595894 512 0.1
.app_xip_area 500916 501348 432 0.1
.bss 77188 77268 80 0.1
.data 624 624 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 556334 556846 512 0.1
.app_xip_area 463404 463836 432 0.1
.bss 75684 75764 80 0.1
.data 588 588 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 577314 577830 516 0.1
.app_xip_area 475088 475524 436 0.1
.bss 84652 84732 80 0.1
.data 532 532 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 866340 866836 496 0.1
(read/write) 126684 126764 80 0.1
.bss 124760 124840 80 0.1
.data 1924 1924 0 0.0
.text 866332 866828 496 0.1
BRD4161A+rpc (read only) 853788 854292 504 0.1
(read/write) 143344 143424 80 0.1
.bss 141320 141400 80 0.1
.data 2024 2024 0 0.0
.text 853780 854284 504 0.1
window-app BRD4161A (read only) 838544 839040 496 0.1
(read/write) 125328 125408 80 0.1
.bss 123448 123528 80 0.1
.data 1880 1880 0 0.0
.text 838536 839032 496 0.1
esp32 all-clusters-app c3devkit (read only) 939372 940388 1016 0.1
(read/write) 1401882 1402026 144 0.0
.dram0.bss 70024 70104 80 0.1
.dram0.data 14260 14276 16 0.1
.flash.rodata 198688 198736 48 0.0
.flash.text 939372 940388 1016 0.1
.iram0.text 62056 62056 0 0.0
m5stack (read only) 987511 988511 1000 0.1
(read/write) 466892 467044 152 0.0
.dram0.bss 75160 75240 80 0.1
.dram0.data 34024 34040 16 0.0
.flash.rodata 225580 225636 56 0.0
.flash.text 982127 983127 1000 0.1
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 679212 679728 516 0.1
.bss 76632 76712 80 0.1
.data 1884 1884 0 0.0
.text 594896 595332 436 0.1
lock k32w061+release (read/write) 684012 684528 516 0.1
.bss 76984 77064 80 0.1
.data 1928 1928 0 0.0
.text 599300 599736 436 0.1
linux chip-tool-ipv6only arm64 (read only) 7394508 7434940 40432 0.5
(read/write) 301233 301649 416 0.1
.bss 50641 50737 96 0.2
.data 1176 1176 0 0.0
.data.rel.ro 199216 199496 280 0.1
.dynamic 560 560 0 0.0
.got 46400 46448 48 0.1
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 397316 398180 864 0.2
.text 6360180 6399044 38864 0.6
thermostat-no-ble arm64 (read only) 2134876 2138204 3328 0.2
(read/write) 141009 141185 176 0.1
.bss 57953 58049 96 0.2
.data 984 984 0 0.0
.data.rel.ro 74952 75024 72 0.1
.dynamic 560 560 0 0.0
.got 4152 4152 0 0.0
.init 24 24 0 0.0
.init_array 336 336 0 0.0
.rodata 132316 132348 32 0.0
.text 1784400 1787616 3216 0.2
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2390920 2391904 984 0.0
.bss 188932 189012 80 0.0
.data 5288 5304 16 0.3
.text 1353520 1354504 984 0.1
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2349448 2349856 408 0.0
.bss 181000 181080 80 0.0
.data 5600 5600 0 0.0
.text 1312048 1312456 408 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2317408 2317816 408 0.0
.bss 180912 180992 80 0.0
.data 5584 5584 0 0.0
.text 1280008 1280416 408 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139648 1139648 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103032 103032 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2303404 2303812 408 0.0
.bss 178164 178244 80 0.0
.data 5400 5400 0 0.0
.text 1265976 1266384 408 0.0
p6 all-clusters-app default (read/write) 2465432 2466712 1280 0.1
.bss 118544 118624 80 0.1
.data 2568 2584 16 0.6
.text 1423696 1424976 1280 0.1
light-app default (read/write) 2367776 2368256 480 0.0
.bss 107664 107744 80 0.1
.data 2432 2432 0 0.0
.text 1326040 1326520 480 0.0
lock-app default (read/write) 2336584 2337072 488 0.0
.bss 107400 107480 80 0.1
.data 2400 2400 0 0.0
.text 1294848 1295336 488 0.0
qpg lighting-app qpg6105+debug (read only) 586368 586840 472 0.1
(read/write) 146936 146936 0 0.0
.bss 88920 88960 40 0.0
.data 1084 1084 0 0.0
.text 581048 581520 472 0.1
lock-app qpg6105+debug (read only) 535332 535804 472 0.1
(read/write) 146936 146936 0 0.0
.bss 88392 88432 40 0.0
.data 1028 1028 0 0.0
.text 530012 530484 472 0.1
persistent-storage-app qpg6105+debug (read only) 99520 99520 0 0.0
(read/write) 146940 146940 0 0.0
.bss 24004 24004 0 0.0
.data 176 176 0 0.0
.text 94200 94200 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 870166 870830 664 0.1
bss 88680 88760 80 0.1
noinit 37160 37160 0 0.0
text 611502 612060 558 0.1

Copy link
Contributor

@bzbarsky-apple bzbarsky-apple left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The most important things still left to do:

  1. Remove the wrong code in InteractionModelEngine.cpp.
  2. Fix handling of non-write-request messages in WriteHandler.
  3. Fix handling of exchange timeout to not lose acks.
  4. Get the requested followups filed so they are tracked.

You probably want to rebase on top of #14907 to fix the build problems.

src/app/ChunkedWriteCallback.cpp Outdated Show resolved Hide resolved
src/app/ChunkedWriteCallback.cpp Outdated Show resolved Hide resolved
src/app/ChunkedWriteCallback.cpp Outdated Show resolved Hide resolved
src/app/AttributeAccessToken.h Outdated Show resolved Hide resolved
src/app/ChunkedWriteCallback.cpp Outdated Show resolved Hide resolved
src/app/util/ember-compatibility-functions.cpp Outdated Show resolved Hide resolved
src/app/ReadClient.cpp Show resolved Hide resolved
src/app/WriteClient.cpp Show resolved Hide resolved
@github-actions
Copy link

github-actions bot commented Feb 9, 2022

PR #13641: Size comparison from aa5d5c7 to 42a8f5c

Increases (1 build for telink)
platform target config section aa5d5c7 42a8f5c change % change
telink lighting-app tlsr9518adk80d (read/write) 866702 867450 748 0.1
bss 88664 88744 80 0.1
text 608294 608904 610 0.1
Full report (1 build for telink)
platform target config section aa5d5c7 42a8f5c change % change
telink lighting-app tlsr9518adk80d (read/write) 866702 867450 748 0.1
bss 88664 88744 80 0.1
noinit 37160 37160 0 0.0
text 608294 608904 610 0.1

@github-actions
Copy link

github-actions bot commented Feb 9, 2022

PR #13641: Size comparison from 1afe006 to 94696c6

Increases above 0.2%:

platform target config section 1afe006 94696c6 change % change
linux all-clusters-app debug (read only) 2329273 2334825 5552 0.2
.data 1168 1232 64 5.5
.text 1962594 1968050 5456 0.3
bridge-app debug+rpc .bss 39088 39184 96 0.2
chip-tool debug (read only) 7466349 7518445 52096 0.7
.bss 32360 32456 96 0.3
.rodata 414773 416085 1312 0.3
.text 6651141 6701445 50304 0.8
chip-tool-ipv6only arm64 (read only) 7390428 7430252 39824 0.5
.text 6355892 6394132 38240 0.6
door-lock-app debug .bss 42160 42256 96 0.2
lighting-app debug+rpc .bss 43104 43200 96 0.2
ota-provider-app debug .bss 41120 41216 96 0.2
ota-requestor-app debug .bss 42272 42368 96 0.2
shell debug (read only) 2302729 2308345 5616 0.2
.data 768 800 32 4.2
.text 1941138 1946626 5488 0.3
mbed all-clusters-app CY8CPROTO_062_4343W+release .data 5280 5296 16 0.3
p6 all-clusters-app default .data 2632 2648 16 0.6
Increases (31 builds for cyw30739, efr32, esp32, k32w, linux, mbed, p6, qpg, telink)
platform target config section 1afe006 94696c6 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 595374 595926 552 0.1
.app_xip_area 500908 501380 472 0.1
.bss 77188 77268 80 0.1
lock cyw930739m2evb_01 (read/write) 556326 556878 552 0.1
.app_xip_area 463396 463868 472 0.1
.bss 75684 75764 80 0.1
ota-requestor cyw930739m2evb_01 (read/write) 577314 577862 548 0.1
.app_xip_area 475088 475556 468 0.1
.bss 84652 84732 80 0.1
efr32 lighting-app BRD4161A (read only) 866532 867092 560 0.1
(read/write) 126684 126764 80 0.1
.bss 124760 124840 80 0.1
.text 866524 867084 560 0.1
BRD4161A+rpc (read only) 853996 854540 544 0.1
(read/write) 143344 143424 80 0.1
.bss 141320 141400 80 0.1
.text 853988 854532 544 0.1
window-app BRD4161A (read only) 838752 839296 544 0.1
(read/write) 125328 125408 80 0.1
.bss 123448 123528 80 0.1
.text 838744 839288 544 0.1
esp32 all-clusters-app c3devkit (read only) 938970 940004 1034 0.1
(read/write) 1397658 1397834 176 0.0
.dram0.bss 66328 66408 80 0.1
.dram0.data 14260 14284 24 0.2
.flash.rodata 198160 198240 80 0.0
.flash.text 938970 940004 1034 0.1
m5stack (read only) 987163 988079 916 0.1
(read/write) 462680 462864 184 0.0
.dram0.bss 71472 71552 80 0.1
.dram0.data 34024 34048 24 0.1
.flash.rodata 225056 225136 80 0.0
.flash.text 981779 982695 916 0.1
k32w light k32w061+release (read/write) 679196 679768 572 0.1
.bss 76632 76712 80 0.1
.text 594880 595372 492 0.1
lock k32w061+release (read/write) 683996 684568 572 0.1
.bss 76984 77064 80 0.1
.text 599284 599776 492 0.1
linux all-clusters-app debug (read only) 2329273 2334825 5552 0.2
(read/write) 140032 140192 160 0.1
.bss 54656 54752 96 0.2
.data 1168 1232 64 5.5
.rodata 204453 204549 96 0.0
.text 1962594 1968050 5456 0.3
bridge-app debug+rpc (read only) 1705829 1708645 2816 0.2
(read/write) 84328 84424 96 0.1
.bss 39088 39184 96 0.2
.rodata 140332 140428 96 0.1
.text 1448949 1451669 2720 0.2
chip-tool debug (read only) 7466349 7518445 52096 0.7
(read/write) 197176 197464 288 0.1
.bss 32360 32456 96 0.3
.data.rel.ro 157624 157832 208 0.1
.rodata 414773 416085 1312 0.3
.text 6651141 6701445 50304 0.8
chip-tool-ipv6only arm64 (read only) 7390428 7430252 39824 0.5
(read/write) 301313 301745 432 0.1
.bss 50641 50737 96 0.2
.data.rel.ro 199304 199584 280 0.1
.got 46400 46448 48 0.1
.rodata 397252 398148 896 0.2
.text 6355892 6394132 38240 0.6
door-lock-app debug (read only) 1910537 1913385 2848 0.1
(read/write) 110680 110776 96 0.1
.bss 42160 42256 96 0.2
.rodata 171858 171986 128 0.1
.text 1590162 1592882 2720 0.2
lighting-app debug+rpc (read only) 2005097 2007929 2832 0.1
(read/write) 115632 115728 96 0.1
.bss 43104 43200 96 0.2
.rodata 163057 163185 128 0.1
.text 1687394 1690098 2704 0.2
ota-provider-app debug (read only) 1714521 1717353 2832 0.2
(read/write) 81368 81464 96 0.1
.bss 41120 41216 96 0.2
.rodata 151910 152038 128 0.1
.text 1443906 1446610 2704 0.2
ota-requestor-app debug (read only) 1703161 1705961 2800 0.2
(read/write) 83320 83416 96 0.1
.bss 42272 42368 96 0.2
.rodata 145047 145175 128 0.1
.text 1441218 1443890 2672 0.2
shell debug (read only) 2302729 2308345 5616 0.2
(read/write) 141584 141712 128 0.1
.bss 62048 62144 96 0.2
.data 768 800 32 4.2
.rodata 205170 205298 128 0.1
.text 1941138 1946626 5488 0.3
thermostat-no-ble arm64 (read only) 2131052 2134300 3248 0.2
(read/write) 140673 140833 160 0.1
.bss 57665 57761 96 0.2
.data.rel.ro 74904 74976 72 0.1
.rodata 132108 132172 64 0.0
.text 1780880 1783984 3104 0.2
tv-app debug (read only) 2503193 2506825 3632 0.1
(read/write) 139512 139608 96 0.1
.bss 57280 57376 96 0.2
.rodata 196140 196268 128 0.1
.text 2134114 2137618 3504 0.2
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2389944 2390968 1024 0.0
.bss 188404 188484 80 0.0
.data 5280 5296 16 0.3
.text 1352544 1353568 1024 0.1
lighting-app CY8CPROTO_062_4343W+release (read/write) 2349448 2349880 432 0.0
.bss 181000 181080 80 0.0
.text 1312048 1312480 432 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2317408 2317840 432 0.0
.bss 180912 180992 80 0.0
.text 1280008 1280440 432 0.0
shell CY8CPROTO_062_4343W+release (read/write) 2303404 2303844 440 0.0
.bss 178164 178244 80 0.0
.text 1265976 1266416 440 0.0
p6 all-clusters-app default (read/write) 2476616 2477848 1232 0.0
.bss 117656 117736 80 0.1
.data 2632 2648 16 0.6
.text 1434880 1436112 1232 0.1
light-app default (read/write) 2380312 2380872 560 0.0
.bss 107296 107376 80 0.1
.text 1338576 1339136 560 0.0
lock-app default (read/write) 2349136 2349680 544 0.0
.bss 107040 107120 80 0.1
.text 1307400 1307944 544 0.0
qpg lighting-app qpg6105+debug (read only) 586352 586856 504 0.1
.bss 88920 88960 40 0.0
.text 581032 581536 504 0.1
lock-app qpg6105+debug (read only) 535316 535804 488 0.1
.bss 88392 88432 40 0.0
.text 529996 530484 488 0.1
telink lighting-app tlsr9518adk80d (read/write) 866774 867530 756 0.1
bss 88664 88744 80 0.1
text 608368 608978 610 0.1
Full report (33 builds for cyw30739, efr32, esp32, k32w, linux, mbed, p6, qpg, telink)
platform target config section 1afe006 94696c6 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 595374 595926 552 0.1
.app_xip_area 500908 501380 472 0.1
.bss 77188 77268 80 0.1
.data 624 624 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 556326 556878 552 0.1
.app_xip_area 463396 463868 472 0.1
.bss 75684 75764 80 0.1
.data 588 588 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor cyw930739m2evb_01 (read/write) 577314 577862 548 0.1
.app_xip_area 475088 475556 468 0.1
.bss 84652 84732 80 0.1
.data 532 532 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 866532 867092 560 0.1
(read/write) 126684 126764 80 0.1
.bss 124760 124840 80 0.1
.data 1924 1924 0 0.0
.text 866524 867084 560 0.1
BRD4161A+rpc (read only) 853996 854540 544 0.1
(read/write) 143344 143424 80 0.1
.bss 141320 141400 80 0.1
.data 2024 2024 0 0.0
.text 853988 854532 544 0.1
window-app BRD4161A (read only) 838752 839296 544 0.1
(read/write) 125328 125408 80 0.1
.bss 123448 123528 80 0.1
.data 1880 1880 0 0.0
.text 838744 839288 544 0.1
esp32 all-clusters-app c3devkit (read only) 938970 940004 1034 0.1
(read/write) 1397658 1397834 176 0.0
.dram0.bss 66328 66408 80 0.1
.dram0.data 14260 14284 24 0.2
.flash.rodata 198160 198240 80 0.0
.flash.text 938970 940004 1034 0.1
.iram0.text 62056 62056 0 0.0
m5stack (read only) 987163 988079 916 0.1
(read/write) 462680 462864 184 0.0
.dram0.bss 71472 71552 80 0.1
.dram0.data 34024 34048 24 0.1
.flash.rodata 225056 225136 80 0.0
.flash.text 981779 982695 916 0.1
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 679196 679768 572 0.1
.bss 76632 76712 80 0.1
.data 1884 1884 0 0.0
.text 594880 595372 492 0.1
lock k32w061+release (read/write) 683996 684568 572 0.1
.bss 76984 77064 80 0.1
.data 1928 1928 0 0.0
.text 599284 599776 492 0.1
linux all-clusters-app debug (read only) 2329273 2334825 5552 0.2
(read/write) 140032 140192 160 0.1
.bss 54656 54752 96 0.2
.data 1168 1232 64 5.5
.data.rel.ro 78536 78536 0 0.0
.dynamic 592 592 0 0.0
.got 4136 4136 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 204453 204549 96 0.0
.text 1962594 1968050 5456 0.3
bridge-app debug+rpc (read only) 1705829 1708645 2816 0.2
(read/write) 84328 84424 96 0.1
.bss 39088 39184 96 0.2
.data 1970 1970 0 0.0
.data.rel.ro 38120 38120 0 0.0
.dynamic 592 592 0 0.0
.got 3976 3976 0 0.0
.init 27 27 0 0.0
.init_array 560 560 0 0.0
.rodata 140332 140428 96 0.1
.text 1448949 1451669 2720 0.2
chip-tool debug (read only) 7466349 7518445 52096 0.7
(read/write) 197176 197464 288 0.1
.bss 32360 32456 96 0.3
.data 1152 1152 0 0.0
.data.rel.ro 157624 157832 208 0.1
.dynamic 608 608 0 0.0
.got 4784 4784 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 414773 416085 1312 0.3
.text 6651141 6701445 50304 0.8
chip-tool-ipv6only arm64 (read only) 7390428 7430252 39824 0.5
(read/write) 301313 301745 432 0.1
.bss 50641 50737 96 0.2
.data 1176 1176 0 0.0
.data.rel.ro 199304 199584 280 0.1
.dynamic 560 560 0 0.0
.got 46400 46448 48 0.1
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 397252 398148 896 0.2
.text 6355892 6394132 38240 0.6
door-lock-app debug (read only) 1910537 1913385 2848 0.1
(read/write) 110680 110776 96 0.1
.bss 42160 42256 96 0.2
.data 946 946 0 0.0
.data.rel.ro 62160 62160 0 0.0
.dynamic 592 592 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 171858 171986 128 0.1
.text 1590162 1592882 2720 0.2
lighting-app debug+rpc (read only) 2005097 2007929 2832 0.1
(read/write) 115632 115728 96 0.1
.bss 43104 43200 96 0.2
.data 1368 1368 0 0.0
.data.rel.ro 65672 65672 0 0.0
.dynamic 608 608 0 0.0
.got 4144 4144 0 0.0
.init 27 27 0 0.0
.init_array 712 712 0 0.0
.rodata 163057 163185 128 0.1
.text 1687394 1690098 2704 0.2
ota-provider-app debug (read only) 1714521 1717353 2832 0.2
(read/write) 81368 81464 96 0.1
.bss 41120 41216 96 0.2
.data 1160 1160 0 0.0
.data.rel.ro 33560 33560 0 0.0
.dynamic 608 608 0 0.0
.got 4240 4240 0 0.0
.init 27 27 0 0.0
.init_array 624 624 0 0.0
.rodata 151910 152038 128 0.1
.text 1443906 1446610 2704 0.2
ota-requestor-app debug (read only) 1703161 1705961 2800 0.2
(read/write) 83320 83416 96 0.1
.bss 42272 42368 96 0.2
.data 1128 1128 0 0.0
.data.rel.ro 34616 34616 0 0.0
.dynamic 592 592 0 0.0
.got 4040 4040 0 0.0
.init 27 27 0 0.0
.init_array 624 624 0 0.0
.rodata 145047 145175 128 0.1
.text 1441218 1443890 2672 0.2
shell debug (read only) 2302729 2308345 5616 0.2
(read/write) 141584 141712 128 0.1
.bss 62048 62144 96 0.2
.data 768 800 32 4.2
.data.rel.ro 73072 73072 0 0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 904 904 0 0.0
.rodata 205170 205298 128 0.1
.text 1941138 1946626 5488 0.3
thermostat-no-ble arm64 (read only) 2131052 2134300 3248 0.2
(read/write) 140673 140833 160 0.1
.bss 57665 57761 96 0.2
.data 984 984 0 0.0
.data.rel.ro 74904 74976 72 0.1
.dynamic 560 560 0 0.0
.got 4152 4152 0 0.0
.init 24 24 0 0.0
.init_array 328 328 0 0.0
.rodata 132108 132172 64 0.0
.text 1780880 1783984 3104 0.2
tv-app debug (read only) 2503193 2506825 3632 0.1
(read/write) 139512 139608 96 0.1
.bss 57280 57376 96 0.2
.data 3168 3168 0 0.0
.data.rel.ro 73048 73048 0 0.0
.dynamic 592 592 0 0.0
.got 4528 4528 0 0.0
.init 27 27 0 0.0
.init_array 880 880 0 0.0
.rodata 196140 196268 128 0.1
.text 2134114 2137618 3504 0.2
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2389944 2390968 1024 0.0
.bss 188404 188484 80 0.0
.data 5280 5296 16 0.3
.text 1352544 1353568 1024 0.1
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2349448 2349880 432 0.0
.bss 181000 181080 80 0.0
.data 5600 5600 0 0.0
.text 1312048 1312480 432 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2317408 2317840 432 0.0
.bss 180912 180992 80 0.0
.data 5584 5584 0 0.0
.text 1280008 1280440 432 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139648 1139648 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103032 103032 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2303404 2303844 440 0.0
.bss 178164 178244 80 0.0
.data 5400 5400 0 0.0
.text 1265976 1266416 440 0.0
p6 all-clusters-app default (read/write) 2476616 2477848 1232 0.0
.bss 117656 117736 80 0.1
.data 2632 2648 16 0.6
.text 1434880 1436112 1232 0.1
light-app default (read/write) 2380312 2380872 560 0.0
.bss 107296 107376 80 0.1
.data 2496 2496 0 0.0
.text 1338576 1339136 560 0.0
lock-app default (read/write) 2349136 2349680 544 0.0
.bss 107040 107120 80 0.1
.data 2464 2464 0 0.0
.text 1307400 1307944 544 0.0
qpg lighting-app qpg6105+debug (read only) 586352 586856 504 0.1
(read/write) 146936 146936 0 0.0
.bss 88920 88960 40 0.0
.data 1084 1084 0 0.0
.text 581032 581536 504 0.1
lock-app qpg6105+debug (read only) 535316 535804 488 0.1
(read/write) 146936 146936 0 0.0
.bss 88392 88432 40 0.0
.data 1028 1028 0 0.0
.text 529996 530484 488 0.1
persistent-storage-app qpg6105+debug (read only) 99520 99520 0 0.0
(read/write) 146940 146940 0 0.0
.bss 24004 24004 0 0.0
.data 176 176 0 0.0
.text 94200 94200 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 866774 867530 756 0.1
bss 88664 88744 80 0.1
noinit 37160 37160 0 0.0
text 608368 608978 610 0.1

@erjiaqing
Copy link
Contributor Author

I'm taking look at darwin test failures for 13641
Last green CI is 429f8b0

All failed tests related to

2022-02-09T12:45:42.6623140Z 2022-02-09 12:45:42.458295+0000 xctest[44671:349660] Failure performing action. C++-mangled success callback type: 'PFvPvE', error: ../../../../../../../../../../../work/connectedhomeip/connectedhomeip/src/lib/core/CHIPTLV.h:1141: CHIP Error 0x0000000B: No memory

That line is ReserveBuffer

The only place calling ReserveBuffer related to Write interactions is starting a new chunk (StartNewMessage). This hints us we got a buffer which is too small. However, we do get a required buffer, or we will met failure at line 214 in WriteClient.cpp instead of CHIPTLV.h

We are not always hitting this error.

Also, we are not always hitting this error -- we got testSendClusterTestCluster_000017_WriteAttribute failed in attempt 2, but testSendClusterTestCluster_000019_WriteAttribute passed.

@erjiaqing
Copy link
Contributor Author

After checking all possibilities, I guess the cause might be

https://github.com/project-chip/connectedhomeip/pull/13641/files/429f8b0b66c48a04afdd56ca83c8d48a32ca3d71..165d1750302241dfed2eebae8f2b6eb0792d7622#diff-d9014002808750062754795b50447a0beb3580378e3af98d714e1c0d3f3f6e48R388-R390

What if WriteClient is built without CONFIG_IM_BUILD_FOR_UNIT_TEST but linked to a file using it with CONFIG_IM_BUILD_FOR_UNIT_TEST=1

@erjiaqing
Copy link
Contributor Author

After checking all possibilities, I guess the cause might be

https://github.com/project-chip/connectedhomeip/pull/13641/files/429f8b0b66c48a04afdd56ca83c8d48a32ca3d71..165d1750302241dfed2eebae8f2b6eb0792d7622#diff-d9014002808750062754795b50447a0beb3580378e3af98d714e1c0d3f3f6e48R388-R390

What if WriteClient is built without CONFIG_IM_BUILD_FOR_UNIT_TEST but linked to a file using it with CONFIG_IM_BUILD_FOR_UNIT_TEST=1

Verified locally, this is caused by mismatch build flags, pushed a commit, #14991 for tracking this issue.

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.

Add chunking support for IM write request
5 participants