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

Added using CRA/CRI values in the controller for MRP intervals #11471

Merged

Conversation

kkasperczyk-no
Copy link
Contributor

Problem

Controller is using default MRP retransmission interval values for all of the devices. According to spec it should use
discovered CRA and CRI values for that purpose and set MRP parameters independently for every single device.

Change overview

  • Added storing MRP intervals values in the CHIPDevice, SecureSession and UnathenticatedSession.
  • Added setting MRP intervals for sessions using discovered device data or if they are not available with the default values.
  • Added setting ReliableMessageContext config when creating every new ExchangeContext based on MRP intervals got from the SessionHandle
  • Changed INITIAL retransmission interval name in the Reliable Message module to IDLE as that is compatible with the spec.

Testing

Verified manually using the Python CHIP controller and nrfconnect accessory that:

  • After calling the resolve command MRP intervals are changed from the default one to the one found in the discovered CRA/CRI values
  • Changing intervals on the accessory and calling resolve command again results in updating MRP intervals

@todo
Copy link

todo bot commented Nov 5, 2021

In some cases like PASE over IP, CRA and CRI values from commissionable node service should be used

// TODO: In some cases like PASE over IP, CRA and CRI values from commissionable node service should be used
device->GetMRPIntervals(mrpIdleInterval, mrpActiveInterval);
session.Value().GetUnauthenticatedSession()->SetMRPIntervals(mrpIdleInterval, mrpActiveInterval);
exchangeCtxt = mSystemState->ExchangeMgr()->NewContext(session.Value(), &mPairingSession);
VerifyOrExit(exchangeCtxt != nullptr, err = CHIP_ERROR_INTERNAL);


This comment was generated by todo based on a TODO comment in a3e0086 in #11471. cc @kkasperczyk-no.

@github-actions
Copy link

github-actions bot commented Nov 5, 2021

PR #11471: Size comparison from 3f67119 to a3e0086

Increases above 0.2%:

platform target config section 3f67119 a3e0086 change % change
esp32 all-clusters-app c3devkit .dram0.bss 57576 57736 160 0.3
m5stack .dram0.bss 60088 60248 160 0.3
k32w shell k32w061+debug .bss 78952 79272 320 0.4
linux all-clusters-app debug .bss 50000 50160 160 0.3
bridge-app debug+rpc .bss 34928 35088 160 0.5
lighting-app debug+rpc .bss 40568 40728 160 0.4
ota-provider-app debug .bss 36992 37152 160 0.4
ota-requestor-app debug (read/write) 76656 76848 192 0.3
.bss 45120 45312 192 0.4
shell debug (read/write) 57608 57768 160 0.3
.bss 16040 16200 160 1.0
.rodata 77903 78127 224 0.3
tv-app debug .bss 222640 223312 672 0.3
qpg lighting-app qpg6100+debug .bss 50944 51104 160 0.3
lock-app qpg6100+debug .bss 49888 50048 160 0.3
Increases (35 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3f67119 a3e0086 change % change
efr32 lighting-app BRD4161A (read only) 744852 745140 288 0.0
(read/write) 115704 115864 160 0.1
.bss 113932 114092 160 0.1
.text 744844 745132 288 0.0
BRD4161A+rpc (read only) 732384 732688 304 0.0
(read/write) 132324 132484 160 0.1
.bss 130436 130596 160 0.1
.text 732376 732680 304 0.0
lock-app BRD4161A (read only) 724136 724440 304 0.0
(read/write) 113524 113684 160 0.1
.bss 111788 111948 160 0.1
.text 724128 724432 304 0.0
window-app BRD4161A (read only) 725048 725336 288 0.0
(read/write) 113844 114004 160 0.1
.bss 112108 112268 160 0.1
.text 725040 725328 288 0.0
esp32 all-clusters-app c3devkit (read only) 882538 882698 160 0.0
(read/write) 1305960 1306120 160 0.0
.dram0.bss 57576 57736 160 0.3
.flash.text 882538 882698 160 0.0
m5stack (read only) 913387 913499 112 0.0
(read/write) 423268 423428 160 0.0
.dram0.bss 60088 60248 160 0.3
.flash.text 913387 913499 112 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699168 699456 288 0.0
.bss 77784 77944 160 0.2
.text 613680 613808 128 0.0
lock-app k32w061+debug (read/write) 591988 592260 272 0.0
.bss 68316 68476 160 0.2
.text 516000 516112 112 0.0
shell k32w061+debug (read/write) 657480 657928 448 0.1
.bss 78952 79272 320 0.4
.text 570888 571016 128 0.0
linux all-clusters-app debug (read only) 1703297 1704225 928 0.1
(read/write) 118656 118816 160 0.1
.bss 50000 50160 160 0.3
.rodata 139157 139381 224 0.2
.text 1430674 1431378 704 0.0
bridge-app debug+rpc (read only) 1291317 1292261 944 0.1
(read/write) 69232 69392 160 0.2
.bss 34928 35088 160 0.5
.rodata 110948 111204 256 0.2
.text 1084453 1085141 688 0.1
chip-tool debug (read only) 4508853 4510981 2128 0.0
.rodata 231824 232016 192 0.1
.text 4008565 4010501 1936 0.0
lighting-app debug+rpc (read only) 1552313 1553257 944 0.1
(read/write) 102200 102360 160 0.2
.bss 40568 40728 160 0.4
.rodata 129585 129841 256 0.2
.text 1289122 1289810 688 0.1
ota-provider-app debug (read only) 1250553 1251465 912 0.1
(read/write) 67400 67560 160 0.2
.bss 36992 37152 160 0.4
.rodata 112168 112392 224 0.2
.text 1042258 1042946 688 0.1
ota-requestor-app debug (read only) 1328881 1330017 1136 0.1
(read/write) 76656 76848 192 0.3
.bss 45120 45312 192 0.4
.rodata 124176 124400 224 0.2
.text 1106626 1107538 912 0.1
shell debug (read only) 787481 788393 912 0.1
(read/write) 57608 57768 160 0.3
.bss 16040 16200 160 1.0
.rodata 77903 78127 224 0.3
.text 608066 608754 688 0.1
tv-app debug (read only) 1815953 1818065 2112 0.1
(read/write) 289824 290496 672 0.2
.bss 222640 223312 672 0.3
.rodata 155208 155432 224 0.1
.text 1518434 1520322 1888 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2291408 2291536 128 0.0
.bss 178892 179052 160 0.1
.text 1254008 1254136 128 0.0
lighting-app CY8CPROTO_062_4343W+release (read/write) 2271504 2271632 128 0.0
.bss 171948 172108 160 0.1
.text 1234104 1234232 128 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2249224 2249352 128 0.0
.bss 170844 171004 160 0.1
.text 1211824 1211952 128 0.0
shell CY8CPROTO_062_4343W+release (read/write) 2048464 2048592 128 0.0
.bss 156224 156384 160 0.1
.text 1011064 1011192 128 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861255 861543 288 0.0
bss 111256 111416 160 0.1
text 577508 577640 132 0.0
nrf52840dk_nrf52840+rpc (read/write) 823583 823887 304 0.0
bss 107608 107768 160 0.1
text 551656 551788 132 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786278 786566 288 0.0
bss 112632 112792 160 0.1
text 506964 507096 132 0.0
lock-app nrf52840dk_nrf52840 (read/write) 837959 838247 288 0.0
bss 110292 110452 160 0.1
text 558988 559120 132 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763258 763546 288 0.0
bss 111700 111860 160 0.1
text 488536 488668 132 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844055 844343 288 0.0
bss 110428 110588 160 0.1
text 563152 563284 132 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 837815 838103 288 0.0
bss 110328 110488 160 0.1
text 558724 558856 132 0.0
shell nrf52840dk_nrf52840 (read/write) 775931 776203 272 0.0
bss 109080 109240 160 0.1
text 519764 519888 124 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 690954 691242 288 0.0
bss 110060 110220 160 0.1
text 440356 440480 124 0.0
p6 all-clusters-app default (read/write) 2300152 2300440 288 0.0
.bss 106840 107000 160 0.1
.text 1258416 1258704 288 0.0
lock-app default (read/write) 2212864 2213168 304 0.0
.bss 95648 95808 160 0.2
.text 1171128 1171432 304 0.0
qpg lighting-app qpg6100+debug (read only) 490556 490676 120 0.0
.bss 50944 51104 160 0.3
.text 485236 485356 120 0.0
lock-app qpg6100+debug (read only) 466896 467016 120 0.0
.bss 49888 50048 160 0.3
.text 461576 461696 120 0.0
telink lighting-app tlsr9518adk80d (read/write) 662910 663246 336 0.1
bss 69072 69232 160 0.2
text 458002 458176 174 0.0
Decreases (6 builds for mbed, p6)
platform target config section 3f67119 a3e0086 change % change
mbed all-clusters-app CY8CPROTO_062_4343W+release .heap 852328 852168 -160 -0.0
lighting-app CY8CPROTO_062_4343W+release .heap 858928 858768 -160 -0.0
lock-app CY8CPROTO_062_4343W+release .heap 860040 859880 -160 -0.0
shell CY8CPROTO_062_4343W+release .heap 875264 875104 -160 -0.0
p6 all-clusters-app default .heap 923984 923824 -160 -0.0
lock-app default .heap 935304 935144 -160 -0.0
Full report (38 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3f67119 a3e0086 change % change
efr32 lighting-app BRD4161A (read only) 744852 745140 288 0.0
(read/write) 115704 115864 160 0.1
.bss 113932 114092 160 0.1
.data 1772 1772 0 0.0
.text 744844 745132 288 0.0
BRD4161A+rpc (read only) 732384 732688 304 0.0
(read/write) 132324 132484 160 0.1
.bss 130436 130596 160 0.1
.data 1888 1888 0 0.0
.text 732376 732680 304 0.0
lock-app BRD4161A (read only) 724136 724440 304 0.0
(read/write) 113524 113684 160 0.1
.bss 111788 111948 160 0.1
.data 1732 1732 0 0.0
.text 724128 724432 304 0.0
window-app BRD4161A (read only) 725048 725336 288 0.0
(read/write) 113844 114004 160 0.1
.bss 112108 112268 160 0.1
.data 1736 1736 0 0.0
.text 725040 725328 288 0.0
esp32 all-clusters-app c3devkit (read only) 882538 882698 160 0.0
(read/write) 1305960 1306120 160 0.0
.dram0.bss 57576 57736 160 0.3
.dram0.data 16472 16472 0 0.0
.flash.rodata 198664 198664 0 0.0
.flash.text 882538 882698 160 0.0
.iram0.text 57624 57624 0 0.0
m5stack (read only) 913387 913499 112 0.0
(read/write) 423268 423428 160 0.0
.dram0.bss 60088 60248 160 0.3
.dram0.data 32108 32108 0 0.0
.flash.rodata 204908 204908 0 0.0
.flash.text 913387 913499 112 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699168 699456 288 0.0
.bss 77784 77944 160 0.2
.data 1904 1904 0 0.0
.text 613680 613808 128 0.0
lock-app k32w061+debug (read/write) 591988 592260 272 0.0
.bss 68316 68476 160 0.2
.data 1872 1872 0 0.0
.text 516000 516112 112 0.0
shell k32w061+debug (read/write) 657480 657928 448 0.1
.bss 78952 79272 320 0.4
.data 1840 1840 0 0.0
.text 570888 571016 128 0.0
linux all-clusters-app debug (read only) 1703297 1704225 928 0.1
(read/write) 118656 118816 160 0.1
.bss 50000 50160 160 0.3
.data 1042 1042 0 0.0
.data.rel.ro 62336 62336 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 552 552 0 0.0
.rodata 139157 139381 224 0.2
.text 1430674 1431378 704 0.0
bridge-app debug+rpc (read only) 1291317 1292261 944 0.1
(read/write) 69232 69392 160 0.2
.bss 34928 35088 160 0.5
.data 1568 1568 0 0.0
.data.rel.ro 27768 27768 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 408 408 0 0.0
.rodata 110948 111204 256 0.2
.text 1084453 1085141 688 0.1
chip-tool debug (read only) 4508853 4510981 2128 0.0
(read/write) 125864 125864 0 0.0
.bss 18128 18128 0 0.0
.data 2224 2224 0 0.0
.data.rel.ro 100096 100096 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 432 432 0 0.0
.rodata 231824 232016 192 0.1
.text 4008565 4010501 1936 0.0
lighting-app debug+rpc (read only) 1552313 1553257 944 0.1
(read/write) 102200 102360 160 0.2
.bss 40568 40728 160 0.4
.data 1170 1170 0 0.0
.data.rel.ro 55168 55168 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 536 536 0 0.0
.rodata 129585 129841 256 0.2
.text 1289122 1289810 688 0.1
ota-provider-app debug (read only) 1250553 1251465 912 0.1
(read/write) 67400 67560 160 0.2
.bss 36992 37152 160 0.4
.data 752 752 0 0.0
.data.rel.ro 24568 24568 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 448 448 0 0.0
.rodata 112168 112392 224 0.2
.text 1042258 1042946 688 0.1
ota-requestor-app debug (read only) 1328881 1330017 1136 0.1
(read/write) 76656 76848 192 0.3
.bss 45120 45312 192 0.4
.data 816 816 0 0.0
.data.rel.ro 25576 25576 0 0.0
.dynamic 592 592 0 0.0
.got 3992 3992 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 124176 124400 224 0.2
.text 1106626 1107538 912 0.1
shell debug (read only) 787481 788393 912 0.1
(read/write) 57608 57768 160 0.3
.bss 16040 16200 160 1.0
.data 242 242 0 0.0
.data.rel.ro 36816 36816 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 344 344 0 0.0
.rodata 77903 78127 224 0.3
.text 608066 608754 688 0.1
tv-app debug (read only) 1815953 1818065 2112 0.1
(read/write) 289824 290496 672 0.2
.bss 222640 223312 672 0.3
.data 2704 2704 0 0.0
.data.rel.ro 58824 58824 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 155208 155432 224 0.1
.text 1518434 1520322 1888 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2291408 2291536 128 0.0
.bss 178892 179052 160 0.1
.data 5224 5224 0 0.0
.heap 852328 852168 -160 -0.0
.text 1254008 1254136 128 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2271504 2271632 128 0.0
.bss 171948 172108 160 0.1
.data 5568 5568 0 0.0
.heap 858928 858768 -160 -0.0
.text 1234104 1234232 128 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2249224 2249352 128 0.0
.bss 170844 171004 160 0.1
.data 5560 5560 0 0.0
.heap 860040 859880 -160 -0.0
.text 1211824 1211952 128 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048464 2048592 128 0.0
.bss 156224 156384 160 0.1
.data 4960 4960 0 0.0
.heap 875264 875104 -160 -0.0
.text 1011064 1011192 128 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861255 861543 288 0.0
bss 111256 111416 160 0.1
rodata 96872 96872 0 0.0
text 577508 577640 132 0.0
nrf52840dk_nrf52840+rpc (read/write) 823583 823887 304 0.0
bss 107608 107768 160 0.1
rodata 88048 88048 0 0.0
text 551656 551788 132 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786278 786566 288 0.0
bss 112632 112792 160 0.1
rodata 92128 92128 0 0.0
text 506964 507096 132 0.0
lock-app nrf52840dk_nrf52840 (read/write) 837959 838247 288 0.0
bss 110292 110452 160 0.1
rodata 93240 93240 0 0.0
text 558988 559120 132 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763258 763546 288 0.0
bss 111700 111860 160 0.1
rodata 88548 88548 0 0.0
text 488536 488668 132 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844055 844343 288 0.0
bss 110428 110588 160 0.1
rodata 94952 94952 0 0.0
text 563152 563284 132 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 837815 838103 288 0.0
bss 110328 110488 160 0.1
rodata 93240 93240 0 0.0
text 558724 558856 132 0.0
shell nrf52840dk_nrf52840 (read/write) 775931 776203 272 0.0
bss 109080 109240 160 0.1
rodata 72496 72496 0 0.0
text 519764 519888 124 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 690954 691242 288 0.0
bss 110060 110220 160 0.1
rodata 67140 67140 0 0.0
text 440356 440480 124 0.0
p6 all-clusters-app default (read/write) 2300152 2300440 288 0.0
.bss 106840 107000 160 0.1
.data 2520 2520 0 0.0
.heap 923984 923824 -160 -0.0
.text 1258416 1258704 288 0.0
lock-app default (read/write) 2212864 2213168 304 0.0
.bss 95648 95808 160 0.2
.data 2392 2392 0 0.0
.heap 935304 935144 -160 -0.0
.text 1171128 1171432 304 0.0
qpg lighting-app qpg6100+debug (read only) 490556 490676 120 0.0
(read/write) 114140 114140 0 0.0
.bss 50944 51104 160 0.3
.data 1004 1004 0 0.0
.text 485236 485356 120 0.0
lock-app qpg6100+debug (read only) 466896 467016 120 0.0
(read/write) 114144 114144 0 0.0
.bss 49888 50048 160 0.3
.data 960 960 0 0.0
.text 461576 461696 120 0.0
persistent-storage-app qpg6100+debug (read only) 153212 153212 0 0.0
(read/write) 114140 114140 0 0.0
.bss 18912 18912 0 0.0
.data 356 356 0 0.0
.text 147892 147892 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 662910 663246 336 0.1
bss 69072 69232 160 0.2
noinit 33216 33216 0 0.0
text 458002 458176 174 0.0

Controller is using default MRP retransmission interval values
for all of the devices. According to spec it should use
discovered CRA and CRI values for that purpose and set MRP
parameters independently for every single device.

* Added storing MRP intervals values in the CHIPDevice,
SecureSession and UnathenticatedSession.
* Added setting MRP intervals for sessions using discovered
device data or if they are not available with the default values.
* Added setting ReliableMessageContext config when creating
every new ExchangeContext based on MRP intervals got from the
SessionHandle
* Changed INITIAL retransmission interval name in the Reliable
Message module to IDLE as that is compatible with the spec
@kkasperczyk-no kkasperczyk-no force-pushed the controller_cra_cri_support branch from a3e0086 to a42ebec Compare November 8, 2021 07:22
@github-actions
Copy link

github-actions bot commented Nov 8, 2021

PR #11471: Size comparison from 3f82de1 to a42ebec

Increases above 0.2%:

platform target config section 3f82de1 a42ebec change % change
esp32 all-clusters-app c3devkit .dram0.bss 57608 57768 160 0.3
m5stack .dram0.bss 60112 60272 160 0.3
k32w shell k32w061+debug .bss 78980 79300 320 0.4
linux all-clusters-app debug .bss 50608 50768 160 0.3
bridge-app debug+rpc .bss 35536 35696 160 0.5
lighting-app debug+rpc .bss 41176 41336 160 0.4
ota-provider-app debug .bss 37600 37760 160 0.4
ota-requestor-app debug .bss 45728 45920 192 0.4
shell debug (read/write) 58184 58344 160 0.3
.bss 16648 16808 160 1.0
.rodata 77935 78159 224 0.3
tv-app debug .bss 223248 223920 672 0.3
qpg lighting-app qpg6100+debug .bss 50968 51128 160 0.3
lock-app qpg6100+debug .bss 49912 50072 160 0.3
Increases (35 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3f82de1 a42ebec change % change
efr32 lighting-app BRD4161A (read only) 745848 746168 320 0.0
(read/write) 115740 115900 160 0.1
.bss 113964 114124 160 0.1
.text 745840 746160 320 0.0
BRD4161A+rpc (read only) 733384 733704 320 0.0
(read/write) 132364 132524 160 0.1
.bss 130468 130628 160 0.1
.text 733376 733696 320 0.0
lock-app BRD4161A (read only) 725136 725456 320 0.0
(read/write) 113556 113716 160 0.1
.bss 111820 111980 160 0.1
.text 725128 725448 320 0.0
window-app BRD4161A (read only) 726032 726336 304 0.0
(read/write) 113884 114044 160 0.1
.bss 112140 112300 160 0.1
.text 726024 726328 304 0.0
esp32 all-clusters-app c3devkit (read only) 882786 882930 144 0.0
(read/write) 1306040 1306200 160 0.0
.dram0.bss 57608 57768 160 0.3
.flash.text 882786 882930 144 0.0
m5stack (read only) 913623 913727 104 0.0
(read/write) 423336 423496 160 0.0
.dram0.bss 60112 60272 160 0.3
.flash.text 913623 913727 104 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699560 699816 256 0.0
.bss 77808 77968 160 0.2
.text 614044 614140 96 0.0
lock-app k32w061+debug (read/write) 592364 592636 272 0.0
.bss 68340 68500 160 0.2
.text 516348 516460 112 0.0
shell k32w061+debug (read/write) 657860 658292 432 0.1
.bss 78980 79300 320 0.4
.text 571236 571348 112 0.0
linux all-clusters-app debug (read only) 1704225 1705185 960 0.1
(read/write) 119232 119392 160 0.1
.bss 50608 50768 160 0.3
.rodata 139221 139477 256 0.2
.text 1431586 1432290 704 0.0
bridge-app debug+rpc (read only) 1292261 1293173 912 0.1
(read/write) 69808 69968 160 0.2
.bss 35536 35696 160 0.5
.rodata 111028 111252 224 0.2
.text 1085365 1086053 688 0.1
chip-tool debug (read only) 4931485 4933661 2176 0.0
.rodata 233488 233712 224 0.1
.text 4429077 4431029 1952 0.0
lighting-app debug+rpc (read only) 1553257 1554185 928 0.1
(read/write) 102776 102936 160 0.2
.bss 41176 41336 160 0.4
.rodata 129649 129873 224 0.2
.text 1290050 1290754 704 0.1
ota-provider-app debug (read only) 1251465 1252409 944 0.1
(read/write) 67976 68136 160 0.2
.bss 37600 37760 160 0.4
.rodata 112232 112488 256 0.2
.text 1043154 1043842 688 0.1
ota-requestor-app debug (read only) 1329761 1330929 1168 0.1
(read/write) 77232 77424 192 0.2
.bss 45728 45920 192 0.4
.rodata 124208 124464 256 0.2
.text 1107522 1108434 912 0.1
shell debug (read only) 788041 788953 912 0.1
(read/write) 58184 58344 160 0.3
.bss 16648 16808 160 1.0
.rodata 77935 78159 224 0.3
.text 608642 609330 688 0.1
tv-app debug (read only) 1817233 1819345 2112 0.1
(read/write) 290400 291072 672 0.2
.bss 223248 223920 672 0.3
.rodata 155304 155528 224 0.1
.text 1519666 1521554 1888 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2291640 2291768 128 0.0
.bss 178924 179084 160 0.1
.text 1254240 1254368 128 0.0
lighting-app CY8CPROTO_062_4343W+release (read/write) 2271800 2271864 64 0.0
.bss 171980 172140 160 0.1
.text 1234400 1234464 64 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2249456 2249584 128 0.0
.bss 170876 171036 160 0.1
.text 1212056 1212184 128 0.0
shell CY8CPROTO_062_4343W+release (read/write) 2048912 2048976 64 0.0
.bss 156256 156416 160 0.1
.text 1011512 1011576 64 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861635 861907 272 0.0
bss 111280 111440 160 0.1
text 577804 577916 112 0.0
nrf52840dk_nrf52840+rpc (read/write) 823983 824255 272 0.0
bss 107632 107792 160 0.1
text 551952 552064 112 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786678 786950 272 0.0
bss 112652 112812 160 0.1
text 507264 507376 112 0.0
lock-app nrf52840dk_nrf52840 (read/write) 838359 838631 272 0.0
bss 110312 110472 160 0.1
text 559284 559400 116 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763654 763926 272 0.0
bss 111724 111884 160 0.1
text 488836 488952 116 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844451 844723 272 0.0
bss 110452 110612 160 0.1
text 563448 563560 112 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 838215 838487 272 0.0
bss 110348 110508 160 0.1
text 559020 559136 116 0.0
shell nrf52840dk_nrf52840 (read/write) 776231 776487 256 0.0
bss 109100 109260 160 0.1
text 519988 520092 104 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691270 691526 256 0.0
bss 110084 110244 160 0.1
text 440584 440688 104 0.0
p6 all-clusters-app default (read/write) 2301136 2301456 320 0.0
.bss 106872 107032 160 0.1
.text 1259400 1259720 320 0.0
lock-app default (read/write) 2213848 2214168 320 0.0
.bss 95680 95840 160 0.2
.text 1172112 1172432 320 0.0
qpg lighting-app qpg6100+debug (read only) 490896 490992 96 0.0
.bss 50968 51128 160 0.3
.text 485576 485672 96 0.0
lock-app qpg6100+debug (read only) 467236 467332 96 0.0
.bss 49912 50072 160 0.3
.text 461916 462012 96 0.0
telink lighting-app tlsr9518adk80d (read/write) 663242 663554 312 0.0
bss 69092 69252 160 0.2
text 458250 458406 156 0.0
Decreases (6 builds for mbed, p6)
platform target config section 3f82de1 a42ebec change % change
mbed all-clusters-app CY8CPROTO_062_4343W+release .heap 852296 852136 -160 -0.0
lighting-app CY8CPROTO_062_4343W+release .heap 858888 858728 -160 -0.0
lock-app CY8CPROTO_062_4343W+release .heap 860008 859848 -160 -0.0
shell CY8CPROTO_062_4343W+release .heap 875224 875064 -160 -0.0
p6 all-clusters-app default .heap 923944 923784 -160 -0.0
lock-app default .heap 935264 935104 -160 -0.0
Full report (38 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3f82de1 a42ebec change % change
efr32 lighting-app BRD4161A (read only) 745848 746168 320 0.0
(read/write) 115740 115900 160 0.1
.bss 113964 114124 160 0.1
.data 1776 1776 0 0.0
.text 745840 746160 320 0.0
BRD4161A+rpc (read only) 733384 733704 320 0.0
(read/write) 132364 132524 160 0.1
.bss 130468 130628 160 0.1
.data 1892 1892 0 0.0
.text 733376 733696 320 0.0
lock-app BRD4161A (read only) 725136 725456 320 0.0
(read/write) 113556 113716 160 0.1
.bss 111820 111980 160 0.1
.data 1736 1736 0 0.0
.text 725128 725448 320 0.0
window-app BRD4161A (read only) 726032 726336 304 0.0
(read/write) 113884 114044 160 0.1
.bss 112140 112300 160 0.1
.data 1740 1740 0 0.0
.text 726024 726328 304 0.0
esp32 all-clusters-app c3devkit (read only) 882786 882930 144 0.0
(read/write) 1306040 1306200 160 0.0
.dram0.bss 57608 57768 160 0.3
.dram0.data 16472 16472 0 0.0
.flash.rodata 198712 198712 0 0.0
.flash.text 882786 882930 144 0.0
.iram0.text 57624 57624 0 0.0
m5stack (read only) 913623 913727 104 0.0
(read/write) 423336 423496 160 0.0
.dram0.bss 60112 60272 160 0.3
.dram0.data 32108 32108 0 0.0
.flash.rodata 204952 204952 0 0.0
.flash.text 913623 913727 104 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699560 699816 256 0.0
.bss 77808 77968 160 0.2
.data 1908 1908 0 0.0
.text 614044 614140 96 0.0
lock-app k32w061+debug (read/write) 592364 592636 272 0.0
.bss 68340 68500 160 0.2
.data 1876 1876 0 0.0
.text 516348 516460 112 0.0
shell k32w061+debug (read/write) 657860 658292 432 0.1
.bss 78980 79300 320 0.4
.data 1844 1844 0 0.0
.text 571236 571348 112 0.0
linux all-clusters-app debug (read only) 1704225 1705185 960 0.1
(read/write) 119232 119392 160 0.1
.bss 50608 50768 160 0.3
.data 1042 1042 0 0.0
.data.rel.ro 62304 62304 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 552 552 0 0.0
.rodata 139221 139477 256 0.2
.text 1431586 1432290 704 0.0
bridge-app debug+rpc (read only) 1292261 1293173 912 0.1
(read/write) 69808 69968 160 0.2
.bss 35536 35696 160 0.5
.data 1568 1568 0 0.0
.data.rel.ro 27736 27736 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 408 408 0 0.0
.rodata 111028 111252 224 0.2
.text 1085365 1086053 688 0.1
chip-tool debug (read only) 4931485 4933661 2176 0.0
(read/write) 126664 126664 0 0.0
.bss 18736 18736 0 0.0
.data 2224 2224 0 0.0
.data.rel.ro 100288 100288 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 432 432 0 0.0
.rodata 233488 233712 224 0.1
.text 4429077 4431029 1952 0.0
lighting-app debug+rpc (read only) 1553257 1554185 928 0.1
(read/write) 102776 102936 160 0.2
.bss 41176 41336 160 0.4
.data 1170 1170 0 0.0
.data.rel.ro 55136 55136 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 536 536 0 0.0
.rodata 129649 129873 224 0.2
.text 1290050 1290754 704 0.1
ota-provider-app debug (read only) 1251465 1252409 944 0.1
(read/write) 67976 68136 160 0.2
.bss 37600 37760 160 0.4
.data 752 752 0 0.0
.data.rel.ro 24536 24536 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 448 448 0 0.0
.rodata 112232 112488 256 0.2
.text 1043154 1043842 688 0.1
ota-requestor-app debug (read only) 1329761 1330929 1168 0.1
(read/write) 77232 77424 192 0.2
.bss 45728 45920 192 0.4
.data 816 816 0 0.0
.data.rel.ro 25544 25544 0 0.0
.dynamic 592 592 0 0.0
.got 3992 3992 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 124208 124464 256 0.2
.text 1107522 1108434 912 0.1
shell debug (read only) 788041 788953 912 0.1
(read/write) 58184 58344 160 0.3
.bss 16648 16808 160 1.0
.data 242 242 0 0.0
.data.rel.ro 36784 36784 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 344 344 0 0.0
.rodata 77935 78159 224 0.3
.text 608642 609330 688 0.1
tv-app debug (read only) 1817233 1819345 2112 0.1
(read/write) 290400 291072 672 0.2
.bss 223248 223920 672 0.3
.data 2704 2704 0 0.0
.data.rel.ro 58792 58792 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 155304 155528 224 0.1
.text 1519666 1521554 1888 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2291640 2291768 128 0.0
.bss 178924 179084 160 0.1
.data 5224 5224 0 0.0
.heap 852296 852136 -160 -0.0
.text 1254240 1254368 128 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2271800 2271864 64 0.0
.bss 171980 172140 160 0.1
.data 5576 5576 0 0.0
.heap 858888 858728 -160 -0.0
.text 1234400 1234464 64 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2249456 2249584 128 0.0
.bss 170876 171036 160 0.1
.data 5560 5560 0 0.0
.heap 860008 859848 -160 -0.0
.text 1212056 1212184 128 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048912 2048976 64 0.0
.bss 156256 156416 160 0.1
.data 4968 4968 0 0.0
.heap 875224 875064 -160 -0.0
.text 1011512 1011576 64 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861635 861907 272 0.0
bss 111280 111440 160 0.1
rodata 96932 96932 0 0.0
text 577804 577916 112 0.0
nrf52840dk_nrf52840+rpc (read/write) 823983 824255 272 0.0
bss 107632 107792 160 0.1
rodata 88112 88112 0 0.0
text 551952 552064 112 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786678 786950 272 0.0
bss 112652 112812 160 0.1
rodata 92192 92192 0 0.0
text 507264 507376 112 0.0
lock-app nrf52840dk_nrf52840 (read/write) 838359 838631 272 0.0
bss 110312 110472 160 0.1
rodata 93304 93304 0 0.0
text 559284 559400 116 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763654 763926 272 0.0
bss 111724 111884 160 0.1
rodata 88608 88608 0 0.0
text 488836 488952 116 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844451 844723 272 0.0
bss 110452 110612 160 0.1
rodata 95012 95012 0 0.0
text 563448 563560 112 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 838215 838487 272 0.0
bss 110348 110508 160 0.1
rodata 93304 93304 0 0.0
text 559020 559136 116 0.0
shell nrf52840dk_nrf52840 (read/write) 776231 776487 256 0.0
bss 109100 109260 160 0.1
rodata 72540 72540 0 0.0
text 519988 520092 104 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691270 691526 256 0.0
bss 110084 110244 160 0.1
rodata 67184 67184 0 0.0
text 440584 440688 104 0.0
p6 all-clusters-app default (read/write) 2301136 2301456 320 0.0
.bss 106872 107032 160 0.1
.data 2528 2528 0 0.0
.heap 923944 923784 -160 -0.0
.text 1259400 1259720 320 0.0
lock-app default (read/write) 2213848 2214168 320 0.0
.bss 95680 95840 160 0.2
.data 2400 2400 0 0.0
.heap 935264 935104 -160 -0.0
.text 1172112 1172432 320 0.0
qpg lighting-app qpg6100+debug (read only) 490896 490992 96 0.0
(read/write) 114144 114144 0 0.0
.bss 50968 51128 160 0.3
.data 1008 1008 0 0.0
.text 485576 485672 96 0.0
lock-app qpg6100+debug (read only) 467236 467332 96 0.0
(read/write) 114140 114140 0 0.0
.bss 49912 50072 160 0.3
.data 964 964 0 0.0
.text 461916 462012 96 0.0
persistent-storage-app qpg6100+debug (read only) 153316 153316 0 0.0
(read/write) 114144 114144 0 0.0
.bss 19448 19448 0 0.0
.data 360 360 0 0.0
.text 147996 147996 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 663242 663554 312 0.0
bss 69092 69252 160 0.2
noinit 33216 33216 0 0.0
text 458250 458406 156 0.0

@andy31415 andy31415 merged commit ced0520 into project-chip:master Nov 8, 2021
PSONALl pushed a commit to PSONALl/connectedhomeip that referenced this pull request Dec 3, 2021
…ct-chip#11471)

Controller is using default MRP retransmission interval values
for all of the devices. According to spec it should use
discovered CRA and CRI values for that purpose and set MRP
parameters independently for every single device.

* Added storing MRP intervals values in the CHIPDevice,
SecureSession and UnathenticatedSession.
* Added setting MRP intervals for sessions using discovered
device data or if they are not available with the default values.
* Added setting ReliableMessageContext config when creating
every new ExchangeContext based on MRP intervals got from the
SessionHandle
* Changed INITIAL retransmission interval name in the Reliable
Message module to IDLE as that is compatible with the spec
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.

7 participants