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

Refactor ACL persistent storage and events #17357

Merged
merged 25 commits into from
Apr 29, 2022

Conversation

mlepage-google
Copy link
Contributor

@mlepage-google mlepage-google commented Apr 13, 2022

PLEASE NOTE I would like the following commit message used when this is squashed and merged

Other notes:

  • basically ready for review, but I'm still checking a couple little things
  • I know we have API duplication, I'll remove the older APIs in a subsequent PR
  • Basically I'll change it all to fabric-based indexing, but I don't want this PR to be larger than it has to be

Commit Message

Refactor ACL persistent storage and events

After these changes, the breakdown of responsibilities is as follows:

  • System module is the API for access control (entries, check) used by IM, cluster, etc.
    • Only responsible for live ACL entries in memory, not responsible for persistent storage etc.
  • System module delegate is responsible for implementation (e.g. ExampleAccessControlDelegate)
  • AclStorage is responsible for all ACL entry translation between system API, cluster generated code, and TLV
    • Also responsible for all loading/saving of ACL entries in persistent storage
  • Cluster is responsible for implementing ACL attribute changes (using system module API)
    • Also responsible for creating events when ACL entries are changed
    • Also responsible for extension attribute (which only exists in cluster, not in system module)
  • Server is responsible for initializing these modules in the correct order
    • Including deleting ACL entries when fabric is removed

Details:

  • Add fabric-centric APIs to system module (older fabric-optional APIs will be removed later)
  • Add API to determine entry count per fabric
  • Add API to determine if an entry is using the default delegate
  • Add API for dumping an entry to log (disabled, because only used during development)
  • Add notification listener API to system module for when ACL entries are changed
  • Add subject descriptor to system module APIs so ACL entry changes can (optionally) be attributed
  • Add AclStorage module to manage encoding/decoding/storage of ACL entries
  • Remove encoding/decoding/storage responsibilities from system module and cluster now that AclStorage exists
  • Add ACL entry encoder and decoder helper classes which can stage/unstage (transcode) and TLV encode/decode
  • Add accurate calculation of required storage buffer size for TLV encoded entry
  • Refactor server initialization order so system module is initialized first, then AclStorage, then cluster
  • Use fabric-specific persistent storage keys for ACL entries
  • AclStorage loads entries from persistent storage to populate the system module during server initialization
  • AclStorage installs a listener in the system module to keep persistent storage in sync with in-memory storage
  • Cluster installs a listener in the system module to notify events when ACL entries are changed
  • Delete ACL entry event now occurs after (was before) actual ACL entry deletion
  • System module delegate example implementation now makes (best effort) attempt to preserve deleted entries
  • All entry changes (from cluster, remove fabric, etc.) now performed in most efficient order (typically LIFO)
  • All entry persistent storage changes (from AclStorage) now only touches affected persistent storage keys
  • Operational credentials cluster now creates intial ACL for fabric after (was before) adopting the fabric

Fixes #14451 --> Improve access control cluster persistence/storage
Fixes #14443 --> Clean up access control cluster/module initialization
Fixes #14326 --> Handle access control events from non-cluster operations

Partially addresses #14455 --> Clean up access control capabilities APIs
Partially addresses #14450 --> Access control performance improvement (flash, RAM, speed, etc.)

Testing

  • Local testing (Linux x64, using chip-all-clusters-app and chip-tool)
  • CI

Refactor ACL persistent storage so it's in the server layer between the
system layer (below it) and the cluster layer (above it).

Refactor events using a new listener.

Slightly reorder server layer initialization (e.g. access control
system layer should initialize before cluster layer).

Issue project-chip#14451 (and more)
@github-actions
Copy link

github-actions bot commented Apr 27, 2022

PR #17357: Size comparison from 11c49af to 3c71264

Increases above 0.2%:

platform target config section 11c49af 3c71264 change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 154828 155252 424 0.3
linux all-clusters-app debug .init_array 1000 1008 8 0.8
bridge-app debug+rpc .init_array 680 688 8 1.2
.rodata 159489 159969 480 0.3
lighting-app debug+rpc .init_array 784 792 8 1.0
.rodata 183601 184017 416 0.2
lock-app debug .init_array 736 744 8 1.1
.rodata 192097 192545 448 0.2
ota-provider-app debug .init_array 640 648 8 1.2
.rodata 174147 174627 480 0.3
ota-requestor-app debug .init_array 664 672 8 1.2
.rodata 170380 170860 480 0.3
shell debug .data 1360 1376 16 1.2
.init_array 920 928 8 0.9
thermostat-no-ble arm64 .init_array 368 376 8 2.2
tv-app debug .init_array 920 928 8 0.9
.rodata 216203 216651 448 0.2
p6 all-clusters-app default .data 2784 2792 8 0.3
light-app default .data 2584 2592 8 0.3
lock-app default .data 2544 2552 8 0.3
Increases (28 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 11c49af 3c71264 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 164308 164560 252 0.2
.bss 75076 75084 8 0.0
.rodata 101467 101543 76 0.1
lock-ftd LP_CC2652R7 (read/write) 154828 155252 424 0.3
pump-app LP_CC2652R7 (read/write) 183240 183500 260 0.1
.rodata 80319 80387 68 0.1
pump-controller-app LP_CC2652R7 (read/write) 190088 190512 424 0.2
.bss 73660 73668 8 0.0
cyw30739 light cyw930739m2evb_01 .bss 79828 79836 8 0.0
efr32 lighting-app BRD4161A (read only) 907432 907768 336 0.0
(read/write) 134960 134968 8 0.0
.bss 132912 132920 8 0.0
.data 2044 2048 4 0.2
.text 907424 907760 336 0.0
BRD4161A+rpc (read only) 941816 942128 312 0.0
(read/write) 151640 151656 16 0.0
.bss 149392 149400 8 0.0
.data 2248 2252 4 0.2
.text 941808 942120 312 0.0
window-app BRD4161A (read only) 844640 844984 344 0.0
(read/write) 133048 133056 8 0.0
.bss 131088 131096 8 0.0
.data 1956 1960 4 0.2
.text 844632 844976 344 0.0
esp32 all-clusters-app c3devkit .dram0.bss 68208 68224 16 0.0
m5stack .dram0.bss 73728 73744 16 0.0
k32w light k32w061+release .bss 81160 81168 8 0.0
.data 2000 2004 4 0.2
lock k32w061+release .data 1960 1964 4 0.2
linux all-clusters-app debug (read/write) 172752 172920 168 0.1
.bss 83168 83232 64 0.1
.data.rel.ro 81496 81592 96 0.1
.init_array 1000 1008 8 0.8
.rodata 234085 234533 448 0.2
bridge-app debug+rpc (read/write) 120112 120248 136 0.1
.bss 71168 71232 64 0.1
.data.rel.ro 40184 40248 64 0.2
.init_array 680 688 8 1.2
.rodata 159489 159969 480 0.3
chip-tool-no-interactive-ipv6only arm64 (read/write) 538593 538609 16 0.0
.bss 40897 40913 16 0.0
lighting-app debug+rpc (read/write) 151096 151200 104 0.1
.bss 73248 73280 32 0.0
.data.rel.ro 70120 70200 80 0.1
.init_array 784 792 8 1.0
.rodata 183601 184017 416 0.2
lock-app debug (read/write) 145416 145520 104 0.1
.bss 71808 71872 64 0.1
.data.rel.ro 66456 66488 32 0.0
.init_array 736 744 8 1.1
.rodata 192097 192545 448 0.2
ota-provider-app debug (read/write) 138696 138800 104 0.1
.bss 71232 71296 64 0.1
.data.rel.ro 60008 60056 48 0.1
.init_array 640 648 8 1.2
.rodata 174147 174627 480 0.3
ota-requestor-app debug (read/write) 141472 141608 136 0.1
.bss 71872 71936 64 0.1
.data.rel.ro 62056 62120 64 0.1
.init_array 664 672 8 1.2
.rodata 170380 170860 480 0.3
shell debug (read/write) 196648 196784 136 0.1
.bss 113768 113832 64 0.1
.data 1360 1376 16 1.2
.data.rel.ro 75784 75864 80 0.1
.init_array 920 928 8 0.9
.rodata 215794 216210 416 0.2
thermostat-no-ble arm64 (read/write) 174305 174401 96 0.1
.bss 86129 86145 16 0.0
.data.rel.ro 78928 78992 64 0.1
.got 4736 4744 8 0.2
.init_array 368 376 8 2.2
.rodata 145612 145620 8 0.0
tv-app debug (read/write) 276344 276416 72 0.0
.bss 189112 189144 32 0.0
.data.rel.ro 76360 76408 48 0.1
.init_array 920 928 8 0.9
.rodata 216203 216651 448 0.2
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2411100 2412508 1408 0.1
.text 1373700 1375108 1408 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 bss 141840 141848 8 0.0
p6 all-clusters-app default (read/write) 2526408 2526680 272 0.0
.bss 139096 139104 8 0.0
.data 2784 2792 8 0.3
.text 1484672 1484944 272 0.0
light-app default (read/write) 2418352 2418608 256 0.0
.data 2584 2592 8 0.3
.text 1376616 1376872 256 0.0
lock-app default (read/write) 2422432 2422704 272 0.0
.bss 132368 132376 8 0.0
.data 2544 2552 8 0.3
.text 1380696 1380968 272 0.0
telink lighting-app tlsr9518adk80d bss 75272 75280 8 0.0
Decreases (24 builds for cc13x2_26x2, cyw30739, esp32, k32w, linux, nrfconnect, telink)
platform target config section 11c49af 3c71264 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 687787 687543 -244 -0.0
.text 585840 585516 -324 -0.1
lock-ftd LP_CC2652R7 (read only) 688571 688147 -424 -0.1
.rodata 103123 103067 -56 -0.1
.text 584964 584600 -364 -0.1
lock-mtd LP_CC2652R7 (read only) 637315 636891 -424 -0.1
.rodata 103003 102947 -56 -0.1
.text 533820 533456 -364 -0.1
pump-app LP_CC2652R7 (read only) 661359 661099 -260 -0.0
.text 580560 580228 -332 -0.1
pump-controller-app LP_CC2652R7 (read only) 654303 653887 -416 -0.1
.rodata 83343 83287 -56 -0.1
.text 570480 570116 -364 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626374 625950 -424 -0.1
.app_xip_area 529204 528772 -432 -0.1
lock cyw930739m2evb_01 (read/write) 620974 620534 -440 -0.1
.app_xip_area 525276 524836 -440 -0.1
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574074 573726 -348 -0.1
.app_xip_area 468732 468384 -348 -0.1
esp32 all-clusters-app c3devkit (read only) 998842 998616 -226 -0.0
(read/write) 1473570 1473530 -40 -0.0
.dram0.data 14428 14420 -8 -0.1
.flash.rodata 206488 206432 -56 -0.0
.flash.text 998842 998616 -226 -0.0
m5stack (read only) 1053087 1052651 -436 -0.0
(read/write) 475568 475520 -48 -0.0
.flash.rodata 235836 235772 -64 -0.0
.flash.text 1047703 1047267 -436 -0.0
k32w light k32w061+release (read/write) 688388 688052 -336 -0.0
.text 599428 599080 -348 -0.1
lock k32w061+release (read/write) 729248 728808 -440 -0.1
.text 639920 639476 -444 -0.1
linux all-clusters-app debug (read only) 2730993 2726489 -4504 -0.2
.data 1984 1968 -16 -0.8
.text 2322546 2317522 -5024 -0.2
bridge-app debug+rpc (read only) 1888049 1883513 -4536 -0.2
.text 1606402 1601314 -5088 -0.3
chip-tool debug (read only) 8379277 8379245 -32 -0.0
.rodata 455029 454997 -32 -0.0
lighting-app debug+rpc (read only) 2322417 2317817 -4600 -0.2
.text 1972802 1967714 -5088 -0.3
lock-app debug (read only) 2203521 2199129 -4392 -0.2
.text 1852050 1847138 -4912 -0.3
ota-provider-app debug (read only) 2057001 2052465 -4536 -0.2
.text 1725970 1720882 -5088 -0.3
ota-requestor-app debug (read only) 2088081 2083545 -4536 -0.2
.text 1759330 1754242 -5088 -0.3
shell debug (read only) 2555977 2551441 -4536 -0.2
.text 2178898 2173874 -5024 -0.2
thermostat-no-ble arm64 (read only) 2365468 2363380 -2088 -0.1
.text 1991024 1988752 -2272 -0.1
tv-app debug (read only) 2841065 2836769 -4296 -0.2
.text 2443026 2438210 -4816 -0.2
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179039 1178619 -420 -0.0
rodata 150064 149996 -68 -0.0
text 808428 808068 -360 -0.0
telink lighting-app tlsr9518adk80d (read/write) 807312 807072 -240 -0.0
text 571242 571056 -186 -0.0
Full report (32 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 11c49af 3c71264 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 687787 687543 -244 -0.0
(read/write) 164308 164560 252 0.2
.bss 75076 75084 8 0.0
.data 3396 3396 0 0.0
.rodata 101467 101543 76 0.1
.text 585840 585516 -324 -0.1
lock-ftd LP_CC2652R7 (read only) 688571 688147 -424 -0.1
(read/write) 154828 155252 424 0.3
.bss 73436 73436 0 0.0
.data 3220 3220 0 0.0
.rodata 103123 103067 -56 -0.1
.text 584964 584600 -364 -0.1
lock-mtd LP_CC2652R7 (read only) 637315 636891 -424 -0.1
(read/write) 146236 146236 0 0.0
.bss 69156 69156 0 0.0
.data 3220 3220 0 0.0
.rodata 103003 102947 -56 -0.1
.text 533820 533456 -364 -0.1
pump-app LP_CC2652R7 (read only) 661359 661099 -260 -0.0
(read/write) 183240 183500 260 0.1
.bss 73612 73612 0 0.0
.data 3252 3252 0 0.0
.rodata 80319 80387 68 0.1
.text 580560 580228 -332 -0.1
pump-controller-app LP_CC2652R7 (read only) 654303 653887 -416 -0.1
(read/write) 190088 190512 424 0.2
.bss 73660 73668 8 0.0
.data 3216 3216 0 0.0
.rodata 83343 83287 -56 -0.1
.text 570480 570116 -364 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626374 625950 -424 -0.1
.app_xip_area 529204 528772 -432 -0.1
.bss 79828 79836 8 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 620974 620534 -440 -0.1
.app_xip_area 525276 524836 -440 -0.1
.bss 78388 78388 0 0.0
.data 656 656 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574074 573726 -348 -0.1
.app_xip_area 468732 468384 -348 -0.1
.bss 87736 87736 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907432 907768 336 0.0
(read/write) 134960 134968 8 0.0
.bss 132912 132920 8 0.0
.data 2044 2048 4 0.2
.text 907424 907760 336 0.0
BRD4161A+rpc (read only) 941816 942128 312 0.0
(read/write) 151640 151656 16 0.0
.bss 149392 149400 8 0.0
.data 2248 2252 4 0.2
.text 941808 942120 312 0.0
window-app BRD4161A (read only) 844640 844984 344 0.0
(read/write) 133048 133056 8 0.0
.bss 131088 131096 8 0.0
.data 1956 1960 4 0.2
.text 844632 844976 344 0.0
esp32 all-clusters-app c3devkit (read only) 998842 998616 -226 -0.0
(read/write) 1473570 1473530 -40 -0.0
.dram0.bss 68208 68224 16 0.0
.dram0.data 14428 14420 -8 -0.1
.flash.rodata 206488 206432 -56 -0.0
.flash.text 998842 998616 -226 -0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1053087 1052651 -436 -0.0
(read/write) 475568 475520 -48 -0.0
.dram0.bss 73728 73744 16 0.0
.dram0.data 34168 34168 0 0.0
.flash.rodata 235836 235772 -64 -0.0
.flash.text 1047703 1047267 -436 -0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 688388 688052 -336 -0.0
.bss 81160 81168 8 0.0
.data 2000 2004 4 0.2
.text 599428 599080 -348 -0.1
lock k32w061+release (read/write) 729248 728808 -440 -0.1
.bss 81568 81568 0 0.0
.data 1960 1964 4 0.2
.text 639920 639476 -444 -0.1
linux all-clusters-app debug (read only) 2730993 2726489 -4504 -0.2
(read/write) 172752 172920 168 0.1
.bss 83168 83232 64 0.1
.data 1984 1968 -16 -0.8
.data.rel.ro 81496 81592 96 0.1
.dynamic 608 608 0 0.0
.got 4464 4464 0 0.0
.init 27 27 0 0.0
.init_array 1000 1008 8 0.8
.rodata 234085 234533 448 0.2
.text 2322546 2317522 -5024 -0.2
bridge-app debug+rpc (read only) 1888049 1883513 -4536 -0.2
(read/write) 120112 120248 136 0.1
.bss 71168 71232 64 0.1
.data 3424 3424 0 0.0
.data.rel.ro 40184 40248 64 0.2
.dynamic 592 592 0 0.0
.got 4032 4032 0 0.0
.init 27 27 0 0.0
.init_array 680 688 8 1.2
.rodata 159489 159969 480 0.3
.text 1606402 1601314 -5088 -0.3
chip-tool debug (read only) 8379277 8379245 -32 -0.0
(read/write) 473424 473424 0 0.0
.bss 22592 22592 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 443448 443448 0 0.0
.dynamic 624 624 0 0.0
.got 4952 4952 0 0.0
.init 27 27 0 0.0
.init_array 648 648 0 0.0
.rodata 455029 454997 -32 -0.0
.text 6840933 6840933 0 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 8237604 8237604 0 0.0
(read/write) 538593 538609 16 0.0
.bss 40897 40913 16 0.0
.data 1192 1192 0 0.0
.data.rel.ro 478600 478600 0 0.0
.dynamic 560 560 0 0.0
.got 14080 14080 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 421492 421492 0 0.0
.text 6600196 6600196 0 0.0
lighting-app debug+rpc (read only) 2322417 2317817 -4600 -0.2
(read/write) 151096 151200 104 0.1
.bss 73248 73280 32 0.0
.data 1984 1984 0 0.0
.data.rel.ro 70120 70200 80 0.1
.dynamic 608 608 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 784 792 8 1.0
.rodata 183601 184017 416 0.2
.text 1972802 1967714 -5088 -0.3
lock-app debug (read only) 2203521 2199129 -4392 -0.2
(read/write) 145416 145520 104 0.1
.bss 71808 71872 64 0.1
.data 1504 1504 0 0.0
.data.rel.ro 66456 66488 32 0.0
.dynamic 592 592 0 0.0
.got 4312 4312 0 0.0
.init 27 27 0 0.0
.init_array 736 744 8 1.1
.rodata 192097 192545 448 0.2
.text 1852050 1847138 -4912 -0.3
ota-provider-app debug (read only) 2057001 2052465 -4536 -0.2
(read/write) 138696 138800 104 0.1
.bss 71232 71296 64 0.1
.data 1672 1672 0 0.0
.data.rel.ro 60008 60056 48 0.1
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 640 648 8 1.2
.rodata 174147 174627 480 0.3
.text 1725970 1720882 -5088 -0.3
ota-requestor-app debug (read only) 2088081 2083545 -4536 -0.2
(read/write) 141472 141608 136 0.1
.bss 71872 71936 64 0.1
.data 1928 1928 0 0.0
.data.rel.ro 62056 62120 64 0.1
.dynamic 592 592 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 664 672 8 1.2
.rodata 170380 170860 480 0.3
.text 1759330 1754242 -5088 -0.3
shell debug (read only) 2555977 2551441 -4536 -0.2
(read/write) 196648 196784 136 0.1
.bss 113768 113832 64 0.1
.data 1360 1376 16 1.2
.data.rel.ro 75784 75864 80 0.1
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 920 928 8 0.9
.rodata 215794 216210 416 0.2
.text 2178898 2173874 -5024 -0.2
thermostat-no-ble arm64 (read only) 2365468 2363380 -2088 -0.1
(read/write) 174305 174401 96 0.1
.bss 86129 86145 16 0.0
.data 1488 1488 0 0.0
.data.rel.ro 78928 78992 64 0.1
.dynamic 560 560 0 0.0
.got 4736 4744 8 0.2
.init 24 24 0 0.0
.init_array 368 376 8 2.2
.rodata 145612 145620 8 0.0
.text 1991024 1988752 -2272 -0.1
tv-app debug (read only) 2841065 2836769 -4296 -0.2
(read/write) 276344 276416 72 0.0
.bss 189112 189144 32 0.0
.data 4640 4640 0 0.0
.data.rel.ro 76360 76408 48 0.1
.dynamic 592 592 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 920 928 8 0.9
.rodata 216203 216651 448 0.2
.text 2443026 2438210 -4816 -0.2
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411100 2412508 1408 0.1
.bss 205708 205708 0 0.0
.data 5848 5848 0 0.0
.text 1373700 1375108 1408 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179039 1178619 -420 -0.0
bss 141840 141848 8 0.0
rodata 150064 149996 -68 -0.0
text 808428 808068 -360 -0.0
p6 all-clusters-app default (read/write) 2526408 2526680 272 0.0
.bss 139096 139104 8 0.0
.data 2784 2792 8 0.3
.text 1484672 1484944 272 0.0
light-app default (read/write) 2418352 2418608 256 0.0
.bss 132568 132568 0 0.0
.data 2584 2592 8 0.3
.text 1376616 1376872 256 0.0
lock-app default (read/write) 2422432 2422704 272 0.0
.bss 132368 132376 8 0.0
.data 2544 2552 8 0.3
.text 1380696 1380968 272 0.0
telink lighting-app tlsr9518adk80d (read/write) 807312 807072 -240 -0.0
bss 75272 75280 8 0.0
noinit 40416 40416 0 0.0
text 571242 571056 -186 -0.0

@mlepage-google
Copy link
Contributor Author

@tcarmelveilleux requests:
Do not reach into Server for the PersistentStorage. We inject the AccessControl::Delegate to the Server SPECIFICALLY so that the init of it injects the persistent storage delegate. It has to be kept this way.
Initialize the items to inject PersistentStorageDelegate, rather than reaching in for auto & storage = Server::GetInstance().GetPersistentStorage();

I will change it so we inject the persistent storage into AclStorage, and update docs.

src/access/AccessControl.cpp Outdated Show resolved Hide resolved
src/access/AccessControl.cpp Outdated Show resolved Hide resolved
src/access/AccessControl.cpp Outdated Show resolved Hide resolved
src/access/AccessControl.h Show resolved Hide resolved
src/access/AccessControl.h Outdated Show resolved Hide resolved
src/app/server/Server.h Outdated Show resolved Hide resolved
src/app/server/Server.cpp Show resolved Hide resolved
src/app/server/AclStorage.h Show resolved Hide resolved
src/app/server/AclStorage.h Show resolved Hide resolved
src/app/server/AclStorage.cpp Show resolved Hide resolved
PersistentStorageDelegate and FabricTable are injected now.
Mostly clarifying docs, removing a few unused functions that were
missed, etc.
@github-actions
Copy link

github-actions bot commented Apr 28, 2022

PR #17357: Size comparison from cfc3595 to 022b830

Increases above 0.2%:

platform target config section cfc3595 022b830 change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 154676 155092 416 0.3
cyw30739 light cyw930739m2evb_01 .data 692 696 4 0.6
lock cyw930739m2evb_01 .data 656 660 4 0.6
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 568 572 4 0.7
efr32 lighting-app BRD4161A .data 2044 2052 8 0.4
BRD4161A+rpc .data 2248 2256 8 0.4
BRD4161A+rs911x .data 1972 1980 8 0.4
lock-app BRD4161A+wf200 .data 1920 1928 8 0.4
window-app BRD4161A .data 1956 1964 8 0.4
linux thermostat-no-ble arm64 .data 1488 1496 8 0.5
.init_array 368 376 8 2.2
p6 all-clusters-app default .data 2784 2792 8 0.3
light-app default .data 2584 2592 8 0.3
lock-app default .data 2544 2552 8 0.3
Increases (23 builds for cc13x2_26x2, cyw30739, efr32, esp32, linux, mbed, nrfconnect, p6, telink)
platform target config section cfc3595 022b830 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 164188 164428 240 0.1
.bss 75228 75236 8 0.0
.data 3396 3400 4 0.1
.rodata 101507 101571 64 0.1
lock-ftd LP_CC2652R7 (read/write) 154676 155092 416 0.3
.data 3220 3224 4 0.1
lock-mtd LP_CC2652R7 (read/write) 146388 146392 4 0.0
.data 3220 3224 4 0.1
pump-app LP_CC2652R7 (read/write) 183112 183344 232 0.1
.data 3252 3256 4 0.1
.rodata 80351 80423 72 0.1
pump-controller-app LP_CC2652R7 (read/write) 189968 190384 416 0.2
.bss 73812 73820 8 0.0
.data 3216 3220 4 0.1
cyw30739 light cyw930739m2evb_01 .bss 80108 80116 8 0.0
.data 692 696 4 0.6
lock cyw930739m2evb_01 .data 656 660 4 0.6
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 568 572 4 0.7
efr32 lighting-app BRD4161A (read only) 907760 908064 304 0.0
(read/write) 135112 135128 16 0.0
.bss 133064 133072 8 0.0
.data 2044 2052 8 0.4
.text 907752 908056 304 0.0
BRD4161A+rpc (read only) 942112 942408 296 0.0
(read/write) 151792 151808 16 0.0
.bss 149544 149552 8 0.0
.data 2248 2256 8 0.4
.text 942104 942400 296 0.0
BRD4161A+rs911x (read only) 746076 746396 320 0.0
(read/write) 129344 129352 8 0.0
.data 1972 1980 8 0.4
.text 746068 746388 320 0.0
lock-app BRD4161A+wf200 (read/write) 126300 126316 16 0.0
.bss 124380 124388 8 0.0
.data 1920 1928 8 0.4
window-app BRD4161A (read only) 844952 845280 328 0.0
(read/write) 133200 133216 16 0.0
.bss 131240 131248 8 0.0
.data 1956 1964 8 0.4
.text 844944 845272 328 0.0
esp32 all-clusters-app c3devkit .dram0.bss 68360 68376 16 0.0
m5stack .dram0.bss 73880 73896 16 0.0
.dram0.data 34168 34176 8 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8276484 8279108 2624 0.0
(read/write) 539601 539617 16 0.0
.bss 40897 40913 16 0.0
.rodata 423604 423716 112 0.0
.text 6634532 6637044 2512 0.0
thermostat-no-ble arm64 (read/write) 174513 174609 96 0.1
.bss 86257 86273 16 0.0
.data 1488 1496 8 0.5
.data.rel.ro 79000 79064 64 0.1
.got 4736 4744 8 0.2
.init_array 368 376 8 2.2
.rodata 145980 145988 8 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2411340 2412836 1496 0.1
.data 5848 5856 8 0.1
.text 1373940 1375436 1496 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 bss 141992 142000 8 0.0
p6 all-clusters-app default (read/write) 2526824 2527128 304 0.0
.bss 139248 139256 8 0.0
.data 2784 2792 8 0.3
.text 1485088 1485392 304 0.0
light-app default (read/write) 2418768 2419056 288 0.0
.data 2584 2592 8 0.3
.text 1377032 1377320 288 0.0
lock-app default (read/write) 2422848 2423152 304 0.0
.bss 132520 132528 8 0.0
.data 2544 2552 8 0.3
.text 1381112 1381416 304 0.0
telink lighting-app tlsr9518adk80d bss 75424 75432 8 0.0
Decreases (14 builds for cc13x2_26x2, cyw30739, efr32, esp32, linux, nrfconnect, telink)
platform target config section cfc3595 022b830 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 688059 687827 -232 -0.0
.text 586072 585772 -300 -0.1
lock-ftd LP_CC2652R7 (read only) 688875 688459 -416 -0.1
.rodata 103171 103115 -56 -0.1
.text 585220 584864 -356 -0.1
lock-mtd LP_CC2652R7 (read only) 637611 637203 -408 -0.1
.rodata 103051 102995 -56 -0.1
.text 534068 533720 -348 -0.1
pump-app LP_CC2652R7 (read only) 661639 661407 -232 -0.0
.text 580808 580500 -308 -0.1
pump-controller-app LP_CC2652R7 (read only) 654575 654167 -408 -0.1
.rodata 83383 83327 -56 -0.1
.text 570712 570356 -356 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626918 626502 -416 -0.1
.app_xip_area 529468 529036 -432 -0.1
lock cyw930739m2evb_01 (read/write) 621518 621094 -424 -0.1
.app_xip_area 525540 525116 -424 -0.1
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574634 574310 -324 -0.1
.app_xip_area 469012 468688 -324 -0.1
efr32 lock-app BRD4161A+wf200 (read only) 908780 908404 -376 -0.0
.text 908772 908396 -376 -0.0
esp32 all-clusters-app c3devkit (read only) 999288 999080 -208 -0.0
(read/write) 1473778 1473730 -48 -0.0
.flash.rodata 206536 206472 -64 -0.0
.flash.text 999288 999080 -208 -0.0
m5stack (read only) 1054687 1054267 -420 -0.0
(read/write) 476200 476168 -32 -0.0
.flash.rodata 236316 236260 -56 -0.0
.flash.text 1049303 1048883 -420 -0.0
linux thermostat-no-ble arm64 (read only) 2366892 2364996 -1896 -0.1
.text 1991856 1989792 -2064 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179447 1179051 -396 -0.0
rodata 150104 150036 -68 -0.0
text 808660 808324 -336 -0.0
telink lighting-app tlsr9518adk80d (read/write) 807680 807456 -224 -0.0
text 571416 571244 -172 -0.0
Full report (23 builds for cc13x2_26x2, cyw30739, efr32, esp32, linux, mbed, nrfconnect, p6, telink)
platform target config section cfc3595 022b830 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 688059 687827 -232 -0.0
(read/write) 164188 164428 240 0.1
.bss 75228 75236 8 0.0
.data 3396 3400 4 0.1
.rodata 101507 101571 64 0.1
.text 586072 585772 -300 -0.1
lock-ftd LP_CC2652R7 (read only) 688875 688459 -416 -0.1
(read/write) 154676 155092 416 0.3
.bss 73588 73588 0 0.0
.data 3220 3224 4 0.1
.rodata 103171 103115 -56 -0.1
.text 585220 584864 -356 -0.1
lock-mtd LP_CC2652R7 (read only) 637611 637203 -408 -0.1
(read/write) 146388 146392 4 0.0
.bss 69308 69308 0 0.0
.data 3220 3224 4 0.1
.rodata 103051 102995 -56 -0.1
.text 534068 533720 -348 -0.1
pump-app LP_CC2652R7 (read only) 661639 661407 -232 -0.0
(read/write) 183112 183344 232 0.1
.bss 73764 73764 0 0.0
.data 3252 3256 4 0.1
.rodata 80351 80423 72 0.1
.text 580808 580500 -308 -0.1
pump-controller-app LP_CC2652R7 (read only) 654575 654167 -408 -0.1
(read/write) 189968 190384 416 0.2
.bss 73812 73820 8 0.0
.data 3216 3220 4 0.1
.rodata 83383 83327 -56 -0.1
.text 570712 570356 -356 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626918 626502 -416 -0.1
.app_xip_area 529468 529036 -432 -0.1
.bss 80108 80116 8 0.0
.data 692 696 4 0.6
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 621518 621094 -424 -0.1
.app_xip_area 525540 525116 -424 -0.1
.bss 78668 78668 0 0.0
.data 656 660 4 0.6
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574634 574310 -324 -0.1
.app_xip_area 469012 468688 -324 -0.1
.bss 88016 88016 0 0.0
.data 568 572 4 0.7
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907760 908064 304 0.0
(read/write) 135112 135128 16 0.0
.bss 133064 133072 8 0.0
.data 2044 2052 8 0.4
.text 907752 908056 304 0.0
BRD4161A+rpc (read only) 942112 942408 296 0.0
(read/write) 151792 151808 16 0.0
.bss 149544 149552 8 0.0
.data 2248 2256 8 0.4
.text 942104 942400 296 0.0
BRD4161A+rs911x (read only) 746076 746396 320 0.0
(read/write) 129344 129352 8 0.0
.bss 127372 127372 0 0.0
.data 1972 1980 8 0.4
.text 746068 746388 320 0.0
lock-app BRD4161A+wf200 (read only) 908780 908404 -376 -0.0
(read/write) 126300 126316 16 0.0
.bss 124380 124388 8 0.0
.data 1920 1928 8 0.4
.text 908772 908396 -376 -0.0
window-app BRD4161A (read only) 844952 845280 328 0.0
(read/write) 133200 133216 16 0.0
.bss 131240 131248 8 0.0
.data 1956 1964 8 0.4
.text 844944 845272 328 0.0
esp32 all-clusters-app c3devkit (read only) 999288 999080 -208 -0.0
(read/write) 1473778 1473730 -48 -0.0
.dram0.bss 68360 68376 16 0.0
.dram0.data 14428 14428 0 0.0
.flash.rodata 206536 206472 -64 -0.0
.flash.text 999288 999080 -208 -0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1054687 1054267 -420 -0.0
(read/write) 476200 476168 -32 -0.0
.dram0.bss 73880 73896 16 0.0
.dram0.data 34168 34176 8 0.0
.flash.rodata 236316 236260 -56 -0.0
.flash.text 1049303 1048883 -420 -0.0
.iram0.text 123107 123107 0 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8276484 8279108 2624 0.0
(read/write) 539601 539617 16 0.0
.bss 40897 40913 16 0.0
.data 1192 1192 0 0.0
.data.rel.ro 479608 479608 0 0.0
.dynamic 560 560 0 0.0
.got 14088 14088 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 423604 423716 112 0.0
.text 6634532 6637044 2512 0.0
thermostat-no-ble arm64 (read only) 2366892 2364996 -1896 -0.1
(read/write) 174513 174609 96 0.1
.bss 86257 86273 16 0.0
.data 1488 1496 8 0.5
.data.rel.ro 79000 79064 64 0.1
.dynamic 560 560 0 0.0
.got 4736 4744 8 0.2
.init 24 24 0 0.0
.init_array 368 376 8 2.2
.rodata 145980 145988 8 0.0
.text 1991856 1989792 -2064 -0.1
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411340 2412836 1496 0.1
.bss 205860 205860 0 0.0
.data 5848 5856 8 0.1
.text 1373940 1375436 1496 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179447 1179051 -396 -0.0
bss 141992 142000 8 0.0
rodata 150104 150036 -68 -0.0
text 808660 808324 -336 -0.0
p6 all-clusters-app default (read/write) 2526824 2527128 304 0.0
.bss 139248 139256 8 0.0
.data 2784 2792 8 0.3
.text 1485088 1485392 304 0.0
light-app default (read/write) 2418768 2419056 288 0.0
.bss 132720 132720 0 0.0
.data 2584 2592 8 0.3
.text 1377032 1377320 288 0.0
lock-app default (read/write) 2422848 2423152 304 0.0
.bss 132520 132528 8 0.0
.data 2544 2552 8 0.3
.text 1381112 1381416 304 0.0
telink lighting-app tlsr9518adk80d (read/write) 807680 807456 -224 -0.0
bss 75424 75432 8 0.0
noinit 40416 40416 0 0.0
text 571416 571244 -172 -0.0

@github-actions
Copy link

github-actions bot commented Apr 29, 2022

PR #17357: Size comparison from 2826b34 to a97024d

Increases above 0.2%:

platform target config section 2826b34 a97024d change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 154756 155172 416 0.3
cyw30739 light cyw930739m2evb_01 .data 692 696 4 0.6
lock cyw930739m2evb_01 .data 656 660 4 0.6
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 568 572 4 0.7
efr32 lighting-app BRD4161A .data 2044 2052 8 0.4
BRD4161A+rpc .data 2248 2256 8 0.4
BRD4161A+rs911x .data 1972 1980 8 0.4
lock-app BRD4161A+wf200 .data 1920 1928 8 0.4
window-app BRD4161A .data 1956 1964 8 0.4
linux thermostat-no-ble arm64 .data 1488 1496 8 0.5
.init_array 368 376 8 2.2
p6 all-clusters-app default .data 2784 2792 8 0.3
light-app default .data 2584 2592 8 0.3
lock-app default .data 2544 2552 8 0.3
Increases (23 builds for cc13x2_26x2, cyw30739, efr32, esp32, linux, mbed, nrfconnect, p6, telink)
platform target config section 2826b34 a97024d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 164268 164492 224 0.1
.bss 75228 75236 8 0.0
.data 3396 3400 4 0.1
.rodata 101507 101571 64 0.1
lock-ftd LP_CC2652R7 (read/write) 154756 155172 416 0.3
.data 3220 3224 4 0.1
lock-mtd LP_CC2652R7 (read/write) 146388 146392 4 0.0
.data 3220 3224 4 0.1
pump-app LP_CC2652R7 (read/write) 183192 183424 232 0.1
.data 3252 3256 4 0.1
.rodata 80351 80423 72 0.1
pump-controller-app LP_CC2652R7 (read/write) 190032 190448 416 0.2
.bss 73812 73820 8 0.0
.data 3216 3220 4 0.1
cyw30739 light cyw930739m2evb_01 .bss 80108 80116 8 0.0
.data 692 696 4 0.6
lock cyw930739m2evb_01 .data 656 660 4 0.6
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 568 572 4 0.7
efr32 lighting-app BRD4161A (read only) 907744 908048 304 0.0
(read/write) 135112 135128 16 0.0
.bss 133064 133072 8 0.0
.data 2044 2052 8 0.4
.text 907736 908040 304 0.0
BRD4161A+rpc (read only) 942112 942392 280 0.0
(read/write) 151792 151808 16 0.0
.bss 149544 149552 8 0.0
.data 2248 2256 8 0.4
.text 942104 942384 280 0.0
BRD4161A+rs911x (read only) 746060 746380 320 0.0
(read/write) 129344 129352 8 0.0
.data 1972 1980 8 0.4
.text 746052 746372 320 0.0
lock-app BRD4161A+wf200 (read/write) 126300 126316 16 0.0
.bss 124380 124388 8 0.0
.data 1920 1928 8 0.4
window-app BRD4161A (read only) 844952 845280 328 0.0
(read/write) 133200 133216 16 0.0
.bss 131240 131248 8 0.0
.data 1956 1964 8 0.4
.text 844944 845272 328 0.0
esp32 all-clusters-app c3devkit .dram0.bss 68360 68376 16 0.0
m5stack .dram0.bss 73880 73896 16 0.0
.dram0.data 34168 34176 8 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read/write) 616353 616369 16 0.0
.bss 40897 40913 16 0.0
thermostat-no-ble arm64 (read/write) 174513 174609 96 0.1
.bss 86257 86273 16 0.0
.data 1488 1496 8 0.5
.data.rel.ro 79000 79064 64 0.1
.got 4736 4744 8 0.2
.init_array 368 376 8 2.2
.rodata 145980 145988 8 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2411276 2412772 1496 0.1
.data 5848 5856 8 0.1
.text 1373876 1375372 1496 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 bss 141992 142000 8 0.0
p6 all-clusters-app default (read/write) 2526824 2527128 304 0.0
.bss 139248 139256 8 0.0
.data 2784 2792 8 0.3
.text 1485088 1485392 304 0.0
light-app default (read/write) 2418752 2419040 288 0.0
.data 2584 2592 8 0.3
.text 1377016 1377304 288 0.0
lock-app default (read/write) 2422832 2423136 304 0.0
.bss 132520 132528 8 0.0
.data 2544 2552 8 0.3
.text 1381096 1381400 304 0.0
telink lighting-app tlsr9518adk80d bss 75424 75432 8 0.0
Decreases (14 builds for cc13x2_26x2, cyw30739, efr32, esp32, linux, nrfconnect, telink)
platform target config section 2826b34 a97024d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 687979 687763 -216 -0.0
.text 585992 585708 -284 -0.0
lock-ftd LP_CC2652R7 (read only) 688795 688379 -416 -0.1
.rodata 103171 103115 -56 -0.1
.text 585140 584784 -356 -0.1
lock-mtd LP_CC2652R7 (read only) 637539 637123 -416 -0.1
.rodata 103051 102995 -56 -0.1
.text 533996 533640 -356 -0.1
pump-app LP_CC2652R7 (read only) 661559 661327 -232 -0.0
.text 580728 580420 -308 -0.1
pump-controller-app LP_CC2652R7 (read only) 654511 654103 -408 -0.1
.rodata 83383 83327 -56 -0.1
.text 570648 570292 -356 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626774 626358 -416 -0.1
.app_xip_area 529324 528892 -432 -0.1
lock cyw930739m2evb_01 (read/write) 621374 620950 -424 -0.1
.app_xip_area 525396 524972 -424 -0.1
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574482 574166 -316 -0.1
.app_xip_area 468860 468544 -316 -0.1
efr32 lock-app BRD4161A+wf200 (read only) 908716 908324 -392 -0.0
.text 908708 908316 -392 -0.0
esp32 all-clusters-app c3devkit (read only) 999188 998978 -210 -0.0
(read/write) 1473778 1473730 -48 -0.0
.flash.rodata 206536 206472 -64 -0.0
.flash.text 999188 998978 -210 -0.0
m5stack (read only) 1054603 1054203 -400 -0.0
(read/write) 476200 476168 -32 -0.0
.flash.rodata 236316 236260 -56 -0.0
.flash.text 1049219 1048819 -400 -0.0
linux thermostat-no-ble arm64 (read only) 2366924 2365028 -1896 -0.1
.text 1991888 1989824 -2064 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179303 1178907 -396 -0.0
rodata 150104 150036 -68 -0.0
text 808520 808176 -344 -0.0
telink lighting-app tlsr9518adk80d (read/write) 807568 807344 -224 -0.0
text 571306 571132 -174 -0.0
Full report (23 builds for cc13x2_26x2, cyw30739, efr32, esp32, linux, mbed, nrfconnect, p6, telink)
platform target config section 2826b34 a97024d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 687979 687763 -216 -0.0
(read/write) 164268 164492 224 0.1
.bss 75228 75236 8 0.0
.data 3396 3400 4 0.1
.rodata 101507 101571 64 0.1
.text 585992 585708 -284 -0.0
lock-ftd LP_CC2652R7 (read only) 688795 688379 -416 -0.1
(read/write) 154756 155172 416 0.3
.bss 73588 73588 0 0.0
.data 3220 3224 4 0.1
.rodata 103171 103115 -56 -0.1
.text 585140 584784 -356 -0.1
lock-mtd LP_CC2652R7 (read only) 637539 637123 -416 -0.1
(read/write) 146388 146392 4 0.0
.bss 69308 69308 0 0.0
.data 3220 3224 4 0.1
.rodata 103051 102995 -56 -0.1
.text 533996 533640 -356 -0.1
pump-app LP_CC2652R7 (read only) 661559 661327 -232 -0.0
(read/write) 183192 183424 232 0.1
.bss 73764 73764 0 0.0
.data 3252 3256 4 0.1
.rodata 80351 80423 72 0.1
.text 580728 580420 -308 -0.1
pump-controller-app LP_CC2652R7 (read only) 654511 654103 -408 -0.1
(read/write) 190032 190448 416 0.2
.bss 73812 73820 8 0.0
.data 3216 3220 4 0.1
.rodata 83383 83327 -56 -0.1
.text 570648 570292 -356 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626774 626358 -416 -0.1
.app_xip_area 529324 528892 -432 -0.1
.bss 80108 80116 8 0.0
.data 692 696 4 0.6
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 621374 620950 -424 -0.1
.app_xip_area 525396 524972 -424 -0.1
.bss 78668 78668 0 0.0
.data 656 660 4 0.6
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574482 574166 -316 -0.1
.app_xip_area 468860 468544 -316 -0.1
.bss 88016 88016 0 0.0
.data 568 572 4 0.7
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907744 908048 304 0.0
(read/write) 135112 135128 16 0.0
.bss 133064 133072 8 0.0
.data 2044 2052 8 0.4
.text 907736 908040 304 0.0
BRD4161A+rpc (read only) 942112 942392 280 0.0
(read/write) 151792 151808 16 0.0
.bss 149544 149552 8 0.0
.data 2248 2256 8 0.4
.text 942104 942384 280 0.0
BRD4161A+rs911x (read only) 746060 746380 320 0.0
(read/write) 129344 129352 8 0.0
.bss 127372 127372 0 0.0
.data 1972 1980 8 0.4
.text 746052 746372 320 0.0
lock-app BRD4161A+wf200 (read only) 908716 908324 -392 -0.0
(read/write) 126300 126316 16 0.0
.bss 124380 124388 8 0.0
.data 1920 1928 8 0.4
.text 908708 908316 -392 -0.0
window-app BRD4161A (read only) 844952 845280 328 0.0
(read/write) 133200 133216 16 0.0
.bss 131240 131248 8 0.0
.data 1956 1964 8 0.4
.text 844944 845272 328 0.0
esp32 all-clusters-app c3devkit (read only) 999188 998978 -210 -0.0
(read/write) 1473778 1473730 -48 -0.0
.dram0.bss 68360 68376 16 0.0
.dram0.data 14428 14428 0 0.0
.flash.rodata 206536 206472 -64 -0.0
.flash.text 999188 998978 -210 -0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1054603 1054203 -400 -0.0
(read/write) 476200 476168 -32 -0.0
.dram0.bss 73880 73896 16 0.0
.dram0.data 34168 34176 8 0.0
.flash.rodata 236316 236260 -56 -0.0
.flash.text 1049219 1048819 -400 -0.0
.iram0.text 123107 123107 0 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8692644 8692644 0 0.0
(read/write) 616353 616369 16 0.0
.bss 40897 40913 16 0.0
.data 1192 1192 0 0.0
.data.rel.ro 555704 555704 0 0.0
.dynamic 560 560 0 0.0
.got 14744 14744 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 429764 429764 0 0.0
.text 6865444 6865444 0 0.0
thermostat-no-ble arm64 (read only) 2366924 2365028 -1896 -0.1
(read/write) 174513 174609 96 0.1
.bss 86257 86273 16 0.0
.data 1488 1496 8 0.5
.data.rel.ro 79000 79064 64 0.1
.dynamic 560 560 0 0.0
.got 4736 4744 8 0.2
.init 24 24 0 0.0
.init_array 368 376 8 2.2
.rodata 145980 145988 8 0.0
.text 1991888 1989824 -2064 -0.1
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411276 2412772 1496 0.1
.bss 205860 205860 0 0.0
.data 5848 5856 8 0.1
.text 1373876 1375372 1496 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179303 1178907 -396 -0.0
bss 141992 142000 8 0.0
rodata 150104 150036 -68 -0.0
text 808520 808176 -344 -0.0
p6 all-clusters-app default (read/write) 2526824 2527128 304 0.0
.bss 139248 139256 8 0.0
.data 2784 2792 8 0.3
.text 1485088 1485392 304 0.0
light-app default (read/write) 2418752 2419040 288 0.0
.bss 132720 132720 0 0.0
.data 2584 2592 8 0.3
.text 1377016 1377304 288 0.0
lock-app default (read/write) 2422832 2423136 304 0.0
.bss 132520 132528 8 0.0
.data 2544 2552 8 0.3
.text 1381096 1381400 304 0.0
telink lighting-app tlsr9518adk80d (read/write) 807568 807344 -224 -0.0
bss 75424 75432 8 0.0
noinit 40416 40416 0 0.0
text 571306 571132 -174 -0.0

@github-actions
Copy link

github-actions bot commented Apr 29, 2022

PR #17357: Size comparison from 18ce67c to e051690

Increases above 0.2%:

platform target config section 18ce67c e051690 change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 154832 155248 416 0.3
cyw30739 light cyw930739m2evb_01 .data 692 696 4 0.6
lock cyw930739m2evb_01 .data 656 660 4 0.6
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 568 572 4 0.7
efr32 lighting-app BRD4161A .data 2044 2052 8 0.4
BRD4161A+rpc .data 2248 2256 8 0.4
BRD4161A+rs911x .data 1972 1980 8 0.4
lock-app BRD4161A+wf200 .data 1920 1928 8 0.4
window-app BRD4161A .data 1956 1964 8 0.4
k32w light k32w061+release .data 2000 2008 8 0.4
lock k32w061+release .data 1960 1968 8 0.4
linux thermostat-no-ble arm64 .data 1488 1496 8 0.5
.init_array 368 376 8 2.2
p6 all-clusters-app default .data 2784 2792 8 0.3
light-app default .data 2584 2592 8 0.3
lock-app default .data 2544 2552 8 0.3
Increases (25 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 18ce67c e051690 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 164336 164568 232 0.1
.bss 75228 75236 8 0.0
.data 3396 3400 4 0.1
.rodata 101503 101567 64 0.1
lock-ftd LP_CC2652R7 (read/write) 154832 155248 416 0.3
.data 3220 3224 4 0.1
lock-mtd LP_CC2652R7 (read/write) 146388 146392 4 0.0
.data 3220 3224 4 0.1
pump-app LP_CC2652R7 (read/write) 183260 183492 232 0.1
.data 3252 3256 4 0.1
.rodata 80347 80419 72 0.1
pump-controller-app LP_CC2652R7 (read/write) 190100 190516 416 0.2
.bss 73812 73820 8 0.0
.data 3216 3220 4 0.1
cyw30739 light cyw930739m2evb_01 .bss 80108 80116 8 0.0
.data 692 696 4 0.6
lock cyw930739m2evb_01 .data 656 660 4 0.6
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 568 572 4 0.7
efr32 lighting-app BRD4161A (read only) 907640 907960 320 0.0
(read/write) 135112 135128 16 0.0
.bss 133064 133072 8 0.0
.data 2044 2052 8 0.4
.text 907632 907952 320 0.0
BRD4161A+rpc (read only) 942008 942304 296 0.0
(read/write) 151792 151808 16 0.0
.bss 149544 149552 8 0.0
.data 2248 2256 8 0.4
.text 942000 942296 296 0.0
BRD4161A+rs911x (read only) 745956 746276 320 0.0
(read/write) 129344 129352 8 0.0
.data 1972 1980 8 0.4
.text 745948 746268 320 0.0
lock-app BRD4161A+wf200 (read/write) 126300 126316 16 0.0
.bss 124380 124388 8 0.0
.data 1920 1928 8 0.4
window-app BRD4161A (read only) 844848 845176 328 0.0
(read/write) 133200 133216 16 0.0
.bss 131240 131248 8 0.0
.data 1956 1964 8 0.4
.text 844840 845168 328 0.0
esp32 all-clusters-app c3devkit .dram0.bss 68360 68376 16 0.0
m5stack .dram0.bss 73880 73896 16 0.0
.dram0.data 34168 34176 8 0.0
k32w light k32w061+release .bss 81312 81320 8 0.0
.data 2000 2008 8 0.4
lock k32w061+release .data 1960 1968 8 0.4
linux chip-tool-no-interactive-ipv6only arm64 (read/write) 616289 616305 16 0.0
.bss 40897 40913 16 0.0
thermostat-no-ble arm64 (read/write) 174481 174593 112 0.1
.bss 86257 86273 16 0.0
.data 1488 1496 8 0.5
.data.rel.ro 78984 79048 64 0.1
.got 4728 4736 8 0.2
.init_array 368 376 8 2.2
.rodata 145980 145988 8 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2411212 2412708 1496 0.1
.data 5848 5856 8 0.1
.text 1373812 1375308 1496 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 bss 141992 142000 8 0.0
p6 all-clusters-app default (read/write) 2526720 2527024 304 0.0
.bss 139248 139256 8 0.0
.data 2784 2792 8 0.3
.text 1484984 1485288 304 0.0
light-app default (read/write) 2418648 2418952 304 0.0
.data 2584 2592 8 0.3
.text 1376912 1377216 304 0.0
lock-app default (read/write) 2422744 2423032 288 0.0
.bss 132520 132528 8 0.0
.data 2544 2552 8 0.3
.text 1381008 1381296 288 0.0
telink lighting-app tlsr9518adk80d bss 75424 75432 8 0.0
Decreases (16 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, nrfconnect, telink)
platform target config section 18ce67c e051690 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 687911 687687 -224 -0.0
.text 585928 585636 -292 -0.0
lock-ftd LP_CC2652R7 (read only) 688719 688303 -416 -0.1
.rodata 103167 103111 -56 -0.1
.text 585068 584712 -356 -0.1
lock-mtd LP_CC2652R7 (read only) 637471 637055 -416 -0.1
.rodata 103047 102991 -56 -0.1
.text 533932 533576 -356 -0.1
pump-app LP_CC2652R7 (read only) 661491 661259 -232 -0.0
.text 580664 580356 -308 -0.1
pump-controller-app LP_CC2652R7 (read only) 654443 654035 -408 -0.1
.rodata 83379 83323 -56 -0.1
.text 570584 570228 -356 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626698 626290 -408 -0.1
.app_xip_area 529248 528824 -424 -0.1
lock cyw930739m2evb_01 (read/write) 621298 620882 -416 -0.1
.app_xip_area 525320 524904 -416 -0.1
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574414 574098 -316 -0.1
.app_xip_area 468792 468476 -316 -0.1
efr32 lock-app BRD4161A+wf200 (read only) 908648 908256 -392 -0.0
.text 908640 908248 -392 -0.0
esp32 all-clusters-app c3devkit (read only) 999116 998906 -210 -0.0
(read/write) 1473770 1473722 -48 -0.0
.flash.rodata 206528 206464 -64 -0.0
.flash.text 999116 998906 -210 -0.0
m5stack (read only) 1054559 1054163 -396 -0.0
(read/write) 476200 476160 -40 -0.0
.flash.rodata 236316 236252 -64 -0.0
.flash.text 1049175 1048779 -396 -0.0
k32w light k32w061+release (read/write) 684592 684268 -324 -0.0
.text 599576 599236 -340 -0.1
lock k32w061+release (read/write) 725404 724980 -424 -0.1
.text 640020 639588 -432 -0.1
linux thermostat-no-ble arm64 (read only) 2366380 2364500 -1880 -0.1
.text 1991424 1989360 -2064 -0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179219 1178823 -396 -0.0
rodata 150100 150032 -68 -0.0
text 808444 808104 -340 -0.0
telink lighting-app tlsr9518adk80d (read/write) 807484 807260 -224 -0.0
text 571226 571052 -174 -0.0
Full report (25 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 18ce67c e051690 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 687911 687687 -224 -0.0
(read/write) 164336 164568 232 0.1
.bss 75228 75236 8 0.0
.data 3396 3400 4 0.1
.rodata 101503 101567 64 0.1
.text 585928 585636 -292 -0.0
lock-ftd LP_CC2652R7 (read only) 688719 688303 -416 -0.1
(read/write) 154832 155248 416 0.3
.bss 73588 73588 0 0.0
.data 3220 3224 4 0.1
.rodata 103167 103111 -56 -0.1
.text 585068 584712 -356 -0.1
lock-mtd LP_CC2652R7 (read only) 637471 637055 -416 -0.1
(read/write) 146388 146392 4 0.0
.bss 69308 69308 0 0.0
.data 3220 3224 4 0.1
.rodata 103047 102991 -56 -0.1
.text 533932 533576 -356 -0.1
pump-app LP_CC2652R7 (read only) 661491 661259 -232 -0.0
(read/write) 183260 183492 232 0.1
.bss 73764 73764 0 0.0
.data 3252 3256 4 0.1
.rodata 80347 80419 72 0.1
.text 580664 580356 -308 -0.1
pump-controller-app LP_CC2652R7 (read only) 654443 654035 -408 -0.1
(read/write) 190100 190516 416 0.2
.bss 73812 73820 8 0.0
.data 3216 3220 4 0.1
.rodata 83379 83323 -56 -0.1
.text 570584 570228 -356 -0.1
cyw30739 light cyw930739m2evb_01 (read/write) 626698 626290 -408 -0.1
.app_xip_area 529248 528824 -424 -0.1
.bss 80108 80116 8 0.0
.data 692 696 4 0.6
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 621298 620882 -416 -0.1
.app_xip_area 525320 524904 -416 -0.1
.bss 78668 78668 0 0.0
.data 656 660 4 0.6
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574414 574098 -316 -0.1
.app_xip_area 468792 468476 -316 -0.1
.bss 88016 88016 0 0.0
.data 568 572 4 0.7
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907640 907960 320 0.0
(read/write) 135112 135128 16 0.0
.bss 133064 133072 8 0.0
.data 2044 2052 8 0.4
.text 907632 907952 320 0.0
BRD4161A+rpc (read only) 942008 942304 296 0.0
(read/write) 151792 151808 16 0.0
.bss 149544 149552 8 0.0
.data 2248 2256 8 0.4
.text 942000 942296 296 0.0
BRD4161A+rs911x (read only) 745956 746276 320 0.0
(read/write) 129344 129352 8 0.0
.bss 127372 127372 0 0.0
.data 1972 1980 8 0.4
.text 745948 746268 320 0.0
lock-app BRD4161A+wf200 (read only) 908648 908256 -392 -0.0
(read/write) 126300 126316 16 0.0
.bss 124380 124388 8 0.0
.data 1920 1928 8 0.4
.text 908640 908248 -392 -0.0
window-app BRD4161A (read only) 844848 845176 328 0.0
(read/write) 133200 133216 16 0.0
.bss 131240 131248 8 0.0
.data 1956 1964 8 0.4
.text 844840 845168 328 0.0
esp32 all-clusters-app c3devkit (read only) 999116 998906 -210 -0.0
(read/write) 1473770 1473722 -48 -0.0
.dram0.bss 68360 68376 16 0.0
.dram0.data 14428 14428 0 0.0
.flash.rodata 206528 206464 -64 -0.0
.flash.text 999116 998906 -210 -0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1054559 1054163 -396 -0.0
(read/write) 476200 476160 -40 -0.0
.dram0.bss 73880 73896 16 0.0
.dram0.data 34168 34176 8 0.0
.flash.rodata 236316 236252 -64 -0.0
.flash.text 1049175 1048779 -396 -0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 684592 684268 -324 -0.0
.bss 81312 81320 8 0.0
.data 2000 2008 8 0.4
.text 599576 599236 -340 -0.1
lock k32w061+release (read/write) 725404 724980 -424 -0.1
.bss 81720 81720 0 0.0
.data 1960 1968 8 0.4
.text 640020 639588 -432 -0.1
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8691892 8691892 0 0.0
(read/write) 616289 616305 16 0.0
.bss 40897 40913 16 0.0
.data 1192 1192 0 0.0
.data.rel.ro 555648 555648 0 0.0
.dynamic 560 560 0 0.0
.got 14736 14736 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 429764 429764 0 0.0
.text 6864884 6864884 0 0.0
thermostat-no-ble arm64 (read only) 2366380 2364500 -1880 -0.1
(read/write) 174481 174593 112 0.1
.bss 86257 86273 16 0.0
.data 1488 1496 8 0.5
.data.rel.ro 78984 79048 64 0.1
.dynamic 560 560 0 0.0
.got 4728 4736 8 0.2
.init 24 24 0 0.0
.init_array 368 376 8 2.2
.rodata 145980 145988 8 0.0
.text 1991424 1989360 -2064 -0.1
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411212 2412708 1496 0.1
.bss 205860 205860 0 0.0
.data 5848 5856 8 0.1
.text 1373812 1375308 1496 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179219 1178823 -396 -0.0
bss 141992 142000 8 0.0
rodata 150100 150032 -68 -0.0
text 808444 808104 -340 -0.0
p6 all-clusters-app default (read/write) 2526720 2527024 304 0.0
.bss 139248 139256 8 0.0
.data 2784 2792 8 0.3
.text 1484984 1485288 304 0.0
light-app default (read/write) 2418648 2418952 304 0.0
.bss 132720 132720 0 0.0
.data 2584 2592 8 0.3
.text 1376912 1377216 304 0.0
lock-app default (read/write) 2422744 2423032 288 0.0
.bss 132520 132528 8 0.0
.data 2544 2552 8 0.3
.text 1381008 1381296 288 0.0
telink lighting-app tlsr9518adk80d (read/write) 807484 807260 -224 -0.0
bss 75424 75432 8 0.0
noinit 40416 40416 0 0.0
text 571226 571052 -174 -0.0

@mlepage-google
Copy link
Contributor Author

Confirm that this work is done now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants