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

Store the updated fabric info when bringing up controller on existing fabric #18260

Merged
merged 1 commit into from
May 11, 2022

Conversation

bzbarsky-apple
Copy link
Contributor

Right now bringing up a controller on an existing fabric updates the in-memory fabric table but does not store the updated data.

This is not very consistent with our desire to not even keep the fabric table in memory, and leads to inconsistent behavior if someone later reloads the fabric table from storage in some way.

Specific changes:

  1. Change FabricInfo::SetFabricInfo to not modify any member state until
    validation of the incoming info is complete, so we won't corrupt an existing
    fabric due to mistaken input and leave it in a bad state.

  2. If updating the existing fabric in ProcessControllerNOCChain succeeds, store
    the updated fabric info. This is done outside the fabric table for now,
    pending changes to the fabric table to store things itself instead of keeping
    them in RAM.

Problem

See above.

Change overview

See above.

Testing

CI should cover this, but I will also be writing tests for some work I am doing right now on Darwin controller bring-up which will exercise this.

@github-actions
Copy link

github-actions bot commented May 10, 2022

PR #18260: Size comparison from 46ae442 to ba6b517

Increases (32 builds for cc13x2_26x2, cyw30739, efr32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 46ae442 ba6b517 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691047 691119 72 0.0
.text 587484 587556 72 0.0
lock-ftd LP_CC2652R7 (read only) 678555 678627 72 0.0
.text 583256 583328 72 0.0
lock-mtd LP_CC2652R7 (read only) 627315 627387 72 0.0
.text 532120 532192 72 0.0
pump-app LP_CC2652R7 (read only) 663067 663147 80 0.0
.text 581596 581676 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655967 656039 72 0.0
.text 571548 571620 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627618 627690 72 0.0
.app_xip_area 530208 530280 72 0.0
lock cyw930739m2evb_01 (read/write) 626538 626610 72 0.0
.app_xip_area 530584 530656 72 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575266 575338 72 0.0
.app_xip_area 469596 469668 72 0.0
efr32 lighting-app BRD4161A (read only) 910024 910088 64 0.0
.text 910016 910080 64 0.0
BRD4161A+rpc (read only) 944368 944432 64 0.0
.text 944360 944424 64 0.0
BRD4161A+rs911x (read only) 787620 787684 64 0.0
.text 787612 787676 64 0.0
lock-app BRD4161A+wf200 (read only) 946816 946896 80 0.0
.text 946808 946888 80 0.0
window-app BRD4161A (read only) 890328 890392 64 0.0
.text 890320 890384 64 0.0
k32w light k32w061+release (read/write) 685160 685240 80 0.0
.text 600188 600268 80 0.0
lock k32w061+release (read/write) 730540 730604 64 0.0
.text 645176 645240 64 0.0
linux all-clusters-app debug (read only) 2741785 2742041 256 0.0
.text 2329890 2330146 256 0.0
bridge-app debug+rpc (read only) 1895721 1895977 256 0.0
.text 1611202 1611458 256 0.0
chip-tool debug (read only) 9115125 9115525 400 0.0
.text 7319541 7319941 400 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 8934812 8935084 272 0.0
.text 7036740 7037012 272 0.0
lighting-app debug+rpc (read only) 2329737 2329993 256 0.0
.text 1977202 1977458 256 0.0
lock-app debug (read only) 2237185 2237441 256 0.0
.text 1881202 1881458 256 0.0
ota-provider-app debug (read only) 2065897 2066153 256 0.0
.text 1731458 1731714 256 0.0
ota-requestor-app debug (read only) 2097025 2097281 256 0.0
.text 1764802 1765058 256 0.0
shell debug (read only) 2566761 2567017 256 0.0
.text 2186514 2186770 256 0.0
thermostat-no-ble arm64 (read only) 2369476 2369652 176 0.0
.text 1992736 1992912 176 0.0
tv-app debug (read only) 2854033 2854433 400 0.0
.text 2452786 2453186 400 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2420140 2420204 64 0.0
.text 1382740 1382804 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179891 1179971 80 0.0
text 809864 809936 72 0.0
p6 all-clusters-app default (read/write) 2531560 2531624 64 0.0
.text 1489824 1489888 64 0.0
light-app default (read/write) 2421520 2421584 64 0.0
.text 1379784 1379848 64 0.0
lock-app default (read/write) 2431048 2431112 64 0.0
.text 1389312 1389376 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806140 806204 64 0.0
text 572520 572584 64 0.0
Decreases (4 builds for cc13x2_26x2)
platform target config section 46ae442 ba6b517 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 161304 161232 -72 -0.0
lock-ftd LP_CC2652R7 (read/write) 164900 164828 -72 -0.0
pump-app LP_CC2652R7 (read/write) 181676 181596 -80 -0.0
pump-controller-app LP_CC2652R7 (read/write) 188576 188504 -72 -0.0
Full report (32 builds for cc13x2_26x2, cyw30739, efr32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 46ae442 ba6b517 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691047 691119 72 0.0
(read/write) 161304 161232 -72 -0.0
.bss 75332 75332 0 0.0
.data 3412 3412 0 0.0
.rodata 103079 103079 0 0.0
.text 587484 587556 72 0.0
lock-ftd LP_CC2652R7 (read only) 678555 678627 72 0.0
(read/write) 164900 164828 -72 -0.0
.bss 73492 73492 0 0.0
.data 3236 3236 0 0.0
.rodata 94819 94819 0 0.0
.text 583256 583328 72 0.0
lock-mtd LP_CC2652R7 (read only) 627315 627387 72 0.0
(read/write) 146308 146308 0 0.0
.bss 69212 69212 0 0.0
.data 3236 3236 0 0.0
.rodata 94707 94707 0 0.0
.text 532120 532192 72 0.0
pump-app LP_CC2652R7 (read only) 663067 663147 80 0.0
(read/write) 181676 181596 -80 -0.0
.bss 73756 73756 0 0.0
.data 3268 3268 0 0.0
.rodata 80987 80987 0 0.0
.text 581596 581676 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655967 656039 72 0.0
(read/write) 188576 188504 -72 -0.0
.bss 73812 73812 0 0.0
.data 3232 3232 0 0.0
.rodata 83935 83935 0 0.0
.text 571548 571620 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627618 627690 72 0.0
.app_xip_area 530208 530280 72 0.0
.bss 80052 80052 0 0.0
.data 708 708 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 626538 626610 72 0.0
.app_xip_area 530584 530656 72 0.0
.bss 78628 78628 0 0.0
.data 672 672 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575266 575338 72 0.0
.app_xip_area 469596 469668 72 0.0
.bss 88048 88048 0 0.0
.data 584 584 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 910024 910088 64 0.0
(read/write) 134520 134520 0 0.0
.bss 132456 132456 0 0.0
.data 2064 2064 0 0.0
.text 910016 910080 64 0.0
BRD4161A+rpc (read only) 944368 944432 64 0.0
(read/write) 151208 151208 0 0.0
.bss 148936 148936 0 0.0
.data 2268 2268 0 0.0
.text 944360 944424 64 0.0
BRD4161A+rs911x (read only) 787620 787684 64 0.0
(read/write) 129776 129776 0 0.0
.bss 127708 127708 0 0.0
.data 2068 2068 0 0.0
.text 787612 787676 64 0.0
lock-app BRD4161A+wf200 (read only) 946816 946896 80 0.0
(read/write) 124268 124268 0 0.0
.bss 122244 122244 0 0.0
.data 2024 2024 0 0.0
.text 946808 946888 80 0.0
window-app BRD4161A (read only) 890328 890392 64 0.0
(read/write) 134472 134472 0 0.0
.bss 132416 132416 0 0.0
.data 2052 2052 0 0.0
.text 890320 890384 64 0.0
k32w light k32w061+release (read/write) 685160 685240 80 0.0
.bss 81248 81248 0 0.0
.data 2020 2020 0 0.0
.text 600188 600268 80 0.0
lock k32w061+release (read/write) 730540 730604 64 0.0
.bss 81680 81680 0 0.0
.data 1980 1980 0 0.0
.text 645176 645240 64 0.0
linux all-clusters-app debug (read only) 2741785 2742041 256 0.0
(read/write) 174520 174520 0 0.0
.bss 83904 83904 0 0.0
.data 2064 2064 0 0.0
.data.rel.ro 82440 82440 0 0.0
.dynamic 608 608 0 0.0
.got 4464 4464 0 0.0
.init 27 27 0 0.0
.init_array 1008 1008 0 0.0
.rodata 236357 236357 0 0.0
.text 2329890 2330146 256 0.0
bridge-app debug+rpc (read only) 1895721 1895977 256 0.0
(read/write) 121048 121048 0 0.0
.bss 71520 71520 0 0.0
.data 3488 3488 0 0.0
.data.rel.ro 40696 40696 0 0.0
.dynamic 592 592 0 0.0
.got 4032 4032 0 0.0
.init 27 27 0 0.0
.init_array 688 688 0 0.0
.rodata 161497 161497 0 0.0
.text 1611202 1611458 256 0.0
chip-tool debug (read only) 9115125 9115525 400 0.0
(read/write) 576944 576944 0 0.0
.bss 22816 22816 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 546728 546728 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 471765 471765 0 0.0
.text 7319541 7319941 400 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 8934812 8935084 272 0.0
(read/write) 643089 643089 0 0.0
.bss 41105 41105 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 582000 582000 0 0.0
.dynamic 560 560 0 0.0
.got 14976 14976 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 438812 438812 0 0.0
.text 7036740 7037012 272 0.0
lighting-app debug+rpc (read only) 2329737 2329993 256 0.0
(read/write) 151968 151968 0 0.0
.bss 73568 73568 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 70616 70616 0 0.0
.dynamic 608 608 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 792 792 0 0.0
.rodata 185657 185657 0 0.0
.text 1977202 1977458 256 0.0
lock-app debug (read only) 2237185 2237441 256 0.0
(read/write) 146552 146552 0 0.0
.bss 72192 72192 0 0.0
.data 1568 1568 0 0.0
.data.rel.ro 67128 67128 0 0.0
.dynamic 592 592 0 0.0
.got 4312 4312 0 0.0
.init 27 27 0 0.0
.init_array 752 752 0 0.0
.rodata 195433 195433 0 0.0
.text 1881202 1881458 256 0.0
ota-provider-app debug (read only) 2065897 2066153 256 0.0
(read/write) 139696 139696 0 0.0
.bss 71680 71680 0 0.0
.data 1736 1736 0 0.0
.data.rel.ro 60488 60488 0 0.0
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 648 648 0 0.0
.rodata 176403 176403 0 0.0
.text 1731458 1731714 256 0.0
ota-requestor-app debug (read only) 2097025 2097281 256 0.0
(read/write) 142504 142504 0 0.0
.bss 72320 72320 0 0.0
.data 1992 1992 0 0.0
.data.rel.ro 62552 62552 0 0.0
.dynamic 592 592 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 172700 172700 0 0.0
.text 1764802 1765058 256 0.0
shell debug (read only) 2566761 2567017 256 0.0
(read/write) 198224 198224 0 0.0
.bss 114408 114408 0 0.0
.data 1376 1376 0 0.0
.data.rel.ro 76704 76704 0 0.0
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 217810 217810 0 0.0
.text 2186514 2186770 256 0.0
thermostat-no-ble arm64 (read only) 2369476 2369652 176 0.0
(read/write) 175137 175137 0 0.0
.bss 86417 86417 0 0.0
.data 1520 1520 0 0.0
.data.rel.ro 79400 79400 0 0.0
.dynamic 560 560 0 0.0
.got 4768 4768 0 0.0
.init 24 24 0 0.0
.init_array 376 376 0 0.0
.rodata 146868 146868 0 0.0
.text 1992736 1992912 176 0.0
tv-app debug (read only) 2854033 2854433 400 0.0
(read/write) 277280 277280 0 0.0
.bss 189464 189464 0 0.0
.data 4672 4672 0 0.0
.data.rel.ro 76920 76920 0 0.0
.dynamic 592 592 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 218379 218379 0 0.0
.text 2452786 2453186 400 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2420140 2420204 64 0.0
.bss 205820 205820 0 0.0
.data 5872 5872 0 0.0
.text 1382740 1382804 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179891 1179971 80 0.0
bss 139680 139680 0 0.0
rodata 151636 151636 0 0.0
text 809864 809936 72 0.0
p6 all-clusters-app default (read/write) 2531560 2531624 64 0.0
.bss 139328 139328 0 0.0
.data 2808 2808 0 0.0
.text 1489824 1489888 64 0.0
light-app default (read/write) 2421520 2421584 64 0.0
.bss 132656 132656 0 0.0
.data 2608 2608 0 0.0
.text 1379784 1379848 64 0.0
lock-app default (read/write) 2431048 2431112 64 0.0
.bss 132472 132472 0 0.0
.data 2568 2568 0 0.0
.text 1389312 1389376 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806140 806204 64 0.0
bss 72176 72176 0 0.0
noinit 40416 40416 0 0.0
text 572520 572584 64 0.0

@github-actions
Copy link

github-actions bot commented May 10, 2022

PR #18260: Size comparison from 395375d to dfff0d7

Increases (27 builds for cc13x2_26x2, cyw30739, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 395375d dfff0d7 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691019 691091 72 0.0
.text 587452 587524 72 0.0
lock-ftd LP_CC2652R7 (read only) 678543 678615 72 0.0
.text 583240 583312 72 0.0
lock-mtd LP_CC2652R7 (read only) 627303 627375 72 0.0
.text 532104 532176 72 0.0
pump-app LP_CC2652R7 (read only) 663039 663119 80 0.0
.text 581564 581644 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655963 656035 72 0.0
.text 571540 571612 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627606 627678 72 0.0
.app_xip_area 530196 530268 72 0.0
lock cyw930739m2evb_01 (read/write) 626526 626598 72 0.0
.app_xip_area 530572 530644 72 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575278 575350 72 0.0
.app_xip_area 469608 469680 72 0.0
k32w light k32w061+release (read/write) 685148 685228 80 0.0
.text 600176 600256 80 0.0
lock k32w061+release (read/write) 730528 730592 64 0.0
.text 645164 645228 64 0.0
linux all-clusters-app debug (read only) 2741833 2742089 256 0.0
.text 2329890 2330146 256 0.0
bridge-app debug+rpc (read only) 1895897 1896153 256 0.0
.text 1611330 1611586 256 0.0
chip-tool debug (read only) 9115285 9115685 400 0.0
.text 7319653 7320053 400 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 8934892 8935164 272 0.0
.text 7036804 7037076 272 0.0
lighting-app debug+rpc (read only) 2329769 2330025 256 0.0
.text 1977186 1977442 256 0.0
lock-app debug (read only) 2237233 2237489 256 0.0
.text 1881202 1881458 256 0.0
ota-provider-app debug (read only) 2066057 2066313 256 0.0
.text 1731570 1731826 256 0.0
ota-requestor-app debug (read only) 2097185 2097441 256 0.0
.text 1764914 1765170 256 0.0
shell debug (read only) 2566809 2567065 256 0.0
.text 2186514 2186770 256 0.0
thermostat-no-ble arm64 (read only) 2369556 2369716 160 0.0
.text 1992800 1992960 160 0.0
tv-app debug (read only) 2854193 2854593 400 0.0
.text 2452898 2453298 400 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2419956 2420020 64 0.0
.text 1382556 1382620 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179879 1179943 64 0.0
text 809840 809912 72 0.0
p6 all-clusters-app default (read/write) 2531536 2531600 64 0.0
.text 1489800 1489864 64 0.0
light-app default (read/write) 2421496 2421560 64 0.0
.text 1379760 1379824 64 0.0
lock-app default (read/write) 2431040 2431104 64 0.0
.text 1389304 1389368 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806128 806192 64 0.0
text 572504 572568 64 0.0
Decreases (4 builds for cc13x2_26x2)
platform target config section 395375d dfff0d7 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 161332 161260 -72 -0.0
lock-ftd LP_CC2652R7 (read/write) 164912 164840 -72 -0.0
pump-app LP_CC2652R7 (read/write) 181704 181624 -80 -0.0
pump-controller-app LP_CC2652R7 (read/write) 188580 188508 -72 -0.0
Full report (27 builds for cc13x2_26x2, cyw30739, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 395375d dfff0d7 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691019 691091 72 0.0
(read/write) 161332 161260 -72 -0.0
.bss 75332 75332 0 0.0
.data 3412 3412 0 0.0
.rodata 103083 103083 0 0.0
.text 587452 587524 72 0.0
lock-ftd LP_CC2652R7 (read only) 678543 678615 72 0.0
(read/write) 164912 164840 -72 -0.0
.bss 73492 73492 0 0.0
.data 3236 3236 0 0.0
.rodata 94823 94823 0 0.0
.text 583240 583312 72 0.0
lock-mtd LP_CC2652R7 (read only) 627303 627375 72 0.0
(read/write) 146308 146308 0 0.0
.bss 69212 69212 0 0.0
.data 3236 3236 0 0.0
.rodata 94711 94711 0 0.0
.text 532104 532176 72 0.0
pump-app LP_CC2652R7 (read only) 663039 663119 80 0.0
(read/write) 181704 181624 -80 -0.0
.bss 73756 73756 0 0.0
.data 3268 3268 0 0.0
.rodata 80991 80991 0 0.0
.text 581564 581644 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655963 656035 72 0.0
(read/write) 188580 188508 -72 -0.0
.bss 73812 73812 0 0.0
.data 3232 3232 0 0.0
.rodata 83939 83939 0 0.0
.text 571540 571612 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627606 627678 72 0.0
.app_xip_area 530196 530268 72 0.0
.bss 80052 80052 0 0.0
.data 708 708 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 626526 626598 72 0.0
.app_xip_area 530572 530644 72 0.0
.bss 78628 78628 0 0.0
.data 672 672 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575278 575350 72 0.0
.app_xip_area 469608 469680 72 0.0
.bss 88048 88048 0 0.0
.data 584 584 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w light k32w061+release (read/write) 685148 685228 80 0.0
.bss 81248 81248 0 0.0
.data 2020 2020 0 0.0
.text 600176 600256 80 0.0
lock k32w061+release (read/write) 730528 730592 64 0.0
.bss 81680 81680 0 0.0
.data 1980 1980 0 0.0
.text 645164 645228 64 0.0
linux all-clusters-app debug (read only) 2741833 2742089 256 0.0
(read/write) 174552 174552 0 0.0
.bss 83904 83904 0 0.0
.data 2064 2064 0 0.0
.data.rel.ro 82456 82456 0 0.0
.dynamic 608 608 0 0.0
.got 4464 4464 0 0.0
.init 27 27 0 0.0
.init_array 1008 1008 0 0.0
.rodata 236357 236357 0 0.0
.text 2329890 2330146 256 0.0
bridge-app debug+rpc (read only) 1895897 1896153 256 0.0
(read/write) 121048 121048 0 0.0
.bss 71520 71520 0 0.0
.data 3488 3488 0 0.0
.data.rel.ro 40712 40712 0 0.0
.dynamic 592 592 0 0.0
.got 4032 4032 0 0.0
.init 27 27 0 0.0
.init_array 688 688 0 0.0
.rodata 161497 161497 0 0.0
.text 1611330 1611586 256 0.0
chip-tool debug (read only) 9115285 9115685 400 0.0
(read/write) 576976 576976 0 0.0
.bss 22816 22816 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 546752 546752 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 471765 471765 0 0.0
.text 7319653 7320053 400 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 8934892 8935164 272 0.0
(read/write) 643105 643105 0 0.0
.bss 41105 41105 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 582008 582008 0 0.0
.dynamic 560 560 0 0.0
.got 14976 14976 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 438812 438812 0 0.0
.text 7036804 7037076 272 0.0
lighting-app debug+rpc (read only) 2329769 2330025 256 0.0
(read/write) 152032 152032 0 0.0
.bss 73568 73568 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 70664 70664 0 0.0
.dynamic 608 608 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 792 792 0 0.0
.rodata 185657 185657 0 0.0
.text 1977186 1977442 256 0.0
lock-app debug (read only) 2237233 2237489 256 0.0
(read/write) 146584 146584 0 0.0
.bss 72192 72192 0 0.0
.data 1568 1568 0 0.0
.data.rel.ro 67160 67160 0 0.0
.dynamic 592 592 0 0.0
.got 4312 4312 0 0.0
.init 27 27 0 0.0
.init_array 752 752 0 0.0
.rodata 195433 195433 0 0.0
.text 1881202 1881458 256 0.0
ota-provider-app debug (read only) 2066057 2066313 256 0.0
(read/write) 139696 139696 0 0.0
.bss 71680 71680 0 0.0
.data 1736 1736 0 0.0
.data.rel.ro 60488 60488 0 0.0
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 648 648 0 0.0
.rodata 176403 176403 0 0.0
.text 1731570 1731826 256 0.0
ota-requestor-app debug (read only) 2097185 2097441 256 0.0
(read/write) 142536 142536 0 0.0
.bss 72320 72320 0 0.0
.data 1992 1992 0 0.0
.data.rel.ro 62584 62584 0 0.0
.dynamic 592 592 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 672 672 0 0.0
.rodata 172700 172700 0 0.0
.text 1764914 1765170 256 0.0
shell debug (read only) 2566809 2567065 256 0.0
(read/write) 198256 198256 0 0.0
.bss 114408 114408 0 0.0
.data 1376 1376 0 0.0
.data.rel.ro 76744 76744 0 0.0
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 217810 217810 0 0.0
.text 2186514 2186770 256 0.0
thermostat-no-ble arm64 (read only) 2369556 2369716 160 0.0
(read/write) 175153 175153 0 0.0
.bss 86417 86417 0 0.0
.data 1520 1520 0 0.0
.data.rel.ro 79408 79408 0 0.0
.dynamic 560 560 0 0.0
.got 4768 4768 0 0.0
.init 24 24 0 0.0
.init_array 376 376 0 0.0
.rodata 146868 146868 0 0.0
.text 1992800 1992960 160 0.0
tv-app debug (read only) 2854193 2854593 400 0.0
(read/write) 277312 277312 0 0.0
.bss 189464 189464 0 0.0
.data 4672 4672 0 0.0
.data.rel.ro 76928 76928 0 0.0
.dynamic 592 592 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 218379 218379 0 0.0
.text 2452898 2453298 400 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2419956 2420020 64 0.0
.bss 205820 205820 0 0.0
.data 5872 5872 0 0.0
.text 1382556 1382620 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179879 1179943 64 0.0
bss 139680 139680 0 0.0
rodata 151640 151640 0 0.0
text 809840 809912 72 0.0
p6 all-clusters-app default (read/write) 2531536 2531600 64 0.0
.bss 139328 139328 0 0.0
.data 2808 2808 0 0.0
.text 1489800 1489864 64 0.0
light-app default (read/write) 2421496 2421560 64 0.0
.bss 132656 132656 0 0.0
.data 2608 2608 0 0.0
.text 1379760 1379824 64 0.0
lock-app default (read/write) 2431040 2431104 64 0.0
.bss 132472 132472 0 0.0
.data 2568 2568 0 0.0
.text 1389304 1389368 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806128 806192 64 0.0
bss 72176 72176 0 0.0
noinit 40416 40416 0 0.0
text 572504 572568 64 0.0

@github-actions
Copy link

github-actions bot commented May 10, 2022

PR #18260: Size comparison from 837b939 to e1ae605

Increases (20 builds for cc13x2_26x2, cyw30739, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 837b939 e1ae605 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691019 691091 72 0.0
.text 587452 587524 72 0.0
lock-ftd LP_CC2652R7 (read only) 678543 678615 72 0.0
.text 583240 583312 72 0.0
lock-mtd LP_CC2652R7 (read only) 627303 627375 72 0.0
.text 532104 532176 72 0.0
pump-app LP_CC2652R7 (read only) 663039 663119 80 0.0
.text 581564 581644 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655963 656035 72 0.0
.text 571540 571612 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627606 627678 72 0.0
.app_xip_area 530196 530268 72 0.0
lock cyw930739m2evb_01 (read/write) 626526 626598 72 0.0
.app_xip_area 530572 530644 72 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575278 575350 72 0.0
.app_xip_area 469608 469680 72 0.0
esp32 all-clusters-app c3devkit (read only) 1001094 1001170 76 0.0
.flash.text 1001094 1001170 76 0.0
m5stack (read only) 1055947 1056039 92 0.0
.flash.text 1050563 1050655 92 0.0
k32w light k32w061+release (read/write) 685148 685228 80 0.0
.text 600176 600256 80 0.0
lock k32w061+release (read/write) 730528 730592 64 0.0
.text 645164 645228 64 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8934972 8935244 272 0.0
.text 7036884 7037156 272 0.0
thermostat-no-ble arm64 (read only) 2369556 2369716 160 0.0
.text 1992800 1992960 160 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2419956 2420020 64 0.0
.text 1382556 1382620 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179879 1179943 64 0.0
text 809840 809912 72 0.0
p6 all-clusters-app default (read/write) 2531536 2531600 64 0.0
.text 1489800 1489864 64 0.0
light-app default (read/write) 2421496 2421560 64 0.0
.text 1379760 1379824 64 0.0
lock-app default (read/write) 2431040 2431104 64 0.0
.text 1389304 1389368 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806128 806192 64 0.0
text 572504 572568 64 0.0
Decreases (4 builds for cc13x2_26x2)
platform target config section 837b939 e1ae605 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 161332 161260 -72 -0.0
lock-ftd LP_CC2652R7 (read/write) 164912 164840 -72 -0.0
pump-app LP_CC2652R7 (read/write) 181704 181624 -80 -0.0
pump-controller-app LP_CC2652R7 (read/write) 188580 188508 -72 -0.0
Full report (20 builds for cc13x2_26x2, cyw30739, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 837b939 e1ae605 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691019 691091 72 0.0
(read/write) 161332 161260 -72 -0.0
.bss 75332 75332 0 0.0
.data 3412 3412 0 0.0
.rodata 103083 103083 0 0.0
.text 587452 587524 72 0.0
lock-ftd LP_CC2652R7 (read only) 678543 678615 72 0.0
(read/write) 164912 164840 -72 -0.0
.bss 73492 73492 0 0.0
.data 3236 3236 0 0.0
.rodata 94823 94823 0 0.0
.text 583240 583312 72 0.0
lock-mtd LP_CC2652R7 (read only) 627303 627375 72 0.0
(read/write) 146308 146308 0 0.0
.bss 69212 69212 0 0.0
.data 3236 3236 0 0.0
.rodata 94711 94711 0 0.0
.text 532104 532176 72 0.0
pump-app LP_CC2652R7 (read only) 663039 663119 80 0.0
(read/write) 181704 181624 -80 -0.0
.bss 73756 73756 0 0.0
.data 3268 3268 0 0.0
.rodata 80991 80991 0 0.0
.text 581564 581644 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655963 656035 72 0.0
(read/write) 188580 188508 -72 -0.0
.bss 73812 73812 0 0.0
.data 3232 3232 0 0.0
.rodata 83939 83939 0 0.0
.text 571540 571612 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627606 627678 72 0.0
.app_xip_area 530196 530268 72 0.0
.bss 80052 80052 0 0.0
.data 708 708 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 626526 626598 72 0.0
.app_xip_area 530572 530644 72 0.0
.bss 78628 78628 0 0.0
.data 672 672 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575278 575350 72 0.0
.app_xip_area 469608 469680 72 0.0
.bss 88048 88048 0 0.0
.data 584 584 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
esp32 all-clusters-app c3devkit (read only) 1001094 1001170 76 0.0
(read/write) 1475770 1475770 0 0.0
.dram0.bss 68464 68464 0 0.0
.dram0.data 14444 14444 0 0.0
.flash.rodata 208416 208416 0 0.0
.flash.text 1001094 1001170 76 0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1055947 1056039 92 0.0
(read/write) 478184 478184 0 0.0
.dram0.bss 73984 73984 0 0.0
.dram0.data 34184 34184 0 0.0
.flash.rodata 238180 238180 0 0.0
.flash.text 1050563 1050655 92 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 685148 685228 80 0.0
.bss 81248 81248 0 0.0
.data 2020 2020 0 0.0
.text 600176 600256 80 0.0
lock k32w061+release (read/write) 730528 730592 64 0.0
.bss 81680 81680 0 0.0
.data 1980 1980 0 0.0
.text 645164 645228 64 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8934972 8935244 272 0.0
(read/write) 643105 643105 0 0.0
.bss 41105 41105 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 582008 582008 0 0.0
.dynamic 560 560 0 0.0
.got 14976 14976 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 438812 438812 0 0.0
.text 7036884 7037156 272 0.0
thermostat-no-ble arm64 (read only) 2369556 2369716 160 0.0
(read/write) 175153 175153 0 0.0
.bss 86417 86417 0 0.0
.data 1520 1520 0 0.0
.data.rel.ro 79408 79408 0 0.0
.dynamic 560 560 0 0.0
.got 4768 4768 0 0.0
.init 24 24 0 0.0
.init_array 376 376 0 0.0
.rodata 146868 146868 0 0.0
.text 1992800 1992960 160 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2419956 2420020 64 0.0
.bss 205820 205820 0 0.0
.data 5872 5872 0 0.0
.text 1382556 1382620 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179879 1179943 64 0.0
bss 139680 139680 0 0.0
rodata 151640 151640 0 0.0
text 809840 809912 72 0.0
p6 all-clusters-app default (read/write) 2531536 2531600 64 0.0
.bss 139328 139328 0 0.0
.data 2808 2808 0 0.0
.text 1489800 1489864 64 0.0
light-app default (read/write) 2421496 2421560 64 0.0
.bss 132656 132656 0 0.0
.data 2608 2608 0 0.0
.text 1379760 1379824 64 0.0
lock-app default (read/write) 2431040 2431104 64 0.0
.bss 132472 132472 0 0.0
.data 2568 2568 0 0.0
.text 1389304 1389368 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806128 806192 64 0.0
bss 72176 72176 0 0.0
noinit 40416 40416 0 0.0
text 572504 572568 64 0.0

@bzbarsky-apple
Copy link
Contributor Author

/rebase

… fabric.

Right now bringing up a controller on an existing fabric updates the
in-memory fabric table but does not store the updated data.

This is not very consistent with our desire to not even keep the
fabric table in memory, and leads to inconsistent behavior if someone
later reloads the fabric table from storage in some way.

Specific changes:

1. Change FabricInfo::SetFabricInfo to not modify any member state until
   validation of the incoming info is complete, so we won't corrupt an existing
   fabric due to mistaken input and leave it in a bad state.

2. If updating the existing fabric in ProcessControllerNOCChain succeeds, store
   the updated fabric info.  This is done outside the fabric table for now,
   pending changes to the fabric table to store things itself instead of keeping
   them in RAM.
@github-actions
Copy link

github-actions bot commented May 11, 2022

PR #18260: Size comparison from 582a3a2 to da79299

Increases (25 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 582a3a2 da79299 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691019 691091 72 0.0
.text 587452 587524 72 0.0
lock-ftd LP_CC2652R7 (read only) 678543 678615 72 0.0
.text 583240 583312 72 0.0
lock-mtd LP_CC2652R7 (read only) 627303 627375 72 0.0
.text 532104 532176 72 0.0
pump-app LP_CC2652R7 (read only) 663039 663119 80 0.0
.text 581564 581644 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655963 656035 72 0.0
.text 571540 571612 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627606 627678 72 0.0
.app_xip_area 530196 530268 72 0.0
lock cyw930739m2evb_01 (read/write) 626526 626598 72 0.0
.app_xip_area 530572 530644 72 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575278 575350 72 0.0
.app_xip_area 469608 469680 72 0.0
efr32 lighting-app BRD4161A (read only) 910000 910064 64 0.0
.text 909992 910056 64 0.0
BRD4161A+rpc (read only) 944344 944408 64 0.0
.text 944336 944400 64 0.0
BRD4161A+rs911x (read only) 787596 787660 64 0.0
.text 787588 787652 64 0.0
lock-app BRD4161A+wf200 (read only) 946804 946884 80 0.0
.text 946796 946876 80 0.0
window-app BRD4161A (read only) 890304 890368 64 0.0
.text 890296 890360 64 0.0
esp32 all-clusters-app c3devkit (read only) 1001094 1001170 76 0.0
.flash.text 1001094 1001170 76 0.0
m5stack (read only) 1055947 1056039 92 0.0
.flash.text 1050563 1050655 92 0.0
k32w light k32w061+release (read/write) 685148 685228 80 0.0
.text 600176 600256 80 0.0
lock k32w061+release (read/write) 730528 730592 64 0.0
.text 645164 645228 64 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8934972 8935244 272 0.0
.text 7036884 7037156 272 0.0
thermostat-no-ble arm64 (read only) 2369556 2369716 160 0.0
.text 1992800 1992960 160 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2419956 2420020 64 0.0
.text 1382556 1382620 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179879 1179943 64 0.0
text 809840 809912 72 0.0
p6 all-clusters-app default (read/write) 2531536 2531600 64 0.0
.text 1489800 1489864 64 0.0
light-app default (read/write) 2421496 2421560 64 0.0
.text 1379760 1379824 64 0.0
lock-app default (read/write) 2431040 2431104 64 0.0
.text 1389304 1389368 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806128 806192 64 0.0
text 572504 572568 64 0.0
Decreases (4 builds for cc13x2_26x2)
platform target config section 582a3a2 da79299 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 161332 161260 -72 -0.0
lock-ftd LP_CC2652R7 (read/write) 164912 164840 -72 -0.0
pump-app LP_CC2652R7 (read/write) 181704 181624 -80 -0.0
pump-controller-app LP_CC2652R7 (read/write) 188580 188508 -72 -0.0
Full report (25 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 582a3a2 da79299 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 691019 691091 72 0.0
(read/write) 161332 161260 -72 -0.0
.bss 75332 75332 0 0.0
.data 3412 3412 0 0.0
.rodata 103083 103083 0 0.0
.text 587452 587524 72 0.0
lock-ftd LP_CC2652R7 (read only) 678543 678615 72 0.0
(read/write) 164912 164840 -72 -0.0
.bss 73492 73492 0 0.0
.data 3236 3236 0 0.0
.rodata 94823 94823 0 0.0
.text 583240 583312 72 0.0
lock-mtd LP_CC2652R7 (read only) 627303 627375 72 0.0
(read/write) 146308 146308 0 0.0
.bss 69212 69212 0 0.0
.data 3236 3236 0 0.0
.rodata 94711 94711 0 0.0
.text 532104 532176 72 0.0
pump-app LP_CC2652R7 (read only) 663039 663119 80 0.0
(read/write) 181704 181624 -80 -0.0
.bss 73756 73756 0 0.0
.data 3268 3268 0 0.0
.rodata 80991 80991 0 0.0
.text 581564 581644 80 0.0
pump-controller-app LP_CC2652R7 (read only) 655963 656035 72 0.0
(read/write) 188580 188508 -72 -0.0
.bss 73812 73812 0 0.0
.data 3232 3232 0 0.0
.rodata 83939 83939 0 0.0
.text 571540 571612 72 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 627606 627678 72 0.0
.app_xip_area 530196 530268 72 0.0
.bss 80052 80052 0 0.0
.data 708 708 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 626526 626598 72 0.0
.app_xip_area 530572 530644 72 0.0
.bss 78628 78628 0 0.0
.data 672 672 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 575278 575350 72 0.0
.app_xip_area 469608 469680 72 0.0
.bss 88048 88048 0 0.0
.data 584 584 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 910000 910064 64 0.0
(read/write) 134520 134520 0 0.0
.bss 132456 132456 0 0.0
.data 2064 2064 0 0.0
.text 909992 910056 64 0.0
BRD4161A+rpc (read only) 944344 944408 64 0.0
(read/write) 151208 151208 0 0.0
.bss 148936 148936 0 0.0
.data 2268 2268 0 0.0
.text 944336 944400 64 0.0
BRD4161A+rs911x (read only) 787596 787660 64 0.0
(read/write) 129776 129776 0 0.0
.bss 127708 127708 0 0.0
.data 2068 2068 0 0.0
.text 787588 787652 64 0.0
lock-app BRD4161A+wf200 (read only) 946804 946884 80 0.0
(read/write) 124268 124268 0 0.0
.bss 122244 122244 0 0.0
.data 2024 2024 0 0.0
.text 946796 946876 80 0.0
window-app BRD4161A (read only) 890304 890368 64 0.0
(read/write) 134472 134472 0 0.0
.bss 132416 132416 0 0.0
.data 2052 2052 0 0.0
.text 890296 890360 64 0.0
esp32 all-clusters-app c3devkit (read only) 1001094 1001170 76 0.0
(read/write) 1475770 1475770 0 0.0
.dram0.bss 68464 68464 0 0.0
.dram0.data 14444 14444 0 0.0
.flash.rodata 208416 208416 0 0.0
.flash.text 1001094 1001170 76 0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1055947 1056039 92 0.0
(read/write) 478184 478184 0 0.0
.dram0.bss 73984 73984 0 0.0
.dram0.data 34184 34184 0 0.0
.flash.rodata 238180 238180 0 0.0
.flash.text 1050563 1050655 92 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 685148 685228 80 0.0
.bss 81248 81248 0 0.0
.data 2020 2020 0 0.0
.text 600176 600256 80 0.0
lock k32w061+release (read/write) 730528 730592 64 0.0
.bss 81680 81680 0 0.0
.data 1980 1980 0 0.0
.text 645164 645228 64 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8934972 8935244 272 0.0
(read/write) 643105 643105 0 0.0
.bss 41105 41105 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 582008 582008 0 0.0
.dynamic 560 560 0 0.0
.got 14976 14976 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 438812 438812 0 0.0
.text 7036884 7037156 272 0.0
thermostat-no-ble arm64 (read only) 2369556 2369716 160 0.0
(read/write) 175153 175153 0 0.0
.bss 86417 86417 0 0.0
.data 1520 1520 0 0.0
.data.rel.ro 79408 79408 0 0.0
.dynamic 560 560 0 0.0
.got 4768 4768 0 0.0
.init 24 24 0 0.0
.init_array 376 376 0 0.0
.rodata 146868 146868 0 0.0
.text 1992800 1992960 160 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2419956 2420020 64 0.0
.bss 205820 205820 0 0.0
.data 5872 5872 0 0.0
.text 1382556 1382620 64 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179879 1179943 64 0.0
bss 139680 139680 0 0.0
rodata 151640 151640 0 0.0
text 809840 809912 72 0.0
p6 all-clusters-app default (read/write) 2531536 2531600 64 0.0
.bss 139328 139328 0 0.0
.data 2808 2808 0 0.0
.text 1489800 1489864 64 0.0
light-app default (read/write) 2421496 2421560 64 0.0
.bss 132656 132656 0 0.0
.data 2608 2608 0 0.0
.text 1379760 1379824 64 0.0
lock-app default (read/write) 2431040 2431104 64 0.0
.bss 132472 132472 0 0.0
.data 2568 2568 0 0.0
.text 1389304 1389368 64 0.0
telink lighting-app tlsr9518adk80d (read/write) 806128 806192 64 0.0
bss 72176 72176 0 0.0
noinit 40416 40416 0 0.0
text 572504 572568 64 0.0

@andy31415 andy31415 merged commit e700c8e into project-chip:master May 11, 2022
@bzbarsky-apple bzbarsky-apple deleted the safer-fabric-update branch May 11, 2022 14:29
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.

4 participants