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 issues with Shell app example #11346

Merged
merged 4 commits into from
Nov 4, 2021

Conversation

jmartinez-silabs
Copy link
Member

@jmartinez-silabs jmartinez-silabs commented Nov 2, 2021

Problem

Shell example fails to build for EFR32 platform
shell dns resolve command fails to complete.

Change overview

CHIPError type changed quite a while ago and its use wasn't changed on efr shell example. Update that
Enable Thread dns client for EFR32 platform
Fix a Deadlock in the thread dns resolve as the callback was waiting on a semaphore owned by the thread task calling the callback
Fix other potential deadlocks if error would occur calling some thread apis

edit:
Removed the lock for OnDnsBrowseResult which was causing the same deadlock. Validated that it works with dns browse commissionable which also made me catch a task overflow in the EFR32. fixed that also.

Testing

build shell example for EFR32
Publish a matter service with avahi
on matter shell, dns resolve the service successfully

@github-actions
Copy link

github-actions bot commented Nov 3, 2021

PR #11346: Size comparison from cb7c854 to ca496f8

Increases above 0.2%:

platform target config section cb7c854 ca496f8 change % change
efr32 lighting-app BRD4161A (read only) 737128 745852 8724 1.2
.data 1756 1772 16 0.9
.text 737120 745844 8724 1.2
BRD4161A+rpc (read only) 724552 731676 7124 1.0
.data 1856 1872 16 0.9
.text 724544 731668 7124 1.0
lock-app BRD4161A (read only) 716392 725132 8740 1.2
.data 1716 1732 16 0.9
.text 716384 725124 8740 1.2
window-app BRD4161A (read only) 717308 726032 8724 1.2
.data 1720 1736 16 0.9
.text 717300 726024 8724 1.2
Increases (4 builds for efr32)
platform target config section cb7c854 ca496f8 change % change
efr32 lighting-app BRD4161A (read only) 737128 745852 8724 1.2
(read/write) 114620 114744 124 0.1
.bss 112860 112972 112 0.1
.data 1756 1772 16 0.9
.text 737120 745844 8724 1.2
BRD4161A+rpc (read only) 724552 731676 7124 1.0
(read/write) 131220 131348 128 0.1
.bss 129364 129476 112 0.1
.data 1856 1872 16 0.9
.text 724544 731668 7124 1.0
lock-app BRD4161A (read only) 716392 725132 8740 1.2
(read/write) 112436 112560 124 0.1
.bss 110716 110828 112 0.1
.data 1716 1732 16 0.9
.text 716384 725124 8740 1.2
window-app BRD4161A (read only) 717308 726032 8724 1.2
(read/write) 112756 112884 128 0.1
.bss 111036 111148 112 0.1
.data 1720 1736 16 0.9
.text 717300 726024 8724 1.2
Decreases (9 builds for nrfconnect)
platform target config section cb7c854 ca496f8 change % change
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861331 861315 -16 -0.0
text 577620 577608 -12 -0.0
nrf52840dk_nrf52840+rpc (read/write) 822203 822187 -16 -0.0
text 550796 550784 -12 -0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786370 786354 -16 -0.0
text 507084 507072 -12 -0.0
lock-app nrf52840dk_nrf52840 (read/write) 838035 838019 -16 -0.0
text 559096 559084 -12 -0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763334 763318 -16 -0.0
text 488652 488640 -12 -0.0
pump-app nrf52840dk_nrf52840 (read/write) 844147 844131 -16 -0.0
text 563276 563264 -12 -0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 837891 837875 -16 -0.0
text 558832 558820 -12 -0.0
shell nrf52840dk_nrf52840 (read/write) 775991 775975 -16 -0.0
text 519884 519872 -12 -0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691026 691010 -16 -0.0
text 440480 440468 -12 -0.0
Full report (37 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section cb7c854 ca496f8 change % change
efr32 lighting-app BRD4161A (read only) 737128 745852 8724 1.2
(read/write) 114620 114744 124 0.1
.bss 112860 112972 112 0.1
.data 1756 1772 16 0.9
.text 737120 745844 8724 1.2
BRD4161A+rpc (read only) 724552 731676 7124 1.0
(read/write) 131220 131348 128 0.1
.bss 129364 129476 112 0.1
.data 1856 1872 16 0.9
.text 724544 731668 7124 1.0
lock-app BRD4161A (read only) 716392 725132 8740 1.2
(read/write) 112436 112560 124 0.1
.bss 110716 110828 112 0.1
.data 1716 1732 16 0.9
.text 716384 725124 8740 1.2
window-app BRD4161A (read only) 717308 726032 8724 1.2
(read/write) 112756 112884 128 0.1
.bss 111036 111148 112 0.1
.data 1720 1736 16 0.9
.text 717300 726024 8724 1.2
esp32 all-clusters-app c3devkit (read only) 880594 880594 0 0.0
(read/write) 1308072 1308072 0 0.0
.dram0.bss 58608 58608 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 199768 199768 0 0.0
.flash.text 880594 880594 0 0.0
.iram0.text 57554 57554 0 0.0
m5stack (read only) 911719 911719 0 0.0
(read/write) 427844 427844 0 0.0
.dram0.bss 61112 61112 0 0.0
.dram0.data 32100 32100 0 0.0
.flash.rodata 208468 208468 0 0.0
.flash.text 911719 911719 0 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699408 699408 0 0.0
.bss 77856 77856 0 0.0
.data 1904 1904 0 0.0
.text 613848 613848 0 0.0
lock-app k32w061+debug (read/write) 591716 591716 0 0.0
.bss 68372 68372 0 0.0
.data 1868 1868 0 0.0
.text 515676 515676 0 0.0
shell k32w061+debug (read/write) 424884 424884 0 0.0
.bss 63296 63296 0 0.0
.data 668 668 0 0.0
.text 359216 359216 0 0.0
linux all-clusters-app debug (read only) 1690641 1690641 0 0.0
(read/write) 119696 119696 0 0.0
.bss 51152 51152 0 0.0
.data 1042 1042 0 0.0
.data.rel.ro 62240 62240 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 536 536 0 0.0
.rodata 139861 139861 0 0.0
.text 1417410 1417410 0 0.0
bridge-app debug+rpc (read only) 1283597 1283597 0 0.0
(read/write) 68520 68520 0 0.0
.bss 35056 35056 0 0.0
.data 992 992 0 0.0
.data.rel.ro 27496 27496 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 111460 111460 0 0.0
.text 1076581 1076581 0 0.0
chip-tool debug (read only) 4348869 4348869 0 0.0
(read/write) 124768 124768 0 0.0
.bss 18224 18224 0 0.0
.data 2224 2224 0 0.0
.data.rel.ro 98896 98896 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 424 424 0 0.0
.rodata 219528 219528 0 0.0
.text 3863637 3863637 0 0.0
lighting-app debug+rpc (read only) 1542921 1542921 0 0.0
(read/write) 101712 101712 0 0.0
.bss 40728 40728 0 0.0
.data 1138 1138 0 0.0
.data.rel.ro 54560 54560 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 129553 129553 0 0.0
.text 1280674 1280674 0 0.0
ota-provider-app debug (read only) 1243417 1243417 0 0.0
(read/write) 67552 67552 0 0.0
.bss 37152 37152 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24568 24568 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 112360 112360 0 0.0
.text 1034978 1034978 0 0.0
ota-requestor-app debug (read only) 1310777 1310777 0 0.0
(read/write) 76872 76872 0 0.0
.bss 45408 45408 0 0.0
.data 816 816 0 0.0
.data.rel.ro 25512 25512 0 0.0
.dynamic 592 592 0 0.0
.got 3984 3984 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 123328 123328 0 0.0
.text 1089682 1089682 0 0.0
shell debug (read only) 786625 786625 0 0.0
(read/write) 57664 57664 0 0.0
.bss 16104 16104 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36816 36816 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 77839 77839 0 0.0
.text 607298 607298 0 0.0
tv-app debug (read only) 1810273 1810273 0 0.0
(read/write) 289944 289944 0 0.0
.bss 222768 222768 0 0.0
.data 2704 2704 0 0.0
.data.rel.ro 58824 58824 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 155640 155640 0 0.0
.text 1512370 1512370 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2293008 2293008 0 0.0
.bss 179964 179964 0 0.0
.data 5216 5216 0 0.0
.heap 851264 851264 0 0.0
.text 1255608 1255608 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2272008 2272008 0 0.0
.bss 172012 172012 0 0.0
.data 5568 5568 0 0.0
.heap 858864 858864 0 0.0
.text 1234608 1234608 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2249728 2249728 0 0.0
.bss 170908 170908 0 0.0
.data 5560 5560 0 0.0
.heap 859976 859976 0 0.0
.text 1212328 1212328 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048496 2048496 0 0.0
.bss 156256 156256 0 0.0
.data 4960 4960 0 0.0
.heap 875232 875232 0 0.0
.text 1011096 1011096 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861331 861315 -16 -0.0
bss 111320 111320 0 0.0
rodata 96772 96772 0 0.0
text 577620 577608 -12 -0.0
nrf52840dk_nrf52840+rpc (read/write) 822203 822187 -16 -0.0
bss 107560 107560 0 0.0
rodata 87564 87564 0 0.0
text 550796 550784 -12 -0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786370 786354 -16 -0.0
bss 112696 112696 0 0.0
rodata 92028 92028 0 0.0
text 507084 507072 -12 -0.0
lock-app nrf52840dk_nrf52840 (read/write) 838035 838019 -16 -0.0
bss 110356 110356 0 0.0
rodata 93140 93140 0 0.0
text 559096 559084 -12 -0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763334 763318 -16 -0.0
bss 111764 111764 0 0.0
rodata 88448 88448 0 0.0
text 488652 488640 -12 -0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844147 844131 -16 -0.0
bss 110492 110492 0 0.0
rodata 94852 94852 0 0.0
text 563276 563264 -12 -0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 837891 837875 -16 -0.0
bss 110392 110392 0 0.0
rodata 93140 93140 0 0.0
text 558832 558820 -12 -0.0
shell nrf52840dk_nrf52840 (read/write) 775991 775975 -16 -0.0
bss 109112 109112 0 0.0
rodata 72412 72412 0 0.0
text 519884 519872 -12 -0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691026 691010 -16 -0.0
bss 110092 110092 0 0.0
rodata 67052 67052 0 0.0
text 440480 440468 -12 -0.0
p6 lock-app default (read/write) 2167984 2167984 0 0.0
.bss 66360 66360 0 0.0
.data 2416 2416 0 0.0
.heap 964568 964568 0 0.0
.text 1126248 1126248 0 0.0
qpg lighting-app qpg6100+debug (read only) 490680 490680 0 0.0
(read/write) 114140 114140 0 0.0
.bss 50416 50416 0 0.0
.data 1004 1004 0 0.0
.text 485360 485360 0 0.0
lock-app qpg6100+debug (read only) 467016 467016 0 0.0
(read/write) 114144 114144 0 0.0
.bss 49360 49360 0 0.0
.data 960 960 0 0.0
.text 461696 461696 0 0.0
persistent-storage-app qpg6100+debug (read only) 153212 153212 0 0.0
(read/write) 114140 114140 0 0.0
.bss 18336 18336 0 0.0
.data 356 356 0 0.0
.text 147892 147892 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 662798 662798 0 0.0
bss 69132 69132 0 0.0
noinit 33216 33216 0 0.0
text 457926 457926 0 0.0

@boring-cyborg boring-cyborg bot added the lib label Nov 3, 2021
…nable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
@Damian-Nordic Damian-Nordic merged commit 2d4ac39 into project-chip:master Nov 4, 2021
@jmartinez-silabs jmartinez-silabs deleted the efrShell branch November 4, 2021 13:18
mkardous-silabs pushed a commit to mkardous-silabs/connectedhomeip that referenced this pull request Nov 11, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
jmartinez-silabs added a commit to jmartinez-silabs/connectedhomeip that referenced this pull request Nov 11, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
jmartinez-silabs added a commit to jmartinez-silabs/connectedhomeip that referenced this pull request Nov 12, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
mkardous-silabs pushed a commit to mkardous-silabs/connectedhomeip that referenced this pull request Nov 16, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
mkardous-silabs pushed a commit to mkardous-silabs/connectedhomeip that referenced this pull request Nov 16, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
jmeg-sfy pushed a commit to jmeg-sfy/connectedhomeip that referenced this pull request Nov 18, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
doru91 added a commit to doru91/connectedhomeip that referenced this pull request Nov 23, 2021
* fix linkage error by disabling the ping functionality
* fix deadlock in Thread implementation
* fix printing by adding CR

This commit relates to project-chip#11346

Signed-off-by: Doru Gucea <[email protected]>
This was referenced Nov 23, 2021
andy31415 pushed a commit that referenced this pull request Nov 25, 2021
* [K32W0] Read General Diagnostics cluster attribute at runtime

Signed-off-by: Doru Gucea <[email protected]>

* [K32W0] Fix shell app

* fix linkage error by disabling the ping functionality
* fix deadlock in Thread implementation
* fix printing by adding CR

This commit relates to #11346

Signed-off-by: Doru Gucea <[email protected]>

* Restyled by clang-format

Co-authored-by: Restyled.io <[email protected]>
PSONALl pushed a commit to PSONALl/connectedhomeip that referenced this pull request Dec 3, 2021
* fix Shell build

* Enable thread dns client, Fix a deadlock in thread implementation when doing resolve with shell

restyle

* add Carriage return to shell dns printfs

* dns browse had the same deadlock. Not that it works, browse commissionable result was causing an overflow of the thread task in EFR32, Bump the task stack to 4k
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants