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

Fix crashes when last controller is shut down while a PASE session is outstanding. #22282

Merged

Conversation

bzbarsky-apple
Copy link
Contributor

Commissioner shutdown shuts down the CASE sessions associated with the
commissioner, but not the PASE sessions. Those sessions then get shut down
much later in shutdown, at which point various objects that are needed to
handle the shutdown are no longer present.

The fix is to shut down PASE sessions when we destroy CommissioneeDeviceProxy
objects, and ensure that we always destroy CommissioneeDeviceProxy via
ReleaseCommissioneeDevice, so we don't end up with dangling pointers to the
objects.

Fixes #16440

Should vastly improve, if not completely fix,
#20880 which is a very common crash we are seeing.

Problem

Crashes during shutdown of the Matter stack.

Change overview

Clean up PASE sessions earlier in shutdown.

Testing

Should pass existing tests.

@andy31415
Copy link
Contributor

Acceptable for 1.0: fixing a crash

@github-actions
Copy link

github-actions bot commented Aug 30, 2022

PR #22282: Size comparison from bb1ebba to 10ef2d5

Increases (5 builds for cc13x2_26x2, efr32, esp32, linux)
platform target config section bb1ebba 10ef2d5 change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 167600 167608 8 0.0
efr32 lighting-app BRD4161A+rpc (read/write) 971636 971652 16 0.0
.text 818520 818536 16 0.0
esp32 all-clusters-app c3devkit (read only) 1033568 1033572 4 0.0
.flash.text 1033568 1033572 4 0.0
m5stack (read/write) 490772 490780 8 0.0
.flash.rodata 247344 247352 8 0.0
linux chip-tool-ipv6only arm64 (read only) 10290132 10290324 192 0.0
.text 8143012 8143220 208 0.0
Decreases (8 builds for bl602, cc13x2_26x2, linux, psoc6, telink)
platform target config section bb1ebba 10ef2d5 change % change
bl602 lighting-app bl602+rpc .text 1083564 1083560 -4 -0.0
cc13x2_26x2 lock-ftd LP_CC2652R7 (read only) 674103 674095 -8 -0.0
.text 596952 596944 -8 -0.0
linux chip-tool-ipv6only arm64 (read/write) 705233 705217 -16 -0.0
.got 13848 13840 -8 -0.1
psoc6 all-clusters cy8ckit_062s2_43012 .debug_info 26702034 26702033 -1 -0.0
all-clusters-minimal cy8ckit_062s2_43012 .debug_info 26438657 26438656 -1 -0.0
light cy8ckit_062s2_43012 .debug_info 21900939 21900938 -1 -0.0
telink light-switch-app tlsr9518adk80d text 571288 571286 -2 -0.0
lighting-app tlsr9518adk80d text 589400 589398 -2 -0.0
Full report (34 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section bb1ebba 10ef2d5 change % change
bl602 lighting-app bl602 (read/write) 1385142 1385142 0 0.0
.bss 120274 120274 0 0.0
.data 4488 4488 0 0.0
.text 1051548 1051548 0 0.0
bl602+rpc (read/write) 1431038 1431038 0 0.0
.bss 127706 127706 0 0.0
.data 4600 4600 0 0.0
.text 1083564 1083560 -4 -0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 673067 673067 0 0.0
(read/write) 178324 178324 0 0.0
.bss 74284 74284 0 0.0
.data 3372 3372 0 0.0
.rodata 88835 88835 0 0.0
.text 583916 583916 0 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 637763 637763 0 0.0
(read/write) 157844 157844 0 0.0
.bss 73556 73556 0 0.0
.data 3372 3372 0 0.0
.rodata 77979 77979 0 0.0
.text 559460 559460 0 0.0
lock-ftd LP_CC2652R7 (read only) 674103 674095 -8 -0.0
(read/write) 167600 167608 8 0.0
.bss 71484 71484 0 0.0
.data 3296 3296 0 0.0
.rodata 76671 76671 0 0.0
.text 596952 596944 -8 -0.0
lock-mtd LP_CC2652R7 (read only) 657043 657043 0 0.0
(read/write) 180348 180348 0 0.0
.bss 67172 67172 0 0.0
.data 3296 3296 0 0.0
.rodata 101883 101883 0 0.0
.text 554680 554680 0 0.0
pump-app LP_CC2652R7 (read only) 684835 684835 0 0.0
(read/write) 157572 157572 0 0.0
.bss 71420 71420 0 0.0
.data 3296 3296 0 0.0
.rodata 89947 89947 0 0.0
.text 594404 594404 0 0.0
pump-controller-app LP_CC2652R7 (read only) 669335 669335 0 0.0
(read/write) 173184 173184 0 0.0
.bss 71532 71532 0 0.0
.data 3292 3292 0 0.0
.rodata 85503 85503 0 0.0
.text 583352 583352 0 0.0
shell LP_CC2652R7 (read only) 665774 665774 0 0.0
(read/write) 181136 181136 0 0.0
.bss 76604 76604 0 0.0
.data 3376 3376 0 0.0
.rodata 85782 85782 0 0.0
.text 579676 579676 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 586770 586770 0 0.0
.app_xip_area 463428 463428 0 0.0
.bss 65776 65776 0 0.0
.data 744 744 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592522 592522 0 0.0
.app_xip_area 464396 464396 0 0.0
.bss 70560 70560 0 0.0
.data 748 748 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 599522 599522 0 0.0
.app_xip_area 476900 476900 0 0.0
.bss 65088 65088 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read/write) 1107648 1107648 0 0.0
.bss 136332 136332 0 0.0
.data 2072 2072 0 0.0
.text 969224 969224 0 0.0
BRD4161A+rpc (read/write) 971636 971652 16 0.0
.bss 150844 150844 0 0.0
.data 2252 2252 0 0.0
.text 818520 818536 16 0.0
BRD4161A+rs911x (read/write) 1001368 1001368 0 0.0
.bss 169088 169088 0 0.0
.data 2064 2064 0 0.0
.text 830196 830196 0 0.0
lock-app BRD4161A+wf200 (read/write) 1149812 1149812 0 0.0
.bss 152168 152168 0 0.0
.data 2072 2072 0 0.0
.text 995552 995552 0 0.0
window-app BRD4161A (read/write) 1098904 1098904 0 0.0
.bss 137772 137772 0 0.0
.data 2096 2096 0 0.0
.text 959016 959016 0 0.0
esp32 all-clusters-app c3devkit (read only) 1033568 1033572 4 0.0
(read/write) 1493486 1493486 0 0.0
.dram0.bss 71088 71088 0 0.0
.dram0.data 13696 13696 0 0.0
.flash.rodata 218032 218032 0 0.0
.flash.text 1033568 1033572 4 0.0
.iram0.text 65160 65160 0 0.0
m5stack (read only) 1085911 1085911 0 0.0
(read/write) 490772 490780 8 0.0
.dram0.bss 76608 76608 0 0.0
.dram0.data 34152 34152 0 0.0
.flash.rodata 247344 247352 8 0.0
.flash.text 1080527 1080527 0 0.0
.iram0.text 123939 123939 0 0.0
k32w light k32w0+release (read/write) 647372 647372 0 0.0
.bss 70424 70424 0 0.0
.data 2068 2068 0 0.0
.text 572152 572152 0 0.0
lock k32w0+release (read/write) 704368 704368 0 0.0
.bss 70864 70864 0 0.0
.data 2076 2076 0 0.0
.text 628700 628700 0 0.0
linux chip-tool-ipv6only arm64 (read only) 10290132 10290324 192 0.0
(read/write) 705233 705217 -16 -0.0
.bss 33297 33297 0 0.0
.data 3280 3280 0 0.0
.data.rel.ro 649832 649832 0 0.0
.dynamic 560 560 0 0.0
.got 13848 13840 -8 -0.1
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 494660 494660 0 0.0
.text 8143012 8143220 208 0.0
thermostat-no-ble arm64 (read only) 2361924 2361924 0 0.0
(read/write) 141857 141857 0 0.0
.bss 55233 55233 0 0.0
.data 1680 1680 0 0.0
.data.rel.ro 76112 76112 0 0.0
.dynamic 560 560 0 0.0
.got 5056 5056 0 0.0
.init 24 24 0 0.0
.init_array 416 416 0 0.0
.rodata 141276 141276 0 0.0
.text 1982608 1982608 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2454936 2454936 0 0.0
.bss 215044 215044 0 0.0
.data 5872 5872 0 0.0
.text 1417580 1417580 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1180771 1180771 0 0.0
bss 143641 143641 0 0.0
rodata 143380 143380 0 0.0
text 814808 814808 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1159951 1159951 0 0.0
bss 142868 142868 0 0.0
rodata 134968 134968 0 0.0
text 803200 803200 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 (read only) 842216 842216 0 0.0
(read/write) 1741844 1741844 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188464 188464 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1221363 1221363 0 0.0
.debug_aranges 111712 111712 0 0.0
.debug_frame 372900 372900 0 0.0
.debug_info 26702034 26702033 -1 -0.0
.debug_line 3655272 3655272 0 0.0
.debug_loc 3568919 3568919 0 0.0
.debug_ranges 337600 337600 0 0.0
.debug_str 3426853 3426853 0 0.0
.heap 842216 842216 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 570576 570576 0 0.0
.symtab 421488 421488 0 0.0
.text 0 0 0 0.0
1542328 1542328 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 (read only) 842952 842952 0 0.0
(read/write) 1685012 1685012 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187728 187728 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1213202 1213202 0 0.0
.debug_aranges 111184 111184 0 0.0
.debug_frame 375980 375980 0 0.0
.debug_info 26438657 26438656 -1 -0.0
.debug_line 3675788 3675788 0 0.0
.debug_loc 3556556 3556556 0 0.0
.debug_ranges 336216 336216 0 0.0
.debug_str 3415858 3415858 0 0.0
.heap 842952 842952 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 535050 535050 0 0.0
.symtab 408080 408080 0 0.0
.text 1486232 1486232 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
light cy8ckit_062s2_43012 (read only) 851184 851184 0 0.0
(read/write) 1602300 1602300 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179704 179704 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1048021 1048021 0 0.0
.debug_aranges 103360 103360 0 0.0
.debug_frame 346248 346248 0 0.0
.debug_info 21900939 21900938 -1 -0.0
.debug_line 3246253 3246253 0 0.0
.debug_loc 3254895 3254895 0 0.0
.debug_ranges 301688 301688 0 0.0
.debug_str 3221078 3221078 0 0.0
.heap 851184 851184 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 468349 468349 0 0.0
.symtab 375168 375168 0 0.0
.text 1411752 1411752 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
lock cy8ckit_062s2_43012 (read only) 846152 846152 0 0.0
(read/write) 1639988 1639988 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184720 184720 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1055456 1055456 0 0.0
.debug_aranges 104032 104032 0 0.0
.debug_frame 349076 349076 0 0.0
.debug_info 22280686 22280686 0 0.0
.debug_line 3255074 3255074 0 0.0
.debug_loc 3294764 3294764 0 0.0
.debug_ranges 305032 305032 0 0.0
.debug_str 3248499 3248499 0 0.0
.heap 846152 846152 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 474564 474564 0 0.0
.symtab 378352 378352 0 0.0
.text 1444408 1444408 0 0.0
.zero.table 0 0 0 0.0
8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1129028 1129028 0 0.0
.bss 106112 106112 0 0.0
.data 1028 1028 0 0.0
.text 576124 576124 0 0.0
lock-app qpg6105+debug (read/write) 1100032 1100032 0 0.0
.bss 102344 102344 0 0.0
.data 1032 1032 0 0.0
.text 547132 547132 0 0.0
telink light-switch-app tlsr9518adk80d (read/write) 808688 808688 0 0.0
bss 71344 71344 0 0.0
noinit 43488 43488 0 0.0
text 571288 571286 -2 -0.0
lighting-app tlsr9518adk80d (read/write) 830588 830588 0 0.0
bss 72200 72200 0 0.0
noinit 43488 43488 0 0.0
text 589400 589398 -2 -0.0

… outstanding.

Commissioner shutdown shuts down the CASE sessions associated with the
commissioner, but not the PASE sessions.  Those sessions then get shut down
much later in shutdown, at which point various objects that are needed to
handle the shutdown are no longer present.

The fix is to shut down PASE sessions when we destroy CommissioneeDeviceProxy
objects, and ensure that we always destroy CommissioneeDeviceProxy via
ReleaseCommissioneeDevice, so we don't end up with dangling pointers to the
objects.

Fixes project-chip#16440

Should vastly improve, if not completely fix,
project-chip#20880
@github-actions
Copy link

github-actions bot commented Aug 31, 2022

PR #22282: Size comparison from 08830a5 to 11830ff

Increases (5 builds for bl602, cc13x2_26x2, linux, telink)
platform target config section 08830a5 11830ff change % change
bl602 lighting-app bl602 (read/write) 1385478 1385486 8 0.0
.text 1051860 1051864 4 0.0
bl602+rpc (read/write) 1431126 1431134 8 0.0
.text 1083620 1083624 4 0.0
cc13x2_26x2 lock-ftd LP_CC2652R7 (read/write) 165612 165620 8 0.0
linux chip-tool-ipv6only arm64 (read only) 10291012 10291204 192 0.0
.text 8143828 8144036 208 0.0
telink lighting-app tlsr9518adk80d text 589398 589400 2 0.0
Decreases (5 builds for cc13x2_26x2, esp32, linux, psoc6)
platform target config section 08830a5 11830ff change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read only) 676107 676099 -8 -0.0
.text 598552 598544 -8 -0.0
esp32 all-clusters-app c3devkit (read only) 1033704 1033702 -2 -0.0
.flash.text 1033704 1033702 -2 -0.0
m5stack (read/write) 490812 490804 -8 -0.0
.flash.rodata 247352 247344 -8 -0.0
linux chip-tool-ipv6only arm64 (read/write) 705233 705217 -16 -0.0
.got 13848 13840 -8 -0.1
psoc6 all-clusters cy8ckit_062s2_43012 .debug_info 26708242 26708241 -1 -0.0
Full report (34 builds for bl602, cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, psoc6, qpg, telink)
platform target config section 08830a5 11830ff change % change
bl602 lighting-app bl602 (read/write) 1385478 1385486 8 0.0
.bss 120298 120298 0 0.0
.data 4488 4488 0 0.0
.text 1051860 1051864 4 0.0
bl602+rpc (read/write) 1431126 1431134 8 0.0
.bss 127730 127730 0 0.0
.data 4600 4600 0 0.0
.text 1083620 1083624 4 0.0
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 675055 675055 0 0.0
(read/write) 176352 176352 0 0.0
.bss 74300 74300 0 0.0
.data 3380 3380 0 0.0
.rodata 89231 89231 0 0.0
.text 585512 585512 0 0.0
all-clusters-minimal-app LP_CC2652R7 (read only) 639759 639759 0 0.0
(read/write) 157868 157868 0 0.0
.bss 73572 73572 0 0.0
.data 3380 3380 0 0.0
.rodata 78375 78375 0 0.0
.text 561064 561064 0 0.0
lock-ftd LP_CC2652R7 (read only) 676107 676099 -8 -0.0
(read/write) 165612 165620 8 0.0
.bss 71500 71500 0 0.0
.data 3304 3304 0 0.0
.rodata 77075 77075 0 0.0
.text 598552 598544 -8 -0.0
lock-mtd LP_CC2652R7 (read only) 659091 659091 0 0.0
(read/write) 178316 178316 0 0.0
.bss 67188 67188 0 0.0
.data 3304 3304 0 0.0
.rodata 102339 102339 0 0.0
.text 556272 556272 0 0.0
pump-app LP_CC2652R7 (read only) 684927 684927 0 0.0
(read/write) 157496 157496 0 0.0
.bss 71436 71436 0 0.0
.data 3296 3296 0 0.0
.rodata 89951 89951 0 0.0
.text 594492 594492 0 0.0
pump-controller-app LP_CC2652R7 (read only) 669427 669427 0 0.0
(read/write) 173108 173108 0 0.0
.bss 71548 71548 0 0.0
.data 3292 3292 0 0.0
.rodata 85507 85507 0 0.0
.text 583440 583440 0 0.0
shell LP_CC2652R7 (read only) 665866 665866 0 0.0
(read/write) 181060 181060 0 0.0
.bss 76620 76620 0 0.0
.data 3376 3376 0 0.0
.rodata 85786 85786 0 0.0
.text 579764 579764 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 586770 586770 0 0.0
.app_xip_area 463428 463428 0 0.0
.bss 65776 65776 0 0.0
.data 744 744 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
lock cyw930739m2evb_01 (read/write) 592522 592522 0 0.0
.app_xip_area 464396 464396 0 0.0
.bss 70560 70560 0 0.0
.data 748 748 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 599522 599522 0 0.0
.app_xip_area 476900 476900 0 0.0
.bss 65088 65088 0 0.0
.data 716 716 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read/write) 1107648 1107648 0 0.0
.bss 136332 136332 0 0.0
.data 2072 2072 0 0.0
.text 969224 969224 0 0.0
BRD4161A+rpc (read/write) 971652 971652 0 0.0
.bss 150844 150844 0 0.0
.data 2252 2252 0 0.0
.text 818536 818536 0 0.0
BRD4161A+rs911x (read/write) 1001548 1001548 0 0.0
.bss 169168 169168 0 0.0
.data 2064 2064 0 0.0
.text 830296 830296 0 0.0
lock-app BRD4161A+wf200 (read/write) 1149976 1149976 0 0.0
.bss 152248 152248 0 0.0
.data 2072 2072 0 0.0
.text 995636 995636 0 0.0
window-app BRD4161A (read/write) 1098904 1098904 0 0.0
.bss 137772 137772 0 0.0
.data 2096 2096 0 0.0
.text 959016 959016 0 0.0
esp32 all-clusters-app c3devkit (read only) 1033704 1033702 -2 -0.0
(read/write) 1493526 1493526 0 0.0
.dram0.bss 71120 71120 0 0.0
.dram0.data 13696 13696 0 0.0
.flash.rodata 218040 218040 0 0.0
.flash.text 1033704 1033702 -2 -0.0
.iram0.text 65204 65204 0 0.0
m5stack (read only) 1086059 1086059 0 0.0
(read/write) 490812 490804 -8 -0.0
.dram0.bss 76640 76640 0 0.0
.dram0.data 34152 34152 0 0.0
.flash.rodata 247352 247344 -8 -0.0
.flash.text 1080675 1080675 0 0.0
.iram0.text 123939 123939 0 0.0
k32w light k32w0+release (read/write) 648060 648060 0 0.0
.bss 70712 70712 0 0.0
.data 2068 2068 0 0.0
.text 572552 572552 0 0.0
lock k32w0+release (read/write) 705064 705064 0 0.0
.bss 71160 71160 0 0.0
.data 2076 2076 0 0.0
.text 629100 629100 0 0.0
linux chip-tool-ipv6only arm64 (read only) 10291012 10291204 192 0.0
(read/write) 705233 705217 -16 -0.0
.bss 33297 33297 0 0.0
.data 3280 3280 0 0.0
.data.rel.ro 649832 649832 0 0.0
.dynamic 560 560 0 0.0
.got 13848 13840 -8 -0.1
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 494724 494724 0 0.0
.text 8143828 8144036 208 0.0
thermostat-no-ble arm64 (read only) 2361924 2361924 0 0.0
(read/write) 141857 141857 0 0.0
.bss 55233 55233 0 0.0
.data 1680 1680 0 0.0
.data.rel.ro 76112 76112 0 0.0
.dynamic 560 560 0 0.0
.got 5056 5056 0 0.0
.init 24 24 0 0.0
.init_array 416 416 0 0.0
.rodata 141276 141276 0 0.0
.text 1982608 1982608 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2454936 2454936 0 0.0
.bss 215044 215044 0 0.0
.data 5872 5872 0 0.0
.text 1417580 1417580 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1180771 1180771 0 0.0
bss 143641 143641 0 0.0
rodata 143380 143380 0 0.0
text 814808 814808 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 (read/write) 1159951 1159951 0 0.0
bss 142868 142868 0 0.0
rodata 134968 134968 0 0.0
text 803200 803200 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 0 0 0 0.0
(read only) 841960 841960 0 0.0
(read/write) 1742204 1742204 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 188720 188720 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1221468 1221468 0 0.0
.debug_aranges 111712 111712 0 0.0
.debug_frame 372900 372900 0 0.0
.debug_info 26708242 26708241 -1 -0.0
.debug_line 3655437 3655437 0 0.0
.debug_loc 3569448 3569448 0 0.0
.debug_ranges 337616 337616 0 0.0
.debug_str 3426920 3426920 0 0.0
.heap 841960 841960 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 570576 570576 0 0.0
.symtab 421488 421488 0 0.0
.text 1542432 1542432 0 0.0
.zero.table 8 8 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 0 0 0 0.0
(read only) 842696 842696 0 0.0
(read/write) 1685372 1685372 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 187984 187984 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2664 2664 0 0.0
.debug_abbrev 1213307 1213307 0 0.0
.debug_aranges 111184 111184 0 0.0
.debug_frame 375980 375980 0 0.0
.debug_info 26444865 26444865 0 0.0
.debug_line 3675953 3675953 0 0.0
.debug_loc 3557085 3557085 0 0.0
.debug_ranges 336232 336232 0 0.0
.debug_str 3415925 3415925 0 0.0
.heap 842696 842696 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 535050 535050 0 0.0
.symtab 408080 408080 0 0.0
.text 1486336 1486336 0 0.0
.zero.table 8 8 0 0.0
light cy8ckit_062s2_43012 0 0 0 0.0
(read only) 850928 850928 0 0.0
(read/write) 1602652 1602652 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 179960 179960 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2456 2456 0 0.0
.debug_abbrev 1048126 1048126 0 0.0
.debug_aranges 103360 103360 0 0.0
.debug_frame 346248 346248 0 0.0
.debug_info 21907146 21907146 0 0.0
.debug_line 3246418 3246418 0 0.0
.debug_loc 3255412 3255412 0 0.0
.debug_ranges 301704 301704 0 0.0
.debug_str 3221145 3221145 0 0.0
.heap 850928 850928 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 468349 468349 0 0.0
.symtab 375168 375168 0 0.0
.text 1411848 1411848 0 0.0
.zero.table 8 8 0 0.0
lock cy8ckit_062s2_43012 0 0 0 0.0
(read only) 845896 845896 0 0.0
(read/write) 1640348 1640348 0 0.0
.ARM.attributes 46 46 0 0.0
.ARM.exidx 8 8 0 0.0
.bss 184976 184976 0 0.0
.comment 204 204 0 0.0
.copy.table 24 24 0 0.0
.cy_m0p_image 6216 6216 0 0.0
.cy_sharedmem 8 8 0 0.0
.data 2472 2472 0 0.0
.debug_abbrev 1055561 1055561 0 0.0
.debug_aranges 104032 104032 0 0.0
.debug_frame 349076 349076 0 0.0
.debug_info 22286893 22286893 0 0.0
.debug_line 3255239 3255239 0 0.0
.debug_loc 3295280 3295280 0 0.0
.debug_ranges 305048 305048 0 0.0
.debug_str 3248566 3248566 0 0.0
.heap 845896 845896 0 0.0
.noinit 148 148 0 0.0
.ramVectors 736 736 0 0.0
.shstrtab 288 288 0 0.0
.stab 156 156 0 0.0
.stabstr 335 335 0 0.0
.stack_dummy 4096 4096 0 0.0
.strtab 474564 474564 0 0.0
.symtab 378352 378352 0 0.0
.text 1444512 1444512 0 0.0
.zero.table 8 8 0 0.0
qpg lighting-app qpg6105+debug (read/write) 1129028 1129028 0 0.0
.bss 106112 106112 0 0.0
.data 1028 1028 0 0.0
.text 576124 576124 0 0.0
lock-app qpg6105+debug (read/write) 1100032 1100032 0 0.0
.bss 102344 102344 0 0.0
.data 1032 1032 0 0.0
.text 547132 547132 0 0.0
telink light-switch-app tlsr9518adk80d (read/write) 808688 808688 0 0.0
bss 71344 71344 0 0.0
noinit 43488 43488 0 0.0
text 571288 571288 0 0.0
lighting-app tlsr9518adk80d (read/write) 830588 830588 0 0.0
bss 72200 72200 0 0.0
noinit 43488 43488 0 0.0
text 589398 589400 2 0.0

isiu-apple pushed a commit to isiu-apple/connectedhomeip that referenced this pull request Sep 16, 2022
… outstanding. (project-chip#22282)

Commissioner shutdown shuts down the CASE sessions associated with the
commissioner, but not the PASE sessions.  Those sessions then get shut down
much later in shutdown, at which point various objects that are needed to
handle the shutdown are no longer present.

The fix is to shut down PASE sessions when we destroy CommissioneeDeviceProxy
objects, and ensure that we always destroy CommissioneeDeviceProxy via
ReleaseCommissioneeDevice, so we don't end up with dangling pointers to the
objects.

Fixes project-chip#16440

Should vastly improve, if not completely fix,
project-chip#20880
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.

Fix CommissioneeDeviceProxy destructor to close session.
5 participants