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

Add a watchdog timer to catch OTA process getting stuck #16542

Merged
merged 14 commits into from
Mar 25, 2022

Conversation

isiu-apple
Copy link
Contributor

@isiu-apple isiu-apple commented Mar 22, 2022

Problem

Currently, there is no failsafe check to ensure the OTA process doesn't get stuck in a bad state.

Fixes: #16462

Change overview

Trigger a 6 hour watchdog timer whenever OTA Requestor transitions from idle state to a non-idle state. When the watchdog timer expires and detects OTA process is still stuck in a non-idle state, cancel any pending download, reset it back to idle state and restart the 24 hour query image periodic timer.

Testing

  • Verified default query image process.
  • Temporarily reduced watchdog timer for testing, and verified watchdog timer catches OTA Requestor in a non-idle state when the timer expires, and resets OTA Requestor for the next periodic query update.

@github-actions
Copy link

github-actions bot commented Mar 23, 2022

PR #16542: Size comparison from b24efd9 to af0aa7f

Increases above 0.2%:

platform target config section b24efd9 af0aa7f change % change
cyw30739 light cyw930739m2evb_01 .data 596 604 8 1.3
lock cyw930739m2evb_01 .data 560 568 8 1.4
ota-requestor-no-progress-logging cyw930739m2evb_01 .data 500 508 8 1.6
efr32 lighting-app BRD4161A .data 1988 1996 8 0.4
BRD4161A+rpc .data 2168 2176 8 0.4
window-app BRD4161A .data 1864 1872 8 0.4
k32w light k32w061+release .data 1868 1876 8 0.4
lock k32w061+release .data 1908 1916 8 0.4
linux all-clusters-app debug .data 1264 1280 16 1.3
bridge-app debug+rpc .data 1952 1984 32 1.6
chip-tool debug .bss 22336 22400 64 0.3
.got 4784 4816 32 0.7
chip-tool-ipv6only arm64 .data 1128 1144 16 1.4
ota-requestor-app debug .data 1448 1480 32 2.2
shell debug .data 784 800 16 2.0
thermostat-no-ble arm64 .data 1024 1040 16 1.6
tv-app debug .data 3104 3136 32 1.0
p6 all-clusters-app default .data 2632 2640 8 0.3
light-app default .data 2488 2496 8 0.3
lock-app default .data 2448 2456 8 0.3
Increases (26 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6)
platform target config section b24efd9 af0aa7f change % change
cyw30739 light cyw930739m2evb_01 .data 596 604 8 1.3
lock cyw930739m2evb_01 .data 560 568 8 1.4
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 573358 573390 32 0.0
.app_xip_area 472336 472360 24 0.0
.data 500 508 8 1.6
efr32 lighting-app BRD4161A (read only) 922876 923268 392 0.0
(read/write) 128748 128764 16 0.0
.bss 126760 126768 8 0.0
.data 1988 1996 8 0.4
.text 922868 923260 392 0.0
BRD4161A+rpc (read only) 951708 952084 376 0.0
(read/write) 144704 144720 16 0.0
.bss 142536 142544 8 0.0
.data 2168 2176 8 0.4
.text 951700 952076 376 0.0
window-app BRD4161A (read only) 852672 852680 8 0.0
(read/write) 126720 126728 8 0.0
.data 1864 1872 8 0.4
.text 852664 852672 8 0.0
esp32 all-clusters-app c3devkit (read only) 964156 964186 30 0.0
(read/write) 1393714 1393842 128 0.0
.dram0.data 14188 14204 16 0.1
.flash.rodata 198536 198648 112 0.1
.flash.text 964156 964186 30 0.0
m5stack (read only) 1020691 1020723 32 0.0
(read/write) 461492 461620 128 0.0
.dram0.data 34016 34024 8 0.0
.flash.rodata 228040 228160 120 0.1
.flash.text 1015307 1015339 32 0.0
k32w light k32w061+release (read/write) 701652 701852 200 0.0
.data 1868 1876 8 0.4
.text 616336 616528 192 0.0
lock k32w061+release .data 1908 1916 8 0.4
linux all-clusters-app debug .data 1264 1280 16 1.3
.text 2102898 2103026 128 0.0
bridge-app debug+rpc .data 1952 1984 32 1.6
.text 1493589 1493621 32 0.0
chip-tool debug (read only) 10180709 10186893 6184 0.1
(read/write) 354976 355072 96 0.0
.bss 22336 22400 64 0.3
.got 4784 4816 32 0.7
.rodata 520213 520405 192 0.0
.text 8877653 8883301 5648 0.1
chip-tool-ipv6only arm64 (read only) 9799868 9806636 6768 0.1
(read/write) 473185 473297 112 0.0
.bss 40625 40673 48 0.1
.data 1128 1144 16 1.4
.data.rel.ro 371960 371968 8 0.0
.got 55680 55704 24 0.0
.rodata 495764 495780 16 0.0
.text 8251428 8258020 6592 0.1
door-lock-app debug (read only) 2005113 2005121 8 0.0
.text 1674466 1674578 112 0.0
lighting-app debug+rpc .text 1844578 1844610 32 0.0
ota-provider-app debug .text 1627794 1627826 32 0.0
ota-requestor-app debug (read only) 1973305 1974129 824 0.0
(read/write) 115784 115816 32 0.0
.data 1448 1480 32 2.2
.text 1657698 1658658 960 0.1
shell debug .data 784 800 16 2.0
.text 2061570 2061682 112 0.0
thermostat-no-ble arm64 .data 1024 1040 16 1.6
.text 1899600 1899776 176 0.0
tv-app debug .data 3104 3136 32 1.0
.text 2297218 2297250 32 0.0
mbed lock-app CY8CPROTO_062_4343W+release .data 5752 5760 8 0.1
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1139467 1139775 308 0.0
bss 142588 142596 8 0.0
rodata 141588 141616 28 0.0
text 780524 780668 144 0.0
p6 all-clusters-app default (read/write) 2493592 2493816 224 0.0
.data 2632 2640 8 0.3
.text 1451856 1452080 224 0.0
light-app default .data 2488 2496 8 0.3
lock-app default .data 2448 2456 8 0.3
Decreases (17 builds for cyw30739, k32w, linux, mbed, p6, telink)
platform target config section b24efd9 af0aa7f change % change
cyw30739 light cyw930739m2evb_01 (read/write) 603478 603334 -144 -0.0
.app_xip_area 510576 510424 -152 -0.0
lock cyw930739m2evb_01 (read/write) 561274 561122 -152 -0.0
.app_xip_area 469900 469740 -160 -0.0
k32w lock k32w061+release (read/write) 701088 700936 -152 -0.0
.text 615756 615596 -160 -0.0
linux all-clusters-app debug (read only) 2478313 2478273 -40 -0.0
(read/write) 143216 143184 -32 -0.0
.data.rel.ro 78904 78872 -32 -0.0
.rodata 211941 211845 -96 -0.0
bridge-app debug+rpc (read only) 1753357 1753061 -296 -0.0
.data.rel.ro 37944 37912 -32 -0.1
.rodata 144556 144300 -256 -0.2
chip-tool debug .data.rel.ro 325520 325496 -24 -0.0
door-lock-app debug (read/write) 116832 116800 -32 -0.0
.data.rel.ro 62856 62824 -32 -0.1
.rodata 180988 180956 -32 -0.0
lighting-app debug+rpc (read only) 2178761 2178497 -264 -0.0
(read/write) 123792 123760 -32 -0.0
.data.rel.ro 67928 67896 -32 -0.0
.rodata 175164 174940 -224 -0.1
ota-provider-app debug (read only) 1946497 1946169 -328 -0.0
(read/write) 112560 112528 -32 -0.0
.data.rel.ro 58200 58168 -32 -0.1
.rodata 166987 166699 -288 -0.2
ota-requestor-app debug .rodata 162980 162820 -160 -0.1
shell debug (read only) 2427657 2427633 -24 -0.0
(read/write) 147272 147240 -32 -0.0
.data.rel.ro 73536 73504 -32 -0.0
.rodata 209362 209298 -64 -0.0
thermostat-no-ble arm64 (read only) 2262692 2262588 -104 -0.0
(read/write) 148273 148257 -16 -0.0
.data.rel.ro 77000 76968 -32 -0.0
.rodata 139780 139564 -216 -0.2
tv-app debug (read only) 2679225 2678929 -296 -0.0
(read/write) 247744 247712 -32 -0.0
.data.rel.ro 74168 74104 -64 -0.1
.rodata 207157 206901 -256 -0.1
mbed lock-app CY8CPROTO_062_4343W+release (read/write) 2353636 2353428 -208 -0.0
.text 1316236 1316028 -208 -0.0
p6 light-app default (read/write) 2396776 2396752 -24 -0.0
.text 1355040 1355016 -24 -0.0
lock-app default (read/write) 2360312 2360288 -24 -0.0
.text 1318576 1318552 -24 -0.0
telink lighting-app tlsr9518adk80d (read/write) 896954 896794 -160 -0.0
text 634304 634212 -92 -0.0
Full report (27 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section b24efd9 af0aa7f change % change
cyw30739 light cyw930739m2evb_01 (read/write) 603478 603334 -144 -0.0
.app_xip_area 510576 510424 -152 -0.0
.bss 75656 75656 0 0.0
.data 596 604 8 1.3
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 561274 561122 -152 -0.0
.app_xip_area 469900 469740 -160 -0.0
.bss 74160 74160 0 0.0
.data 560 568 8 1.4
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 573358 573390 32 0.0
.app_xip_area 472336 472360 24 0.0
.bss 83488 83488 0 0.0
.data 500 508 8 1.6
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 922876 923268 392 0.0
(read/write) 128748 128764 16 0.0
.bss 126760 126768 8 0.0
.data 1988 1996 8 0.4
.text 922868 923260 392 0.0
BRD4161A+rpc (read only) 951708 952084 376 0.0
(read/write) 144704 144720 16 0.0
.bss 142536 142544 8 0.0
.data 2168 2176 8 0.4
.text 951700 952076 376 0.0
window-app BRD4161A (read only) 852672 852680 8 0.0
(read/write) 126720 126728 8 0.0
.bss 124856 124856 0 0.0
.data 1864 1872 8 0.4
.text 852664 852672 8 0.0
esp32 all-clusters-app c3devkit (read only) 964156 964186 30 0.0
(read/write) 1393714 1393842 128 0.0
.dram0.bss 62072 62072 0 0.0
.dram0.data 14188 14204 16 0.1
.flash.rodata 198536 198648 112 0.1
.flash.text 964156 964186 30 0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1020691 1020723 32 0.0
(read/write) 461492 461620 128 0.0
.dram0.bss 67600 67600 0 0.0
.dram0.data 34016 34024 8 0.0
.flash.rodata 228040 228160 120 0.1
.flash.text 1015307 1015339 32 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 701652 701852 200 0.0
.bss 77648 77648 0 0.0
.data 1868 1876 8 0.4
.text 616336 616528 192 0.0
lock k32w061+release (read/write) 701088 700936 -152 -0.0
.bss 77624 77624 0 0.0
.data 1908 1916 8 0.4
.text 615756 615596 -160 -0.0
linux all-clusters-app debug (read only) 2478313 2478273 -40 -0.0
(read/write) 143216 143184 -32 -0.0
.bss 57312 57312 0 0.0
.data 1264 1280 16 1.3
.data.rel.ro 78904 78872 -32 -0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 936 936 0 0.0
.rodata 211941 211845 -96 -0.0
.text 2102898 2103026 128 0.0
bridge-app debug+rpc (read only) 1753357 1753061 -296 -0.0
(read/write) 89424 89424 0 0.0
.bss 44456 44456 0 0.0
.data 1952 1984 32 1.6
.data.rel.ro 37944 37912 -32 -0.1
.dynamic 592 592 0 0.0
.got 3920 3920 0 0.0
.init 27 27 0 0.0
.init_array 544 544 0 0.0
.rodata 144556 144300 -256 -0.2
.text 1493589 1493621 32 0.0
chip-tool debug (read only) 10180709 10186893 6184 0.1
(read/write) 354976 355072 96 0.0
.bss 22336 22400 64 0.3
.data 1072 1072 0 0.0
.data.rel.ro 325520 325496 -24 -0.0
.dynamic 608 608 0 0.0
.got 4784 4816 32 0.7
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 520213 520405 192 0.0
.text 8877653 8883301 5648 0.1
chip-tool-ipv6only arm64 (read only) 9799868 9806636 6768 0.1
(read/write) 473185 473297 112 0.0
.bss 40625 40673 48 0.1
.data 1128 1144 16 1.4
.data.rel.ro 371960 371968 8 0.0
.dynamic 560 560 0 0.0
.got 55680 55704 24 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 495764 495780 16 0.0
.text 8251428 8258020 6592 0.1
door-lock-app debug (read only) 2005113 2005121 8 0.0
(read/write) 116832 116800 -32 -0.0
.bss 47584 47584 0 0.0
.data 992 992 0 0.0
.data.rel.ro 62856 62824 -32 -0.1
.dynamic 592 592 0 0.0
.got 4120 4120 0 0.0
.init 27 27 0 0.0
.init_array 664 664 0 0.0
.rodata 180988 180956 -32 -0.0
.text 1674466 1674578 112 0.0
lighting-app debug+rpc (read only) 2178761 2178497 -264 -0.0
(read/write) 123792 123760 -32 -0.0
.bss 48864 48864 0 0.0
.data 1472 1472 0 0.0
.data.rel.ro 67928 67896 -32 -0.0
.dynamic 608 608 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 744 744 0 0.0
.rodata 175164 174940 -224 -0.1
.text 1844578 1844610 32 0.0
ota-provider-app debug (read only) 1946497 1946169 -328 -0.0
(read/write) 112560 112528 -32 -0.0
.bss 47456 47456 0 0.0
.data 1256 1256 0 0.0
.data.rel.ro 58200 58168 -32 -0.1
.dynamic 608 608 0 0.0
.got 4376 4376 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 166987 166699 -288 -0.2
.text 1627794 1627826 32 0.0
ota-requestor-app debug (read only) 1973305 1974129 824 0.0
(read/write) 115784 115816 32 0.0
.bss 48448 48448 0 0.0
.data 1448 1480 32 2.2
.data.rel.ro 60424 60424 0 0.0
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 162980 162820 -160 -0.1
.text 1657698 1658658 960 0.1
shell debug (read only) 2427657 2427633 -24 -0.0
(read/write) 147272 147240 -32 -0.0
.bss 67240 67240 0 0.0
.data 784 800 16 2.0
.data.rel.ro 73536 73504 -32 -0.0
.dynamic 592 592 0 0.0
.got 4152 4152 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 209362 209298 -64 -0.0
.text 2061570 2061682 112 0.0
thermostat-no-ble arm64 (read only) 2262692 2262588 -104 -0.0
(read/write) 148273 148257 -16 -0.0
.bss 62753 62753 0 0.0
.data 1024 1040 16 1.6
.data.rel.ro 77000 76968 -32 -0.0
.dynamic 560 560 0 0.0
.got 4480 4480 0 0.0
.init 24 24 0 0.0
.init_array 360 360 0 0.0
.rodata 139780 139564 -216 -0.2
.text 1899600 1899776 176 0.0
tv-app debug (read only) 2679225 2678929 -296 -0.0
(read/write) 247744 247712 -32 -0.0
.bss 164416 164416 0 0.0
.data 3104 3136 32 1.0
.data.rel.ro 74168 74104 -64 -0.1
.dynamic 592 592 0 0.0
.got 4552 4552 0 0.0
.init 27 27 0 0.0
.init_array 888 888 0 0.0
.rodata 207157 206901 -256 -0.1
.text 2297218 2297250 32 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2353636 2353428 -208 -0.0
.bss 184652 184652 0 0.0
.data 5752 5760 8 0.1
.text 1316236 1316028 -208 -0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1139467 1139775 308 0.0
bss 142588 142596 8 0.0
rodata 141588 141616 28 0.0
text 780524 780668 144 0.0
p6 all-clusters-app default (read/write) 2493592 2493816 224 0.0
.bss 118072 118072 0 0.0
.data 2632 2640 8 0.3
.text 1451856 1452080 224 0.0
light-app default (read/write) 2396776 2396752 -24 -0.0
.bss 111544 111544 0 0.0
.data 2488 2496 8 0.3
.text 1355040 1355016 -24 -0.0
lock-app default (read/write) 2360312 2360288 -24 -0.0
.bss 111288 111288 0 0.0
.data 2448 2456 8 0.3
.text 1318576 1318552 -24 -0.0
telink lighting-app tlsr9518adk80d (read/write) 896954 896794 -160 -0.0
bss 87444 87444 0 0.0
noinit 37160 37160 0 0.0
text 634304 634212 -92 -0.0

- Remove HandleStateTransition() logic and move it back out to OTARequestor.
- Added HandleIdleStateExit() in OTARequestorDriver to start Watchdog timer.
- Removed StopSelectedtimer()
- Removed extra Reset() call.
- Spelling errors.
- Changed StartPeriodicQueryTimer() call to StartSelectedTimer(SelectedTimer::kPeriodicQueryTimer).
@github-actions
Copy link

github-actions bot commented Mar 24, 2022

PR #16542: Size comparison from 026e01d to 03ae043

Increases (5 builds for cyw30739, efr32, k32w, linux)
platform target config section 026e01d 03ae043 change % change
cyw30739 ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 573206 573390 184 0.0
.app_xip_area 472176 472360 184 0.0
efr32 lighting-app BRD4161A (read only) 922884 923284 400 0.0
(read/write) 128756 128764 8 0.0
.bss 126760 126768 8 0.0
.text 922876 923276 400 0.0
BRD4161A+rpc (read only) 951700 952092 392 0.0
(read/write) 144712 144720 8 0.0
.bss 142536 142544 8 0.0
.text 951692 952084 392 0.0
k32w light k32w061+release (read/write) 701500 701852 352 0.1
.text 616176 616528 352 0.1
linux ota-requestor-app debug (read only) 1972977 1974145 1168 0.1
(read/write) 115784 115816 32 0.0
.data.rel.ro 60392 60424 32 0.1
.rodata 162692 162820 128 0.1
.text 1657730 1658674 944 0.1
Full report (26 builds for cyw30739, efr32, esp32, k32w, linux, mbed, p6, telink)
platform target config section 026e01d 03ae043 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 603350 603350 0 0.0
.app_xip_area 510440 510440 0 0.0
.bss 75656 75656 0 0.0
.data 604 604 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 561138 561138 0 0.0
.app_xip_area 469756 469756 0 0.0
.bss 74160 74160 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 573206 573390 184 0.0
.app_xip_area 472176 472360 184 0.0
.bss 83488 83488 0 0.0
.data 508 508 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 922884 923284 400 0.0
(read/write) 128756 128764 8 0.0
.bss 126760 126768 8 0.0
.data 1996 1996 0 0.0
.text 922876 923276 400 0.0
BRD4161A+rpc (read only) 951700 952092 392 0.0
(read/write) 144712 144720 8 0.0
.bss 142536 142544 8 0.0
.data 2176 2176 0 0.0
.text 951692 952084 392 0.0
window-app BRD4161A (read only) 852680 852680 0 0.0
(read/write) 126728 126728 0 0.0
.bss 124856 124856 0 0.0
.data 1872 1872 0 0.0
.text 852672 852672 0 0.0
esp32 all-clusters-app c3devkit (read only) 964538 964538 0 0.0
(read/write) 1394106 1394106 0 0.0
.dram0.bss 62072 62072 0 0.0
.dram0.data 14212 14212 0 0.0
.flash.rodata 198896 198896 0 0.0
.flash.text 964538 964538 0 0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1021007 1021007 0 0.0
(read/write) 461868 461868 0 0.0
.dram0.bss 67600 67600 0 0.0
.dram0.data 34024 34024 0 0.0
.flash.rodata 228408 228408 0 0.0
.flash.text 1015623 1015623 0 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 701500 701852 352 0.1
.bss 77648 77648 0 0.0
.data 1876 1876 0 0.0
.text 616176 616528 352 0.1
lock k32w061+release (read/write) 700952 700952 0 0.0
.bss 77624 77624 0 0.0
.data 1916 1916 0 0.0
.text 615612 615612 0 0.0
linux all-clusters-app debug (read only) 2480393 2480393 0 0.0
(read/write) 143184 143184 0 0.0
.bss 57312 57312 0 0.0
.data 1280 1280 0 0.0
.data.rel.ro 78888 78888 0 0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 936 936 0 0.0
.rodata 212261 212261 0 0.0
.text 2104610 2104610 0 0.0
bridge-app debug+rpc (read only) 1753573 1753573 0 0.0
(read/write) 89424 89424 0 0.0
.bss 44456 44456 0 0.0
.data 1984 1984 0 0.0
.data.rel.ro 37912 37912 0 0.0
.dynamic 592 592 0 0.0
.got 3920 3920 0 0.0
.init 27 27 0 0.0
.init_array 544 544 0 0.0
.rodata 144300 144300 0 0.0
.text 1494133 1494133 0 0.0
chip-tool debug (read only) 10209933 10209933 0 0.0
(read/write) 355328 355328 0 0.0
.bss 22400 22400 0 0.0
.data 1072 1072 0 0.0
.data.rel.ro 325752 325752 0 0.0
.dynamic 608 608 0 0.0
.got 4816 4816 0 0.0
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 520885 520885 0 0.0
.text 8905237 8905237 0 0.0
chip-tool-ipv6only arm64 (read only) 9827484 9827484 0 0.0
(read/write) 473729 473729 0 0.0
.bss 40673 40673 0 0.0
.data 1144 1144 0 0.0
.data.rel.ro 372272 372272 0 0.0
.dynamic 560 560 0 0.0
.got 55840 55840 0 0.0
.init 24 24 0 0.0
.init_array 192 192 0 0.0
.rodata 496324 496324 0 0.0
.text 8277252 8277252 0 0.0
door-lock-app debug (read only) 2005121 2005121 0 0.0
(read/write) 116800 116800 0 0.0
.bss 47584 47584 0 0.0
.data 992 992 0 0.0
.data.rel.ro 62824 62824 0 0.0
.dynamic 592 592 0 0.0
.got 4120 4120 0 0.0
.init 27 27 0 0.0
.init_array 664 664 0 0.0
.rodata 180956 180956 0 0.0
.text 1674578 1674578 0 0.0
lighting-app debug+rpc (read only) 2179065 2179065 0 0.0
(read/write) 123760 123760 0 0.0
.bss 48864 48864 0 0.0
.data 1472 1472 0 0.0
.data.rel.ro 67896 67896 0 0.0
.dynamic 608 608 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 744 744 0 0.0
.rodata 174972 174972 0 0.0
.text 1845122 1845122 0 0.0
ota-provider-app debug (read only) 1946169 1946169 0 0.0
(read/write) 112528 112528 0 0.0
.bss 47456 47456 0 0.0
.data 1256 1256 0 0.0
.data.rel.ro 58168 58168 0 0.0
.dynamic 608 608 0 0.0
.got 4376 4376 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 166699 166699 0 0.0
.text 1627826 1627826 0 0.0
ota-requestor-app debug (read only) 1972977 1974145 1168 0.1
(read/write) 115784 115816 32 0.0
.bss 48448 48448 0 0.0
.data 1480 1480 0 0.0
.data.rel.ro 60392 60424 32 0.1
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 162692 162820 128 0.1
.text 1657730 1658674 944 0.1
shell debug (read only) 2429721 2429721 0 0.0
(read/write) 147272 147272 0 0.0
.bss 67240 67240 0 0.0
.data 800 800 0 0.0
.data.rel.ro 73536 73536 0 0.0
.dynamic 592 592 0 0.0
.got 4152 4152 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 209682 209682 0 0.0
.text 2063266 2063266 0 0.0
thermostat-no-ble arm64 (read only) 2262588 2262588 0 0.0
(read/write) 148257 148257 0 0.0
.bss 62753 62753 0 0.0
.data 1040 1040 0 0.0
.data.rel.ro 76968 76968 0 0.0
.dynamic 560 560 0 0.0
.got 4480 4480 0 0.0
.init 24 24 0 0.0
.init_array 360 360 0 0.0
.rodata 139564 139564 0 0.0
.text 1899776 1899776 0 0.0
tv-app debug (read only) 2679537 2679537 0 0.0
(read/write) 247712 247712 0 0.0
.bss 164416 164416 0 0.0
.data 3136 3136 0 0.0
.data.rel.ro 74104 74104 0 0.0
.dynamic 592 592 0 0.0
.got 4552 4552 0 0.0
.init 27 27 0 0.0
.init_array 888 888 0 0.0
.rodata 206901 206901 0 0.0
.text 2297858 2297858 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2353444 2353444 0 0.0
.bss 184652 184652 0 0.0
.data 5760 5760 0 0.0
.text 1316044 1316044 0 0.0
p6 all-clusters-app default (read/write) 2494400 2494400 0 0.0
.bss 118072 118072 0 0.0
.data 2640 2640 0 0.0
.text 1452664 1452664 0 0.0
light-app default (read/write) 2396768 2396768 0 0.0
.bss 111544 111544 0 0.0
.data 2496 2496 0 0.0
.text 1355032 1355032 0 0.0
lock-app default (read/write) 2360304 2360304 0 0.0
.bss 111288 111288 0 0.0
.data 2456 2456 0 0.0
.text 1318568 1318568 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 896806 896806 0 0.0
bss 87444 87444 0 0.0
noinit 37160 37160 0 0.0
text 634212 634212 0 0.0

- In WatchdogTimerHandler(), just cancel download and reset regardless of which state OTA-R is stuck in.
- In SendQueryImage(), remove duplicate call to StartSelectedTimer(SelectedTimer::kWatchdogTimer)
@carol-apple carol-apple merged commit 91f0c5a into project-chip:master Mar 25, 2022
rochaferraz pushed a commit to rochaferraz/connectedhomeip that referenced this pull request Mar 31, 2022
andrei-menzopol pushed a commit to andrei-menzopol/connectedhomeip that referenced this pull request Apr 14, 2022
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.

[ota-requestor] Add a watchdog timer to catch OTA process getting stuck
3 participants